2.7.3 Utilising Decision Support Systems in Recruitment
Humans are important and very valuable asset to an organization and they are usually managed by Human resource professional. HRM system is an important element in the success of an organization, It serves as an integrated and interrelated approaches to managing human resources (DeNisi & Grifï¬n, 2005).Activities in Human Resource Management involve a lot of unstructured processes such as recruitment, training, motivation and maintenance (DeCenZo & Robbins, 2005).
Decision making for unstructured processes in recruitment usually depends on human judgment and preference. However, human decisions are subject to the limitation because sometimes people forget the crucial details of the problem, and besides, fairness and consistency are very important in any types of decisions. Computer applications as decision support tool can be used to provide fair and consistent decisions, and at the same time it can improve the effectiveness of decision making process (Palma-dos-Reis & Zahedi, 1999). In general, the traditional functions of DSS is used to support managerial decision makers in semi-structured and unstructured decision situations, a part from being assistant to the decision makers to extend their capabilities but not to replace their judgment (Turban et al., 2007). In the enhancement to DSS traditional approach, advance intelligent techniques are available in designing an intelligent system application. DSS applications which are embedded with intelligent components can improve the traditional DSS such as for reasoning and learning capabilities, and also known as IDSS. In order to improve human resource decisions, the high-quality recruitment applications are required to produce precise and reliable decisions.
Due to these reasons, this study presents an idea to apply IDSS approach in recruitment decision making activities by using some of the potential intelligent techniques.
2.8 Distributed Systems
Distributed computing is a method of computer processing in which different parts of a program are run simultaneously on two or more computers that are communicating with each other over a network.
Distributed computing is a type of segmented or parallel computing, but the latter term is most commonly used to refer to processing in which different parts of a program run simultaneously on two or more processors that are part of the same computer. While both types of processing require that a program be segmented divided into sections that can run simultaneously, distributed computing also requires that the division of the program take into account the different environments on which the different sections of the program will be running. For example, two computers are likely to have different ï¬le systems and different hardware components.
An example of distributed computing is Google, the market leader in web search technology, has put signiï¬cant effort into the design of a sophisticated distributed system infrastructure to support search (and indeed other Google applications and services such as Google Earth).
This represents one of the largest and most complex distributed systems installations in the history of computing and hence demands close examination. Highlights of this infrastructure include:
=> An underlying physical infrastructure consisting of very large numbers of networked computers located at data centres all around the world
=> A distributed ï¬le system designed to support very large ï¬les and heavily optimized for the style of usage required by search and other Google applications (especially reading from ï¬les at high and sustained rates)
=> An associated structured distributed storage system that offers fast access to very large datasets
=> A lock service that offers distributed system functions such as distributed locking and agreement
=> A programming model that supports the management of very large parallel and distributed computations across the underlying physical infrastructure
Distributed computing is a natural result of using networks to enable computers to communicate efï¬ciently. But distributed computing is distinct from computer networking or fragmented computing. The latter refers to two or more computers interacting with each other, but not, typically, sharing the processing of a single program. The World Wide Web is an example of a network, but not an example of distributed computing. There are numerous technologies and standards used to construct distributed computations, including some which are specially designed and optimized for that purpose, such as Remote Procedure Calls (RPC) or Remote Method Invocation (RMI) or .NET Remoting.
2.8.1 Organization of Distributed Systems
Organizing the interaction between each computer is of prime importance. In order to be able to use the widest possible range and types of computers, the protocol or communication channel should not contain or use any information that may not be understood by certain machines. Special care must also be taken that messages are indeed delivered correctly and that invalid messages are rejected which would otherwise bring down the system and perhaps the rest of the network.
Another important factor is the ability to send software to another computer in a portable way so that it may execute and interact with the existing network. This may not always be possible or practical when using differing hardware and resources, in which case other methods must be used such as cross-compiling or manually porting this software.
2.8.2 Architecture of Distributed Systems
Various hardware and software architectures are used for distributed computing. At a lower level, it is necessary to interconnect multiple CPUs with some sort of network, regardless of whether that network is printed onto a circuit board or made up of loosely coupled devices and cables. At a higher level, it is necessary to interconnect processes running on those CPUs with some sort of communication system. Distributed programming typically falls into one of several basic architectures or categories namely:
=> Client-server Architecture
=> N-tier Architecture
=> Distributed objects Architecture
=> Peer to Peer Architecture