Documente Academic
Documente Profesional
Documente Cultură
Data
Data refers to a set of discrete objective facts about an event or a process. Data may be numerical quantities or other attributes derived from observation, experiment, or calculation. The term data is derived from the Latin word datum which means "that which is given" Data is often viewed as a lowest level of abstraction from which information and (or) knowledge is derived. Data has no significance beyond its existence. Data can be meaningful only when a human or a machine interprets its context.
Data represents unorganized and unprocessed facts Usually data is static in nature. It can represent a set of discrete facts about events. Data is a prerequisite to information.
Types of data
Data can be classified into different types. The following table 1.1 illustrates some of the commonly used types of data.
Represented by Numbers, letters, and other characters Graphic images or pictures Sound, noise, tones Moving images or pictures
Table 1.1 Types of data
Information
Information is a collection of facts organized in such a way that they have additional value beyond the value of the facts themselves. Information is data that has been interpreted or processed so that it has meaning for the user. In simpler terms, data endowed with relevance and purpose is information.
For instance consider the following set of numbers 16.0, 17.0, 16.0, 18.5, 17.0,15.5, etc. What does the set convey?
A students of a deemed university may consider it as his /her Continuous Internal Evaluation marks. A doctor may treat it as thermometer reading of temperature a patient. A programmer may treat it as output or set of real numbers which are input of /to his /her program. A researcher visualizes it as set of simulated data obtained through his /her experiment or simulation. Thus the interpretation differs from person to person with respect to a particular context. However, if we say the temperature a patient taken every two hour 16.0, 17.0, 16.0, 18.5, 17.0,15.5 then it is information. Anyone who visualizes this information cannot interpret in any other way.
Similarly consider another example it is raining. Even this is a data because it doesnt convey the cause and effect. But the temperature dropped 15 degrees and then it started raining, is information as it embodies the cause and effect of that cause. Converting data into information Data becomes information when it is processed. For example, consider a marketing company, set of raw sales figures is data. The sales manager may need to analyze the sales performance of each region thereby solving the problem of poor sales in one region or deciding the future focus of a sales drive. Therefore, the raw data needs to be processed into a sales report, which provides information.
Data
Transformatio n
Information
The following table illustrates how the huge amount of data that manager may receive could be processed to create useful information.
Possible methods of converting data into information Present complex data as a chart or graph Plot charts and identify trends Find average or typical values
Monitor changes over time and forecast future values Compare figures and identify similarities or differences
Note:
Collecting data is an expensive process. To merit the effort, one needs to be very clear about why you need it. Proper planning must be done so that only required data is obtained for processing and usage. For organizations, the key reason behind collection of data is to monitor and improve performance. Some of the important guidelines for data collection include
Collect data on the indicators that really do affect performance Collect data from reliable sources Collect data, which can be converted into information.
Characteristics of information
Information must posses the following characteristics for it to be useful and qualitative in nature. These include:
Accessibility
Completeness Information must be complete, else it leads to incorrect decision-making. Accuracy Accurate information is the best kind of information. Accurate information is one, which is reliable and from a correct source. Timeliness "Timely" means, "appearing at the right moment. Information needs to be available when it's needed. Also, information needs to be up-to-date. Consistency The source of information should not change at different places, or contradicts itself. It is the sign that it is untrustworthy. Validity To be valuable, information should be unbiased, representative and verifiable. If information neglects key topics or issues, it might not represent the full knowledge base you need to know. If information cannot be independently verified, it should be treated with utmost caution. Appropriateness Information should be presented in a way that is meaningful, relevant and formatted to suit the users needs Relevance The Information should be relevant to the user quires. Information is not universally relevant and
valuable, it is valuable and relevant only to a person who needs it and can use it. Usability The information has to be presented to the users to understand and explore it during decisionmaking activities. Accessibility Up-to-date information should be accessible at any time to authorized or relevant users only.
Knowledge
Knowledge is a subset of information. It is a subset that has been extracted, filtered, or formatted in a very special way. More specifically, knowledge is information that has been subjected to and passed tests of validation. For instance, scientific knowledge is information i.e hypotheses and theories validated by the rules and tests applied to it by some scientific community. Organizational knowledge is information validated by the rules and tests of the organization seeking knowledge. The quality of the knowledge depends on the tendency of validation rules and tests to produce knowledge that improves organizational performance. In simpler terms, knowledge is a combination of information, experience and insight that may benefit the individual or the organization. Knowledge is based on information that is organized, synthesized, or summarized to enhance comprehension, awareness, or understanding. Knowledge represents a state or potential for action and decisions in a person, organization or a group. It could be changed in the process of learning, which causes changes in understanding, decision or action. Types of Knowledge
Formal, explicit or generally available knowledge. This is knowledge which can be captured, articulated in formal language / records and transmitted among individuals of the organization. Example of such knowledge includes policies and operating procedures of a firm. Instinctive, subconscious, tacit or hidden knowledge. personal knowledge embedded in individuals based on their experience and involving such intangible factors as personal belief, perspective, and values.
applied for
build and
Data
a purpose
Information
process
Knowledge
Converting information to knowledge The tremendous amount of information that is generated is only useful if it can be applied to create knowledge within the organization. Building and managing knowledge is one of the greatest challenges that the organizations are facing. Figure 1.2 illustrates the process of information conversion into knowledge.
information system. Data is processed into information and together with ideas, instincts, rules and procedures, the manager makes the appropriate decision.
Information Systems
Information system deals with data of the organizations. The purposes of Information system are to process input, maintain data, produce reports, handle queries, handle on line transactions, generate reports, and other output. These maintain huge databases, handle hundreds of queries etc. The transformation of data into information is primary function of information system. These types of systems depend upon computers for performing their objectives. A computer based business system involves six interdependent elements. These are hardware (machines), software, people (programmers, managers or users), procedures, data, and information (processed data). All six elements interact to convert data into information. System analysis relies heavily upon computers to solve problems. For these types of systems, analyst should have a sound understanding of computer technologies. In the following section, we explore three most important information systems namely, transaction processing system, management information system and decision support system, and examine how computers assist in maintaining Information systems
is the people, probably the component that most influence the success or failure of information systems.
BACKGROUND OF MIS
Management information systems do not have to be computerized, but with today's large, multinational corporations, computerization is a must for a business to be successful. However, management information systems began with simple manual systems such as customer databases on index cards. As early as 1642, the French mathematician and philosopher Blaise Pascal invented the first mechanical adding machine so that figures could be added to provide information. Almost two hundred years later, Charles Babbage, a professor of mathematics at Cambridge University in England, wanted to make a machine that would compute mathematical tables. He attempted to build a computing machine during the 1880s. He failed because his ideas were beyond his technical capabilities, not because the idea was flawed. Babbage is often called the father of the computer. With the advent of the computer, management information systems became automated. In the late 1890s, because of the efforts of Herman Hollerith, who created a punch-card system to tabulate the data for the 1890 census, it was possible to begin to provide data-processing equipment. The punch card developed by Hollerith was later used to form a company to provide data-processing equipment. This company evolved into International Business Machines (IBM). Mainframe computers were used for management information systems from the 1940s, 50s, 60s, and up until the 1970s. In the 1970s, personal computers were first built by hobbyists. Then Apple computer developed one of the first practical personal computers. In the early 1980s, IBM developed its PC, and since then, the personal computer industry has mush roomed. Almost every management information system revolves around some kind of computer hardware and software. Management information systems are becoming more important, and MIS personnel are more visible than in the 1960s and 1970s, when they were hidden away from the rest of the company and performed tasks behind closed doors. So remote were some MIS personnel from the operations of the business that they did not even know what products their companies made. This has changed because the need for an effective management information system is of primary concern to the business organization. Managers use MIS operations for all phases of management, including planning, organizing, directing, and controlling.
in its broadest sense. Data are facts and figures. However, data have no value until they are compiled into a system and can provide information for decision making. Information is what is used in the act of informing or the state of being informed. Information includes knowledge acquired by some means. In the 1960s and 70s, it became necessary to formalize an educational approach to systems for business so that individuals and work groups and businesses who crossed boundaries in the various operations of business could have appropriate information. Technical developments in computers and data processing and new theories of systems analysis made it possible to computerize systems. Much of this computerization of systems was an outgrowth of basic research by the federal government. Management is usually defined as planning, organizing, directing, and controlling the business operation. This definition, which evolved from the work of Henri Fayol in the early 1900s, defines what a manager does, but it is probably more appropriate to define what management is rather than what management does. Management is the process of allocating an organization's inputs, including human and economic resources, by planning, organizing, directing, and controlling for the purpose of producing goods or services desired by customers so that organizational objectives are accomplished. If management has knowledge of the planning, organizing, directing, and controlling of the business, its decisions can be made on the basis of facts, and decisions are more accurate and timely as a result. Management information systems are those systems that allow managers to make decisions for the successful operation of businesses. Management information systems consist of computer resources, people, and procedures used in the modern business enterprise. The term MIS stands for management information systems. MIS also refers to the organization that develops and maintains most or all of the computer systems in the enterprise so that managers can make decisions. The goal of the MIS organization is to deliver information systems to the various levels of corporate managers. MIS professionals create and support the computer system throughout the company. Trained and educated to work with corporate computer systems, these professionals are responsible in some way for nearly all of the computers, from the largest mainframe to the desktop and portable PCs.
Information is the basis for every decision taken in an organization. The efficiency of management depends upon the availability of regular and relevant information. Thus it is essential that an effective and efficient reporting system be developed as part of accounting system. The main object of management information is to obtain the required about the operating results of an organization regularly in order to use them for future planning and control. The old techniques like intuition, rule of thumb, personal whim and prestige, etc. are now considered useless in the process of decision taking. Modern management is constantly on look out for such quantitative and such information, which can help in analyzing the proposed alternative actions and choosing one as its decision. Thus, modern management functions are information-oriented more popularly known as management by information. And the system through which information is communicated to the management is known as management information system (MIS). The management needs full information before taking any decision. Good decisions can minimize costs and optimize results. Management information system can be helpful to the management in undertaking management decisions smoothly and effectively. Management information system can be analyzed thus:
1. Management: management covers the planning, control, and administration of the operations of a concern. The top management handles planning; the middle management concentrates on controlling; and the lower management is concerned with actual administration. 2. Information: information, in MIS, means the processed data that helps the management in planning, controlling and operations. Data means all the facts arising out of the operations of the concern. Data is processed i.e. recorded, summarized, compared and finally presented to the management in the form of MIS report. 3. System: data is processed into information with the help of a system. A system is made up of inputs, processing, output and feedback or control.
Thus MIS means a system for processing data in order to give proper information to the management for performing its functions. Information about achievements and use of resources compared with targets and budgets can be prepared through computer-based systems maintaining information on various activities of the organization. Such reports help management in taking timely corrective actions (if needed) and guide it toward efficient use of resources. Systems can be developed to aid in the planning and monitoring tasks of departmental heads by providing them with information on activities desired at specific intervals.
A computer system designed to help managers plan and direct business and organizational operations.
Computer-based or manual system that transforms data into information useful in the support of decision making. MIS can be classified as performing three functions: (1) To generate reports-for example, financial statements, inventory status reports, or performance reports needed for routine or non-routine purposes. (2) To answer what-if questions asked by management. For example, questions such as "What would happen to cash flow if the company changes its credit term for its customers?" can be answered by MIS. This type of MIS can be called Simulation. (3) To support decision making. This type of MIS is appropriately called Decision Support System (DSS). DSS attempts to integrate the decision maker, the data base, and the quantitative models being used.
Management information system is an integrated set of component or entities that interact to achieve a particulars function, objective or goal. Therefore it is a computer based system that provides information for decisions making on planning, organizing and controlling the operation of the sub-system of the firm and provides a synergistic organization in the process. The component of an information system includes. A hardware which is used for input/output process and storage of data, software used to process data and also to instruct the hand-ware component, data bases which is the location in the system where all the organization data will be automated and procedures which is a set of documents that explain the structure of that management information system. There are various driving factors of management information system for example:Technological revolutions in all sectors make modern managers to need to have access to large amount of selective information for the complex tasks and decisions. The lifespan of most product has continued getting shorter and shorter and therefore the challenge to the manager is to design product that will take a longer shelf life and in order to do this, the manager must be able to keep abreast of the factors that influences the organization product and services thus, management information system come in handy in supporting the process. There are huge amount of information available to todays manager and this had therefore meant that managers are increasingly relying on management information system to access the exploding information. Management information services helps manager to access relevant, accurate, up-to-date information which is the more sure way of making accurate decisions. It also helps in automation and incorporation of research and management science techniques into the overall management information system for example probability theory. The management information services are capable of taking advantage of the computational ability of the company like processing, storage capacity among others. Based on this relevancy, management information system should be installed and upgraded in various organizations since todays managers need them to access information for managerial decision making and also management functions.
An MIS is directed towards the managerial functions of planning, controlling and monitoring, and decision making. Planning Planning consists of five sequential and interactive steps. These are: selecting objectives; identification of the activities which are required to achieve the stipulated objectives; detailing the resources - including the various skills - required to undertake the activities; determining the duration of each activity to be performed; and defining the sequence of the activities. The basic requirements during the planning process of most importance in designing and implementing an MIS for an organization are: providing the information required by the planner at each step of planning; establishing procedures for obtaining the information; arranging for storage of the approved plans, as these will provide the information requisite to monitoring and controlling; and evolving methods for communicating the plans to employees in the organization. Monitoring and controlling Controlling 'compels events to conform to plans. It involves: establishing standards of performance in order to reach the objective; measuring actual performance against the set standards; and keeping actions on course by correcting deviations as they appear (mid-course corrections). The requirements for successful development of a control system are: defining expectations in terms of information attributes; and developing the logic for reporting deviations to all levels of management prior to the actual occurrence of the deviation. Decision making Decision making is the process of selecting the most desirable or optimum alternative to solve a problem or achieve an objective. The quality and soundness of managerial decisions is largely contingent upon the information available to the decision-maker. Gorry and Scott Morton (1971) classified decision making on three levels of a continuum: Strategic decisions are future-oriented because of uncertainty. They are part of the planning activity.
Tactical decision making combines planning activities with controlling. It is for short-term activities and associated allocation of resources to them to achieve the objectives. Technical decision making is a process of ensuring efficient and effective implementation of specific tasks.
A management information system (MIS) is a computer-based system that provides the information necessary to manage an organization effectively. An MIS should be designed to enhance communication among employees, provide an objective system for recording information and support the organization's strategic goals and direction. There are four types of MIS that will be introduced in ascending order of sophistication.
Information systems differ in their business needs and the information varies depending upon different levels in organization. Information system can be broadly categorized into following:
The information needs are different at different organizational levels. Accordingly the information can be categorized into following:
2. 3.
It processes business transaction of the organization. Transaction can be any activity of the organization. For example, take a railway reservation system. Booking, canceling, etc are all transactions. Any query made to it is a transaction. This provides high speed and accurate processing of record keeping of basic operational processes and includes calculation, storage and retrieval. Transaction processing systems provide speed and accuracy, and can be programmed to follow routines functions of the organization.
4. These systems are designed to handle a large volume of routine, recurring transactions. They were first introduced in the 1960s with the advent of mainframe computers. Transaction processing systems are used widely today. Banks use them to record deposits and payments into accounts. Supermarkets use them to record sales and track inventory. Most managers use these systems to deal with tasks such as payroll, customer billing and payments to suppliers.
It assists lower management in problem solving and making decisions. They use the results of transaction processing and some other information also. An important element of MIS is database. A database is a non-redundant collection of interrelated data items that can be processed through application programs and available to many users.
These systems assist higher management to make long term decisions. These type of systems handle unstructured or semi structured decisions. A decision is considered unstructured if there are no clear procedures for making the decision and if not all the factors to be considered in the decision can be readily identified in advance.
2. 3.
A decision support system must very flexible. The user should be able to produce customized reports by giving particular data and format specific to particular situations.
A DSS is an interactive computer system that can be used by managers without help from computer specialists. A DSS provides managers with the necessary information to make intelligent decisions. A DSS has three fundamental components: 1. Database management system (DBMS): Stores large amounts of data relevant to problems the DSS has been designed to tackle. 2. Model-based management system (MBMS): Transforms data from the DBMS into information that is useful in decision making. 3. Dialog generation and management system (DGMS): Provides a user-friendly interface between the system and the managers who do not have extensive computer training.
Elements of decision making The four components of the decision making process are: Model A model is an abstract description of the decision problem. The model may be quantitative or qualitative. Criteria The criteria must state how goals or objectives of the decision problem can be achieved. When there is a conflict between different criteria, a choice has to be made through compromise. Constraints. Constraints are limiting factors which define outer limits and have to be respected while making a decision. For example, limited availability of funds is a constraint with which most decision makers have to live. Optimization once the decision problem is fully described in a model, criteria for decision making stipulated and constraints identified, the decision-maker can select the best possible solution.
Systems approach
Modern management is based upon a systems approach to the organization. The systems approach views an organization as a set of interrelated sub-systems in which variables are mutually dependent. A system can be perceived as having:
Some components, functions and the processes performed by these various components; Relationships among the components that uniquely bind them together into a conceptual assembly which is called a system; and An organizing principle that gives it a purpose (Albrecht, 1983). The organizing system has five basic parts, which are interdependent. They are: the individual; the formal and informal organization; patterns of behavior arising out of role demands of the organization; the role perception of the individuals; and the physical environment in which individuals work. The interrelationship of the sub-systems within an organization is fundamental to the systems approach. The different components of the organization have to operate in a coordinated manner to attain common organizational goals. This results in synergic effects. The term synergy means that when different sub-systems work together they tend to be more efficient than if they work in isolation. Thus, the output of a system with well integrated sub-systems would be much more than the sum of the outputs of the independent sub-systems working in isolation. The systems approach provides a total view of the organization. It enables analysis of an organization in a scientific manner, so that operating management systems can be developed and an appropriate MIS designed. By providing the required information, an MIS can help interrelate, coordinate and integrate different sub-systems within an organization, thus facilitating and increasing coordinated working of the sub-systems, with consequent synergism. The interaction between different components of the organization depends upon integration, communication and decision making. Together they create a linking process in the organization. Integration ensures that different sub-systems work towards the common goal. Coordination and integration are useful controlling mechanisms which ensure smooth functioning in the organization, particularly as organizations become large and increasingly complex. As organizations face environmental complexity, diversity and change, they need more and more internal differentiation, and specialization becomes complex and diverse. The need for integration also increases as structural dimensions increase. Communication integrates different sub-systems (specialized units) at different levels in an organization. It is thus a basic element of the organizational structure necessary for achieving the organization's goals.
information resources aid tactical planning and decision making for management control. The third level supports day-to-day operations and control. The bottom level consists of information for transaction processing. It then follows that since decision making is specific to hierarchical levels in an organization, the information requirements at each level vary accordingly. Thus, MIS as a support system draws upon: Concepts of organization; Organizational theories, principles, structure, behavior and processes such as communication, power and decision making; and Motivation and leadership behavior. Davis and Olson analyzed the implications of different characteristics of the organizational structure on the design of information systems (Table 1).
Organizational learning Suggests need for information system design for efficiency measures to promote single loop learning and effectiveness measures for double loop learning. Project model of organizational change Systems that promote organizational change Describes general concepts for managing change with information system projects. Reporting critical change variables, organizational change, or relationships, and use of multiple channels in a semi-confusing system may be useful for promoting responses to a changing environment.
Case for stable system Establish control over frequency of information system changes.
Organizations as socio- Provides approach to requirements determination and job design when both technical systems social and technical considerations are involved.
Levels of information requirements There are three levels of information requirements for designing an MIS. They are: At the organizational level, information requirements define an overall structure for the information system and specific applications and database. Application level requirements include social or behavioral - covering work organization objectives, individual roles and responsibility assumptions, and organizational policies - and technical, which are based on the information needed for the job to be performed. A significant part of the technical requirement is related to outputs, inputs, stored data, structure and format of data and information processes. At the user level, database requirements can be classified as perceived by the user or as required for physical design of the database. Strategies for determining information requirements Six steps in selecting a strategy and method for determining information requirements (Table 2). Table 2 Strategies for determining information requirements
1. Identify elements in the development process Utilizing systems Information system or application Users Analysis 2. Identify characteristics of the four elements (in 1, above) in the development process which could affect uncertainty in the information requirements. 3. Identify the process uncertainties Existence and availability of a set of usable requirements. Ability of users to specify requirements. Ability of the analyst to elicit and evaluate information requirements. Assess how the characteristics of the four elements in the development process (listed under 1, above) will affect the process uncertainties.
4. Determine how the overall requirements uncertainties would be affected by the combined effects of the process uncertainties. 5. Considering the overall requirements uncertainty, choose a primary strategy for information requirements. If uncertainty is low, then the strategy should be to: Ask the users what their requirements are. This presupposes that the users are able to structure their requirements and express them objectively. Asking can be done through - questions, which may be closed or open, - brainstorming sessions, totally open or guided, and - group consensus as aimed at in Delphi methods and group forming. Wherever there are close similarities in the organization and easy replication is possible, information requirements can be derived from the existing system. Characteristics of the utilizing system should be analyzed and synthesized. This is particularly useful if the utilizing system is undergoing change. If uncertainty is high, discover from experimentation by instituting an information system and learning through that the additional information requirements. This is 'prototyping' or 'heuristic development' of an information system. 6. Select an appropriate method.
Types of MIS
MIS can be categorized as follows: Databank information systems refer to creation of a database by classifying and storing data which might be potentially useful to the decision-maker. The information provided by the databank is merely suggestive. The decision-maker has to determine contextually the cause and effect relationships. MIS designs based on the databank information system are better suited for unstructured decisions. Predictive information systems provide source and data along with predictions and inferences. The decision-maker can also enquire as to 'what if a certain action is taken?' and whether the underlying assumptions are true. This type of MIS is useful for semi-structured decisions. Decision-making information systems provide expert advice to the decision-maker either in the form of a single recommended course of action or as criteria for choice, given the value system prevailing in the organization. The decision-maker has just to approve, disapprove or modify the recommendation. Decision-making information systems are suitable for structured decisions. Operations research and cost-effectiveness studies are examples of decision-making information systems. Decision-taking information systems integrate predictive information and decision-making systems.
Process of MIS
The MIS implementation process (Table 3) involves a number of sequential steps:
1. First establish management information needs and formulate broad systems objectives so as to delineate important decision areas (e.g., general management, financial management or human resources management). Within these decision areas there will be factors relevant to the management decision areas, e.g., general management will be concerned about its relationship with the managing board, institute-client relationships and information to be provided to the staff. This will then lead the design team to ask what information units will be needed to monitor the identified factors of concern. Positions or managers needing information for decision making will be identified. 2. Develop a general description of a possible MIS as a coarse design. This design will have to be further refined by more precise specifications. For efficient management of information processing, the MIS should be based on a few databases related to different sub-systems of the organization. 3. Once the information units needed have been determined and a systems design developed, decide how information will be collected. Positions will be allocated responsibility for generating and packaging the information. 4. Develop a network showing information flows. 5. Test the system until it meets the operational requirements, considering the specifications stipulated for performance and the specified organizational constraints. 6. Re-check that all the critical data pertaining to various sub-systems and for the organization as a whole are fully captured. Ensure that information is generated in a timely manner. 7. Monitor actual implementation of the MIS and its functioning from time to time. Table 3 Methodology for implementing MIS
1. Understand the organization 2. Analyze the information requirements of the organization 3. Plan overall strategy 4. Review 5. Preliminary analysis 6. Feasibility assessment 7. Detailed fact finding 8. Analysis 9. Design 10. Development 11. Cutover 12. Obtain conceptual schema 13. Recruit database administrator 14. Obtain logical schema 15. Create data dictionary
16. Obtain physical schema 17. Create database 18. Modify data dictionary 19. Develop sub-schemas 20. Modify database 21. Amend database
Database approach a large and detailed database is amassed, stored and maintained. The database approach is more and more accepted for two main reasons: first, because of data independence it allows for easier system development, even without attempting a complete MIS; and, second, it provides management with immediate access to information required. Top-down approach the top-down approach involves defining the information needs for successive layers of management. If information required at the top remains relatively stable in terms of level of detail, content and frequency, the system could fulfill MIS requirements (Zani, 1970). The usefulness of this approach depends on the nature of the organization. It can be suitable for those organizations where there is a difference in the type of information required at the various levels. Total-system approach in this approach the interrelationships of the basic information are defined prior to implementation. Data collection, storage and processing are designed and done within the framework of the total system. This approach can be successfully implemented in organizations which are developing.
Exercise
1. Define and discuss what a management information system (MIS) is, and how it helps an organization. 2. Identify elements of MIS: management, system and information 3. Discuss the basic requirements for information during the planning process, and emphasize their importance. Controlling compels events to conform to plans. 4. Discuss the information requirements for the controlling function. 5. Define and discuss the concept of a system. 6. Show and discuss how a system can be perceived. 7. Discuss the relevance of the systems approach in the design of an MIS.
plays an important role in all four stages of the decision process. Figure 1 indicates the information requirement at each stage, along with the functions performed at each stage and the feedback loops between stages.
Typical information that a decision support application might gather and present are: an inventory of all of your current information assets (including legacy and relational data sources, cubes, data warehouses, and data marts), comparative sales figures between one week and the next, Projected revenue figures based on new product sales assumptions.
Development Frameworks
DSS systems are not entirely different from other systems and require a structured approach. Such a framework includes people, technology, and the development approach. DSS technology levels (of hardware and software) may include: 1. The actual application that will be used by the user. This is the part of the application that allows the decision maker to make decisions in a particular problem area. The user can act upon that particular problem. 2. Generator contains Hardware/software environment that allows people to easily develop specific DSS applications. This level makes use of case tools or systems such as Crystal, AIMMS, and iThink. 3. Tools include lower level hardware/software. DSS generators including special languages, function libraries and linking modules An iterative developmental approach allows for the DSS to be changed and redesigned at various intervals. Once the system is designed, it will need to be tested and revised for the desired outcome. DSS components may be classified as:
1. Inputs: Factors, numbers, and characteristics to analyze 2. User Knowledge and Expertise: Inputs requiring manual analysis by the user 3. Outputs: Transformed data from which DSS "decisions" are generated 4. Decisions: Results generated by the DSS based on user criteria
Decision Making
Decision making can be regarded as an outcome of mental processes (cognitive process) leading to the selection of a course of action among several alternatives. Every decision making process produces a final choice. The output can be an action or an opinion of choice. Decision making is a reasoning or emotional process which can be rational or irrational, can be based on explicit assumptions or tacit assumptions. Thus here an important concept comes of RATIONAL DECISION MAKING Rational Decision Making A rational decision is the one which, effectively and efficiently, ensures the achievement of the goal for which the decision is made. In reality, there is no right or wrong decision but a rational or an irrational decision. The quality of decision making is to be judged on the rationality and not necessarily on the result it produces. The rationality of the decision made is not the same in every situation. It will vary with the organization, the situation and the individuals view of the business situation. The rationality, therefore, is a multi-dimensional concept. For example, the business decisions in a private organization and a Public Sector Undertaking differ under the head of rationality. The reason for this difference in rationality is the different objectives of the decision makers. Simon Herbert differentiates among the types of rationality. A decision, in a given situation is: Objectively rational if it maximizes the value of the objective. Subjectively rational if it maximizes the attainment of value in relation to the knowledge and awareness of the subject. Consciously rational to the extent the process of the decision making is a conscious one. Organizationally rational to the degree of the orientation towards the organization. Personally rational to the extent it achieves an individuals personal goals.
Thus, MIS & DSS are differentiated in terms of components, dynamics , analytical tools & general properties.
a product mix problem, an examination system to declare pass or fail, or an acceptance of the fixed deposits.
(d) It is difficult to decide an objective or a goal and, therefore, the manager resorts to that decision, where his aspirations or desires are met best. Deciding on the possible product diversification lines, the pricing of a new product, and the plant location, are some decision making situations which fall in the category of the open decision making systems. The MIS tries to convert every open system to a closed decision making system by providing information support for the best decision. The MIS gives the information support, whereby the manager knows more and more about the environment and the outcomes, he is able to generate the decision alternatives, test them and select one of them. A good MIS achieves this.
In the choice stage:, the decision maker must select one of the
alternatives that will best contribute to the goals of the organization.
NATURE OF DECISION
Decision making is a complex situation. To resolve the complexity, the decisions are classified as
If a decision can be based on a rule, method or even guidelines, it is called the programmed decision. If the stock level of an item is 200 numbers, then the decision to raise a purchase requisition for 400 numbers is a programmeddecision-making situation. The decision maker here is told to make a decision based on the instructions or on the rule of ordering a quantity of 400 items when its stock level reaches 200.If such rules can be developed wherever possible, then the MIS itself can be designed to make a decision and even execute. The system in such cases plays the role of a decision maker based on a given rule or a method. Since the programmed decision is made through MIS, the effectiveness of the rule can be analyzed and the rule can be revived and modified from time to time for an improvement. The programmed decision making can be delegated to a lower level in the management cadre.
A decision which cannot be made by using a rule or a model is the nonprogrammed decision. Such decisions are infrequent but the stakes are usually larger. Therefore, they cannot be delegated to the lower level. The MIS in the non-programmed-decision situation can help to some extent, in identifying the problem, giving the relevant information to handle the specific decision making situation. The MIS, in other words, can develop decision support systems in the non-programmed-decision-making situations.
solutions
2.Choose a solution 3.Is there a problem or opportunity? 4.Is the choice working?
A significant part of decision making skills is in knowing and practicing good decision making techniques. One of the most practical decision making techniques can be summarized in those simple decision making steps: 1. .Identify the purpose of your decision. What is exactly the problem to be solved? Why it should be solved? 2. Gather information. What factors does the problem involve? 3. Identify the principles to judge the alternatives. What standards and judgment criteria should the solution meet? 4. Brainstorm and list different possible choices. Generate ideas for possible solutions. 5. Evaluate each choice in terms of its consequences. Use your standards and judgment criteria to determine the cons and pros of each alternative. 6. Determine the best alternative. This is much easier after you go through the above preparation steps. 7. Put the decision into action. Transform your decision into specific plan of action steps. Execute your plan. 8. Evaluate the outcome of your decision and action steps. What lessons can be learnt? This is an important step for further development of your decision making skills and judgment.
consequence is the only way to stay in control of your time, your success, and your life.
Decision making can be regarded as an outcome of mental processes (cognitive process) leading to the selection of a course of action among several alternatives. Every decision making process produces a final choice. The output can be an action or an opinion of choice. Human performance in decision making terms has been the subject of active research from several perspectives. From a psychological perspective, it is necessary to examine individual decisions in the context of a set of needs, preferences an individual has and values they seek. From a cognitive perspective, the decision making process must be regarded as a continuous process integrated in the interaction with the environment. From a normative perspective, the analysis of individual decisions is concerned with the logic of decision making and rationality and the invariant choice it leads to. Yet, at another level, it might be regarded as a problem solving activity which is terminated when a satisfactory solution is found. Therefore, decision making is a reasoning or emotional process which can be rational or irrational, can be based on explicit assumptions or tacit assumptions. Logical decision making is an important part of all science-based professions, where specialists apply their knowledge in a given area to making informed decisions. Some research shows, however, that in situations with higher time pressure, higher stakes, or increased ambiguities, experts use intuitive decision making rather than structured approaches.
TYPES OF DECISIONS
The types of decisions are based on the degree of knowledge about the outcomes or the events yet to take place. If the manager has full and precise knowledge of the event or outcome which is to occur, then his problem of the decision making is not a problem. If the manager has full knowledge, then it is a situation of certainty. If he has partial knowledge or a probabilistic knowledge, then it is decision making under risk. If the manager does not have any knowledge whatsoever, then it is decision making under uncertainty. A good MIS tries to convert a decision making situation under uncertainty to the situation under risk and further to certainty. Decision making in the operations management, is a situation of certainty. This is mainly because the manager in this field has fairly good knowledge about the events which are to take place, has
full knowledge of environment, and has predetermined decision alternatives for choice or for selection. Decision making at the middle management level is of the risk type. This is because of the difficulty in forecasting an event with hundred per cent accuracy and the limited scope of generating the decision alternatives. At the top management level, it is a situation of total uncertainty of account of insufficient knowledge of the external environment and the difficulty in forecasting business growth on a long-term basis .A good MIS design gives adequate support to all the three levees of management. A manager can make two kinds of decision:
Structured which are repetitive and need a definite routine and procedure to deal with them, e.g. stock is below 15 %, so an order need to be place with a supplier. Unstructured require knowledge, insight, and evaluation. They may well crop up without warning, and the right decision can be critical.
The balance MIS is an approach to performance management that combines traditional financial measures with non financial measures to provide managers with richer and more relevant information about activity they are managing.
EXERCISE
1. Define information in generic terms as well as in the context of different levels of decision making. 2. Discuss the role of the information system in linking different components of the organization through integration, communication and decision making 3. Show Information requirements are different at all levels of the organization. 4. discuss information requirements for MIS. 5. An MIS can be a data bank, predictive, decision making or decision taking system. Discuss each of these 6. discuss the MIS process. 7. discuss the six strategies determining MIS design.
The organization that uses MIS is able to record ,process, route & tabulate all important business transactions. As & when need arises the organization is able to incorporate the needed changes & improvements in the area of concern. MIS facilitates informed DECISION MAKING. It usually represents a number of options from which one can choose the best. The top management ANALYSES whether its resources are being utilized optimally. A TWO WAY COMMUNICATION FLOW is greatly enhanced by the MIS. The management freely tells the job and responsibilities to its employees. The employees in return discuss their doubts & grievances. MIS supports the planning & controlling function of managers in the organization. Managers use past/historical data as well as the current data to analyze the performance & hence apply controlling measures. MIS encourages DECENTRALISATION in the organization. Decentralizations possible when there's a system to measure operations at the lower levels. It brings COORDINATION. It facilitates integration of specialized activities by keeping each department aware of the problems & requirements of other departments.
elements of a useable MIS system are: timeliness, accuracy, consistency, completeness, and relevance. The usefulness of MIS is hindered whenever one or more of these elements is compromised.
Timeliness
To simplify prompt decision making, an institution's MIS should be capable of providing and distributing current information to appropriate users. Information systems should be designed to expedite reporting of information. The system should be able to quickly collect and edit data, summarize results, and be able to adjust and correct errors promptly.
Accuracy
A sound system of automated and manual internal controls must exist throughout all information systems processing activities. Information should receive appropriate editing, balancing, and internal control checks. A comprehensive internal and external audit program should be employed to ensure the adequacy of internal controls.
Consistency
To be reliable, data should be processed and compiled consistently and uniformly. Variations in how data is collected and reported can distort information and trend analysis. In addition, because data collection and reporting processes will change over time, management must establish sound procedures to allow for systems changes. These procedures should be well defined and documented, clearly communicated to appropriate employees, and should include an effective monitoring system.
Completeness
Decision makers need complete and pertinent information in a summarized form. Reports should be designed to eliminate clutter and voluminous detail, thereby avoiding "information overload."
Relevance
Information provided to management must be relevant. Information that is inappropriate, unnecessary, or too detailed for effective decision making has no value. MIS must be appropriate to support the management level using it. The relevance and level of detail provided through MIS systems directly correlate to what is needed by the board of directors, executive management, departmental or area mid-level managers, etc. in the performance of their jobs.
Program development and negotiation of contracts with equipment and software vendors. Development of user instructions, training, and testing of the system. Installation and maintenance of the system. Management should also consider use of "project management techniques" to monitor progress as the MIS system is being developed. Internal controls must be woven into the processes and periodically reviewed by auditors. Management also should ensure that managers and staff receive initial and ongoing training in MIS. In addition, user manuals should be available and provide the following information: A brief description of the application or system. Input instructions, including collection points and times to send updated information. Balancing and reconciliation procedures. A complete listing of output reports, including samples. Depending on the size and complexity of its MIS system, an institution may need to use different manuals for different users such as first-level users, unit managers, and programmers.
MIS provides the following advantages.
1. It Facilitates planning : MIS improves the quality of plants by providing relevant information for sound decision making . Due to increase in the size and complexity of organizations, managers have lost personal contact with the scene of operations. 2. In Minimizes information overload : MIS change the larger amount of data in to summarized form and there by avoids the confusion which may arise when managers are flooded with detailed facts. 3. MIS Encourages Decentralization : Decentralization of authority is possibly when there is a system for monitoring operations at lower levels. MIS is successfully used for measuring performance and making necessary change in the organizational plans and procedures. 4. It brings Co ordination : MIS facilities integration of specialized activities by keeping each department aware of the problem and requirements of other departments. It connects all decision centers in the organization .
5. It makes control easier : MIS serves as a link between managerial planning and control. It improves the ability of management to evaluate and improve performance . The used computers has increased the data processing and storage capabilities and reduced the cost . 6. MIS assembles, process , stores , Retrieves , evaluates and Disseminates the information .
MIS Functions
MIS is set up by an organization with the prime objective to obtain management information to BE used by its managers in decision making. Thus, MIS must perform the following functions in order to meet its objectives.
Data Capturing: MIS captures data from various internal and external sources of an organization. Data capturing may BE manual or through computer terminals. End users typically, record data about transactions on some physical medium, such as a paper form, or enter it directly into a computer system.
Processing of Data: The captured data is processed to convert it into the required management information. Processing of data is done by such activities as calculating, comparing, sorting, classifying and summarizing. These activities organize, analyze, and manipulate data using various statistical, mathematical, operations research and other business models. Storage of Information: MIS stores processed or unprocessed data for future use. If any information is not immediately required, it is saved as an organizational record. In this activity, data and information are retained in an organized manner for later use. Stored data is commonly organized into fields, records, files and databases. Retrieval of Information: MIS retrieves information fro its stores as and when required by various users. As per the requirements of management users, the retrieved information is either disseminated as such or it is processed again to meet the exact MI demands. Dissemination of MI: Management Information, which is a finished product of MIS, is disseminated to the users in the organization.
MIS CHARACTERISTICS
System Approach: The information system follows a Systems approach. The systems approach implies a holistic approach to the study of system and its performance in the light for the objective for which it has been constituted. This approach is anti-piecemeal in nature. Management Oriented: This is an important characteristic of MIS. For designing of MIS, top-down approach should BE followed. Top-down approach suggests that the system development starts from the determination of management needs and overall business objectives. The MIS development plan should BE derived from the overall business plan. Management oriented characteristic of MIS also implies that the management actively directs the system development efforts. Need Based: MIS design and development should BE as per the information needs of managers at different levels, viz., strategic planning level, management control level and operational control level. In other words, MIS should cater to the specific needs of managers in an organizations hierarchy. Exception Based: MIS should BE developed on the exception based reporting principle, which means an abnormal situation, i.e. the maximum, minimum or expected values vary beyond tolerance limits. In such situations, there should BE exception reporting to the decision maker at the required level.
Future Oriented: Besides exception based reporting, MIS should also look at the future. In other words MIS should not merely provide past or historical information; rather it should provide information, on the basis of projections based on which actions may BE initiated. Integrated: Integration is a necessary characteristic of a management information system. Integration is significant because of its ability to produce more meaningful information. For example, in order to develop an effective production scheduling system, it is necessary to balance such factors as: 1. Set-up costs, 2. Work force 3. Overtime rates 4. Production capacity 5. Inventory level 6. Capital requirements 7. Customer services Long Term Planning: MIS is developed over relatively long periods. Such system does not develop overnight. A heavy element of planning is involved. The MIS designer must have the future objectives and needs of the company in mind.
Sub-System Concept: The process of MIS development is quite complex and one is likely to lose insight frequently. Thus, the system, though viewed as a single entity, must BE broken down into digestible sub-systems which are more meaningful at the planning stage. Central Database: A central database is the mortar that holds the functional systems together. Each system requires access to the master file of data covering inventory, personnel, vendors, customers, etc. If the data is stored efficiently and common usage in mind, one master file Can provide the data needed by any of the functional systems. It seems logical to gather data once, to properly validate it and to place it on a central storage medium, that Can BE accessed by any other sub system.
Applications Of MIS
Applications of MIS
With computers being as ubiquitous as they are today, there's hardly any large business that does not rely extensively on their IT systems. However, there are several specific fields in which MIS has become invaluable.
Strategy Support
While computers cannot create business strategies by themselves they can assist management in understanding the effects of their strategies, and help enable effective decision-making. MIS systems can be used to transform data into information useful for decision making. Computers can provide financial statements and performance reports to assist in the planning, monitoring and implementation of strategy. MIS systems provide a valuable function in that they can collate into coherent reports unmanageable volumes of data that would otherwise be broadly useless to decision makers. By studying these reports decision-makers can identify patterns and trends that would have remained unseen if the raw data were consulted manually. MIS systems can also use these raw data to run simulations hypothetical scenarios that answer a range of what if questions regarding alterations in strategy. For instance, MIS systems can provide predictions
about the effect on sales that an alteration in price would have on a product. These Decision Support Systems (DSS) enable more informed decision making within an enterprise than would be possible without MIS systems.
Data Processing
Not only do MIS systems allow for the collation of vast amounts of business data, but they also provide a valuable time saving benefit to the workforce. Where in the past business information had to be manually processed for filing and analysis it can now be entered quickly and easily onto a computer by a data processor, allowing for faster decision making and quicker reflexes for the enterprise as a whole.
Management by Objectives
While MIS systems are extremely useful in generating statistical reports and data analysis they can also be of use as a Management by Objectives (MBO) tool. MBO is a management process by which managers and subordinates agree upon a series of objectives for the subordinate to attempt to achieve within a set time frame. Objectives are set using the SMART ratio: that is, objectives should be Specific, Measurable, Agreed, Realistic and Time-Specific. The aim of these objectives is to provide a set of key performance indicators by which an enterprise can judge the performance of an employee or project. The success of any MBO objective depends upon the continuous tracking of progress. In tracking this performance it can be extremely useful to make use of an MIS system. Since all SMART objectives are by definition measurable they can be tracked through the generation of management reports to be analyzed by decision-makers.
The concept is a blend of principles, theories and practices of management, information and system giving rise to a single product called MANAGEMENT INFORMATION SYSTEM. The concept of management gives high regard to the individual and his ability to use the information. MIS gives information through data analysis. While analyzing the information, it relies on many academic disciplines like management science, OR, organization behavior, psychology, etc. The foundation of MIS is the principles of management and its practices. MIS uses the concept of management control in its design and relies heavily on the fact that the decision maker is a human being and is a human processor of information. A MIS can be evolved for a specific objective it is evolved after systematic planning and design. It calls for an analysis of business, management views and policies, organization culture and the management style. The MIS,therefore relies heavily on systems theory.The systems theory offers solutions to handle complex situations of the input and output flows. it uses theory of communication which helps to evolve a system design capable of handling data inputs, process, the outputs with the least possible noise or distortion in transmitting the information from a source to destination.
NEED FOR INFORMATION SYSTEMS Information systems are needed when timely processing for fast action is needed, same data has to be processed in different ways and when organizations require innovative processing.
A Production Management
The following type of information is needed in production management: Strategic Information: 1)Yearly and monthly production quotas and alternate schedules 2)Policies on machine replacement, augmentation and modernization. 3)Identifying best product mix. Tactical Information 1)Identifying and controlling areas of high cost. 2) Identifying critical bottlenecks in production. 3) Identifying alternate production schedules based on tools, machines etc. 4) Performance measures of machines to decide replacement. Operational Information 1)Monitoring up to date production information by examining assemblies, detecting likely shortages and giving early warning. 2) Scheduling better production dynamically. 3) Preventive maintenance schedules. 4) Monitoring tool, machine and personnel availability
B Marketing Management
Strategic Information: 1) Search for new markets and marketing strategies. 2) Analysis of competitors strategy 3) Technology and demographic forecasts and product changes Tactical Information: 1)Advertising techniques and analysis of their impact. 2)Customer preference surveys. 3)Correlation of prices and sales. 4)Sales force deployment and targets. 5)Exploring alternate marketing channels.
6)Timing of special sales campaigns. Operational Information: 1) Sales analysis by regions, customer class, sales person. 2) Sales target versus achievement. 3) Market share and trends. 4) Seasonal variations. 5) Effect of model changes. 6) Performance of sales outlets 7) Costs of campaigns and benefit.
C Material Management
Strategic Information: 1) Developing vendors for critical items 2) Determining optimal levels of inventory 3) Determining proportion of material needed 4) Reducing varieties of inventory Tactical Information: 1) Developing vendor performance measures. 2) Determining optimal reorder levels. 3) Determining issues of items to shops versus 4) standard needs. 5) Controlling high value of inventory. 6) Determining impact on material cost and 7) procurement with design changes and new 8) product introduction. Operational Information: 1) List of excess & deficient items received. 2) List of items rejected. 3) Critical items received. 4) Stores in transit and in inspection. 5) Value of inventory in hand. 6) Goods received, rejected and issued.
D Finance Management
Strategic Information: 1) Methods of financing. 2) Pricing policies 3) Tax planning. Tactical Information:
1) Variations between budget and expenses. 2) Large outstanding payments/Receipts. 3) Credit and payment status. 4) Cost increases and pricing. 5) Impact of taxation on pricing Operational Information: 1) Periodic financial report. 2) Budget status to all functional managers. 3) Tax returns. 4) Share transfers. 5) Profit and loss account. 6) Payments and receipts. 7) Payroll,provident fund accounts.
WHAT IS DSS? DSS is an interactive software-based system intended to help decision makers compile useful information from raw data, documents, personal knowledge, and/or business models to identify and solve problems and make decisions.
1. 2. 1. 2. 3. 1. 2.
Strategic management Executives develop organizational goals, strategies, policies, and objectives As part of a strategic planning process Tactical management Managers and business professionals in self-directed teams Develop short- and medium-range plans, schedules and budgets Specify the policies, procedures and business objectives for their subunits Operational management Managers or members of self-directed teams Develop short-range plans such as weekly production schedules
DECISION STRUCTURE Structured Decisions situations where the procedures to follow when a decision is needed can be specified in advance
Unstructured Decisions decision situations where it is not possible to specify in advance most of the decision procedures to follow Semi structured Decisions - decision procedures that can be prespecified, but not enough to lead to a definite recommended decision
COMPONENTS OF DSS
Communication-driven DSS Data-driven DSS Document-driven DSS Knowledge-driven DSS BENEFITS OF DSS
1. 2. 3. 4. 5. 6. 7. 8.
Improves personal efficiency Accelerate problem solving Facilitates interpersonal communication Promotes learning or training Increases organizational control Generates new evidence in support of a decision Creates a competitive advantage over competition Reveals new approaches to thinking about the problem space
is often tied to other systems such as the inventory system which tracks stock supplies and triggers reordering when stocks get low; serves the most elementary day-to-day activities of an organisation; supports the operational level of the business; supplies data for higher-level management decisions (e.g. MIS, EIS); is often critical to survival of the organisation; mostly for predefined, structured tasks; can have strategic consequences (eg airline reservation system); usually has high volumes of input and output; provides data which is summarised into information by systems used by higher levels of management; need to be fault-tolerant.
On-line transaction processing: A transaction processing mode in which transactions entered on-line are immediately processed by the CPU.
videoconferencing), electronic mail, voice mail, fax Groupware system: helps teams work together by providing access to team data, structuring communication, and making it easier to schedule meetings. For sharing information, controlling work flows, communication/integration of work.
Expert Systems Expert system (noun): "a computer system or program that uses artificial intelligence techniques to solve problems that ordinarily require a knowledgeable human. The method used to construct such systems, knowledge engineering, extracts a set of rules and data from an expert or experts through extensive questioning. This material is then organized in a format suitable for representation in a computer and a set of tools for inquiry, manipulation, and response is applied. While such systems do not often replace the human experts, they can serve as useful adjuncts or assistants. Among some of the successful expert systems developed are INTERNIST, a medical diagnosis tool that contains nearly 100,000 relationships between symptoms and diseases, and PROSPECTOR, an aid to geologists in interpreting mineral data." Expert systems imitate human experts in many different fields of expertise. Such systems contain rules (such as decision tables) that help a human answer expert questions. This is a classic example of how deskilling can affect people: imagine you are an expert rock identifier and people from around the world treat you like a living national treasure because of your brilliant ability to identify rocks. One day, a system is built that contains all the rules you intuitively use to make your rock identification decisions. By answering a few simple questions presented by the expert system, a human can identify a rock just as well as you can. Expert systems are built with decision-making rules, and they can ask humans a series of questions to narrow down the correct answer. One early and influential expert system was MYCIN, a disease diagnosis system. Advantages of expert systems:
The computer can store far more information than a human. The computer does not 'forget', make silly mistakes or get drunk when it is most needed. Data can be kept up-to-date. The expert system is always available 24 hours a day and will never 'retire'. The system can be used at a distance over a network.
Expert systems are computer application programs that take the knowledge of one or more human experts in a field and computerize it so that it is readily available for use. The human experts do not need to be physically present to accomplish a specialized project or task. Expert systems are only designed to be expert in a very narrow and specific task or subject field. They contain the acquired expert knowledge and try to imitate the experts evaluation processes to offer a conclusion. An advantage of an expert system is that it may include the knowledge of many experts in one specific
field. Expert systems usually contain two components: a knowledge base and an inference engine program, enabling it to suggest conclusions. The knowledge base is programmed in an IF ... THEN logical rules structure. Such a structure is a series of IF conditions that, if met, THEN a specific result may be concluded. An example would be: IF the animal is a bird it does not fly it swims it is black and white THEN it is a penguin
The expert system rules out options with each question until there remains an option with high probability. The rules and questions, of course, are provided by expert humans in the first place.
Figure 1.2 shows relation of information system to the levels of organization. The information needs are different at different organizational levels. Accordingly the information can be categorized as: strategic information, managerial information and operational information. Strategic information is the information needed by top most management for decision making. For example the trends in revenues earned by the organization are required by the top management for setting the policies of the organization. This information is not required by the lower levels in the organization. The information systems that provide these kinds of information are known as Decision Support Systems.
Figure 1.2 - Relation of information systems to levels of organization The second category of information required by the middle management is known as managerial information. The information required at this level is used for making short term decisions and plans for the organization. Information like sales analysis for the past quarter or yearly production details etc. fall under this category. Management information system (MIS) caters to such information needs of the organization. Due to its capabilities to fulfill the managerial information needs of the organization, Management Information Systems have become a necessity for all big organizations. And due to its vastness, most of the big organizations have separate MIS departments to look into the related issues and proper functioning of the system. The third category of information is relating to the daily or short term information needs of the organization such as attendance records of the employees. This kind of information is required at the operational level for carrying out the day-to-day operational activities. Due to its capabilities to provide information for processing transaction of the organization, the information system is known as Transaction Processing System or Data Processing System. Some examples of information provided by such systems areprocessing of orders, posting of entries in bank, evaluating overdue purchaser orders etc.
MANAGEMENT HIERARCHY
Top Managers
Line managers
Chief Executive
Production manager Marketing manager Materials manager Finance manager Human Resource manager
Medium moderately Large Detailed
Volume of
Low condensed
Operational
and directions
These are not of recurring nature. Some recur infrequently or occur only once. A decision support system must very flexible. The user should be able to produce customized reports by giving particular data and format specific to particular situations.
Provides input to be used in the managerial decision process. Deals with supporting well structured decision situations. Typical information requirements can be anticipated. Provides information to managers who must make judgments about particular situations. Supports decisionmakers in situations that are not well structured.
Knowledge based systems are artificial intelligent tools working in a narrow domain to provide intelligent decisions with justification. Knowledge is acquired and represented using various knowledge representation techniques rules, frames and scripts. The basic advantages offered by such system are documentation of knowledge, intelligent decision support, self learning,
reasoning and explanation. Knowledge-based systems are systems based on the methods and techniques of Artificial Intelligence. Their core components are:
Knowledge Base Systems (KBS) goes beyond the decision support philosophy to indicate the expert system technology into the decision making framework. Expert Systems (ES) have been the tools and techniques perfected by artificial intelligence (AI) researchers to deduce decision influences based on codification of knowledge. The codification of knowledge use the principles of knowledge representation (part of the large theoretical ideas of knowledge engineering). Typically such codification uses rules like IF-THEN rules to represent logical implications.
Typical tasks of KBS (1) Diagnosis - To identify a problem given a set of symptoms or malfunctions. e.g. diagnose reasons for engine failure (2) Interpretation - To provide an understanding of a situation from available information. e.g. DENDRAL (3) Prediction - To predict a future state from a set of data or observations. e.g. Drilling Advisor, PLANT (4) Design - To develop configurations that satisfy constraints of a design problem. e.g. XCON (5) Planning - Both short term & long term in areas like project management, product development or financial planning. e.g. HRM (6) Monitoring - To check performance & flag exceptions. e.g., KBS monitors radar data and estimates the position of the space shuttle (7) Control - To collect and evaluate evidence and form opinions on that evidence. e.g. control patients treatment (8) Instruction - To train students and correct their performance. e.g. give medical students experience diagnosing illness (9) Debugging - To identify and prescribe remedies for malfunctions. e.g. identify errors in an automated teller machine network and ways to correct the errors
Machine-readable knowledge bases store knowledge in a computer-readable form, usually for the purpose of having automated deductive reasoning applied to them. They contain a set of data, often in the form of rules that describe the knowledge in a logically consistent manner. An ontology can define the structure of stored data - what types of entities are recorded and what their relationships are. Logical operators, such as And (conjunction), Or (disjunction), material implication and negation may be used to build it up from simpler pieces of information. Consequently, classical deduction can be used to reason about the knowledge in the knowledge base. Some machine-readable knowledge bases are used with artificial intelligence, for example as part of an expert system that focuses on a domain like prescription drugs or customs law. Such knowledge bases are also used by the semantic web. Human-readable knowledge bases are designed to allow people to retrieve and use the knowledge they contain. They are commonly used to complement a help desk or for sharing information among employees within an organization. They might store troubleshooting information, articles, white papers, user manuals, knowledge tags, or answers to frequently asked questions. Typically, a search engine is used to locate information in the system, or users may browse through a classification scheme.
A text based system that can include groups of documents including hyperlinks between them is known as Hypertext Systems. Hypertext systems support the decision process by relieving the user of the significant effort it takes to relate and remember things." Knowledge bases can exist on both computers and mobile phones in a hypertext format.
Knowledge base analysis and design (also known as KBAD) is an approach that allows people to conduct analysis and design in a way that results in a knowledge base, which can later be used to make informative decisions. This approach was first implemented by Dr. Steven H. Dam Artificial intelligence (AI) is the intelligence of machines and the branch of computer science that aims to create it. AI textbooks define the field as "the study and design of intelligent agents" where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success. John McCarthy, who coined the term in 1956 defines it as "the science and engineering of making intelligent machines."
The field was founded on the claim that a central property of humans, intelligencethe sapience of Homo sapienscan be so precisely described that it can be simulated by a machine. This raises philosophical issues about the nature of the mind and the ethics of creating artificial beings, issues which have been addressed by myth, fiction and philosophy since antiquity Artificial intelligence has been the subject of optimism, but has also suffered setbacks and, today, has become an essential part of the technology
industry, providing the heavy lifting for many of the most difficult problems in computer science. AI research is highly technical and specialized, deeply divided into subfields that often fail in the task of communicating with each other.Subfields have grown up around particular institutions, the work of individual researchers, the solution of specific problems, longstanding differences of opinion about how AI should be done and the application of widely differing tools. The central problems of AI include such traits as reasoning, knowledge, planning, learning, communication, perception and the ability to move and manipulate objects. General intelligence (or "strong AI") is still among the field's long term goals.
WHAT IS A KNOWLEDGE-BASED SYSTEM? Symbolic: It incorporates knowledge that is symbolic [as well as numeric]. Heuristic: It reasons with judgmental, imprecise, and qualitative knowledge as well as with formal knowledge of established theories. Transparent: Its knowledge is simply and explicitly represented in terms familiar to specialists, and is separate from its inference procedures. It provides explanations of its line of reasoning and answers to queries about its knowledge. Flexible: It is incrementally refinable and extensible. More details can be specified to refine its performance; more concepts and links among concepts can be specified to broaden its range of applicability. It is an expert system if it provides expert-level solutions. The power lies in task-specific knowledge.
WHY BUILD A KNOWLEDGE-BASED SYSTEM? To Decrease Cost or Increase Quality of Goods and Services Magnify Availability of Expertise provide expertise to less experienced personnel avoid delays when expertise is needed provide expertise in locations where it is not available Fuse Different Sources of Knowledge Encode Corporate Knowledge provide consistency and availability over time Automate Some Routine Decision-Making or Bookkeeping Tasks Keep Records of Decisions and Actions provide a reliable database for later analysis
What's a potential application like? Is there no known algorithmic solution, or is the algorithmic solution too costly? Is the domain well-bounded, tractable, non-trivial?
Does the domain require little common sense reasoning? Are there non-trivial, useful subproblems or "easy" versions of the problem? Are there recognized experts in the domain? Does the task have a high payoff? Does the task normally take less than a few hours (days)? Does the task have a combinatorial nature? Can the expertise be incrementally acquired? Are data and case studies readily available? Are domain experts readily available?
WHAT MAKES FOR A GOOD APPLICATION? there are recognized experts the experts are provably better than amateurs there is general agreement about the knowledge the commitment of an expert can be obtained the task has a high payoff the task takes an expert a few minutes to a few hours the knowledge is primarily symbolic the task has a combinatorial nature the skill is (routinely) taught to neophytes data and test cases are available incremental progress is possible the task requires no common sense
Advantages & Limitations (1) Advantages - Increase availability of expert knowledge expertise not accessible training future experts - Efficient and cost effective - Consistency of answers - Explanation of solution - Deal with uncertainty (2) Limitations
Expert system
In artificial intelligence, an expert system is a computer system that emulates the decisionmaking ability of a human expert. Expert systems are designed to solve complex problems by reasoning about knowledge, like an expert, and not by following the procedure of a developer as is the case in conventional programming. The first expert systems were created in the 1970s and then proliferated in the 1980s. Expert systems were among the first truly successful forms of AI software. An expert system has a unique structure, different from traditional programs. It is divided into two parts, one fixed, independent of the expert system: the inference engine, and one variable: the knowledge base. To run an expert system, the engine reasons about the knowledge base like a human. In the 80's a third part appeared: a dialog interface to communicate with users.This ability to conduct a conversation with users was later called "conversational".
"IF it is living THEN it is mortal" "IF his age = known THEN his year of birth = date of today - his age in years" "IF the identity of the germ is not known with certainty AND the germ is gram-positive AND the morphology of the organism is "rod" AND the germ is aerobic THEN there is a strong probability (0.8) that the germ is of type enterobacteriacae"
This formulation has the advantage of speaking in everyday language which is very rare in computer science (a classic program is coded). Rules express the knowledge to be exploited by the expert system. There exists other formulations of rules, which are not in everyday language, understandable only to computer scientists. Each rule style is adapted to an engine style. The whole problem of expert systems is to collect this knowledge, usually unconscious, from the experts. There are methods but almost all are usable only by computer scientists.
Advantages
Expert systems offer many advantages for users when compared to traditional programs because they operate like a human brain.
Reliability
The reliability of an expert system is the same as the reliability of a database, i.e. good, higher than that of a classical program.
Scalability
Evolving an expert system is to add, modify or delete rules. Since the rules are written in plain language, it is easy to identify those to be removed or modified.
Pedagogy
The engines that are run by a true logic are able to explain to the user in plain language why they ask a question and how they arrived at each deduction. In doing so, they show knowledge of the expert contained in the expert system. So, user can learn this knowledge in its context. Moreover, they can communicate their deductions step by step. So, the user has information about their problem even before the final answer of the expert system.
Disadvantages
The expert system has a major flaw which explains its low success although the principle has existed for 70 years: knowledge collection and interpretation into rules, the knowledge engineering. Most developers have no method to perform this task. They work "manually" what opens to many possibilities for errors. Expert knowledge is not well understood, there is a lack of rules, rules are contradictory, some are poorly written and unusable. Worse, they most often use an engine unable to reasoning. Result: the expert system works badly and the project is abandoned. Correct development methodology can mitigate these problems. There exists software to interview the expert step by step which automatically write the rules and simultaneously run the expert system before his eyes, performing a consistency of the rules control. So expert and users can check the quality of the software before it is finished. Many expert systems are also penalized by the logic used. Most of the logics operate on "variables" facts, i.e. whose value changes several times during one reasoning, considered as a property belonging to a more powerful logic. Exactly like in classical computing, a way of programming where developers are in fact comfortable. This is the case of Mycin, Dendral, fuzzy logic, predicate logic (Prolog), symbolic logic, mathematical logic, etc.. Propositional logic uses only not variable facts. It turns out that in human mind, the facts used must remain invariable as long as the brain reasons on them. This makes possible detection of contradictions and production of explanations, two ways of controlling consistency of the knowledge. That is why expert systems using variable facts, more understandable for IT developers so the most numerous, are less easy to develop, less clear to users, less reliable and why they don't produce explanation or contradiction detection.
Application field
Expert systems address areas where combinatorics is enormous:
highly interactive or conversational applications, IVR, voice server. fault diagnosis, medical diagnosis decision support in complex systems, process control, interactive user guide educational and tutorial software logic simulation of machines or systems knowledge management
They can also be used in software engineering for rapid prototyping applications (RAD). Indeed, the expert system quickly developed in front of the expert shows him if the future application should be programmed. Indeed, any program contains expert knowledge and classic programming always begins with an expert interview. A program written in the form of expert system receives all the specific benefits of expert system, among others things it can be developed by anyone without computer training and without programming languages. But this solution has a defect: expert system runs slower than a traditional program because he consistently "thinks" when in fact a classic software just follows paths traced by the programmer.
Examples of applications
Expert systems are designed to facilitate tasks in the fields of accounting, medicine, process control, financial service, production, human resources, among others. Typically, the problem area is complex enough that a more simple traditional algorithm cannot provide a proper solution. The foundation of a successful expert system depends on a series of technical procedures and development that may be designed by technicians and related experts. As such, expert systems do not typically provide a definitive answer, but provide probabilistic recommendations. An example of the application of expert systems in the financial field is expert systems for mortgages. Loan departments are interested in expert systems for mortgages because of the growing cost of labor, which makes the handling and acceptance of relatively small loans less profitable. They also see a possibility for standardized, efficient handling of mortgage loan by applying expert systems, appreciating that for the acceptance of mortgages there are hard and fast rules which do not always exist with other types of loans. Another common application in the financial area for expert systems are in trading recommendations in various marketplaces. These markets involve numerous variables and human emotions which may be impossible to deterministically characterize, thus expert systems based on the rules of thumb from experts and simulation data are used. Expert system of this type can range from ones providing regional retail recommendations, to ones used to assist monetary decisions by financial institutions and governments.
What is System? A collection of components that work together to realize some objectives forms a system. Basically there are three major components in every system, namely input, processing and output.
In a system the different components are connected with each other and they are interdependent. For example, human body represents a complete natural system. We are also bound by many national systems such as political system, economic system, educational system and so forth. The objective of the system demands that some output is produced as a result of processing the suitable inputs. A well-designed system also includes an additional element referred to as control that provides a feedback to achieve desired objectives of the system.
The term system originates from the Greek term systema, which means to place together. Multiple business and engineering domains have definitions of a system. This text defines a system as:
System An integrated set of interoperable elements, each with explicitly specified and bounded capabilities, working synergistically to perform value-added processing to enable a User to satisfy mission-oriented operational needs in a prescribed operating environment with a specified outcome and probability of success.
To help you understand the rationale for this definition, lets examine each part in detail.
One is tempted to expand this phrase to state interoperable and complementary. In general, system elements should have complementary missions and objectives with nonoverlapping capabilities. However, redundant systems may require duplication of capabilities across several system elements. Additionally, some systems, such as networks, have multiple instances of the same components. By each element having explicitly specified and bounded capabilities, we mean that every element should work to accomplish some higher level goal or purposeful mission. System element contributions to the overall system performance must be explicitly specified. This requires that operational and functional performance capabilities for each system element be identified and explicitly bounded to a level of specificity that allows the element to be analyzed,
designed, developed, tested, verified, and validatedeither on a stand-alone basis or as part of the integrated system. By working in synergistically, we mean that the purpose of integrating the set of elements is to leverage the capabilities of individual element capabilities to accomplish a higher level capability that cannot be achieved as stand-alone elements. By value-added processing, we mean that factors such operational cost, utility, suitability, availability, and efficiency demand that each system operation and task add value to its inputs availability, and produce outputs that contribute to achievement of the overall system mission outcome and performance objectives. By enable a user to predictably satisfy mission-oriented operational needs, we mean that every system has a purpose (i.e., a reason for existence) and a value to the user(s). Its value may be a return on investment (ROI) relative to satisfying operational needs or to satisfy system missions and objectives. By in a prescribed operating environment, we mean that for economic, outcome, and survival reasons, every system must have a prescribedthat is, boundedoperating environment. By with a specified outcome, we mean that system stakeholders (Users, shareholders, owners, etc.) expect systems to produce results. The observed behavior, products, byproducts, or services, for example, must be outcome-oriented, quantifiable, measurable, and verifiable. By and probability of success, we mean that accomplishment of a specific outcome involves a degree of uncertainty or risk. Thus, the degree of success is determined by various performance factors such as reliability, dependability, availability, maintainability, sustainability, lethality, and survivability.
Economic systems Educational systems Financial systems Environmental systems Medical systems Corporate systems Insurance systems Religious systems Social systems Psychological systems Cultural systems Food distribution systems Transportation systems Communications systems Entertainment systems Government systems Legislative systems, Judicial systems, Revenue systems, Taxation systems, Licensing systems,
Military systems, Welfare systems, Public safety systems, Parks and recreation systems, Environmental systems If we analyze these systems, we find that they produce combinations of products, by-products, or services. Further analysis reveals most of these fall into one or more classes such as individual versus organizational; formal versus informal; ground-based, sea-based, air-based, space-based, or hybrid; human-in-the-loop (HITL) systems, open loop versus closed loop; and fixed, mobile, and transportable systems.
People often confuse the concepts of systems, products, and tools. To facilitate our discussion, lets examine each of these terms in detail.
We refer to the transformational processing that adds value to inputs and produces an output as a capability. You will often hear people refer to this as the systems functionality; this is partially correct. Functionality only represents the ACTION to be accomplished; not HOW WELL as characterized by performance. This text employs capability as the operative term that encompasses both the functionality and performance attributes of a system. The simple diagram presented in Figure 1 represents a system. However, from an analytical perspective, the diagram is missing critical information that relates to how the system operates and performs within its operating environment. Therefore, we expand the diagram to identify these missing elements. The result is shown in Figure 2. The attributes of the constructwhich include desirable/undesirable inputs, stakeholders, and desirable/undesirable outputsserve as a key checklist to ensure that all contributory factors are duly considered when specifying, designing, and developing a system.
As discussed above, a system is a set of components working together to achieve some goal. The basic elements of the system may be listed as:
Resources
Every system requires certain resources for the system to exist. Resources can be hardware, software or liveware. Hardware resources may include the computer, its peripherals, stationery etc. Software resources would include the programs running on these computers and the liveware would include the human beings required to operate the system and make it functional. Thus these resources make an important component of any system. For instance, a Banking system cannot function without the required stationery like cheque books, pass books etc. such systems also need computers to maintain their data and trained staff to operate these computers and cater to the customer requirements.
Procedures
Every system functions under a set of rules that govern the system to accomplish the defined goal of the system. This set of rules defines the procedures for the system to Chapter 1 Introduction to Systems operate. For instance, the Banking systems have their predefined rules for providing interest at different rates for different types of accounts.
Data/Information
Every system has some predefined goal. For achieving the goal the system requires certain inputs, which are converted into the required output. The main objective of the System is to produce some useful output. Output is the outcome of processing. Output can be of any nature e.g. goods, services or information. However, the Output must conform to the customer's expectations. Inputs are the elements that enter the system and produce Output. Input can be of various kinds, like material, information, etc.
Intermediate Data
Various processes process system's Inputs. Before it is transformed into Output, it goes through many intermediary transformations. Therefore, it is very important to identify the Intermediate Data. For example, in a college when students register for a new semester, the initial form submitted by student goes through many departments. Each department adds their validity checks on it. Finally the form gets transformed and the student gets a slip that states whether the student has been registered for the requested subjects or not. It helps in building the System in a better way. Intermediate forms of data occur when there is a lot of processing on the input data. So, intermediate data should be handled as carefully as other data since the output depends upon it.
Processes
The systems have some processes that make use of the resources to achieve the set goal under the defined procedures. These processes are the operational element of the system. For instance in a Banking system there are several processes that are carried out. Consider for example the processing of a cheque as a process. A cheque passes through several stages before it actually gets processed and converted. These are some of the processes of the Banking system. All these components together make a complete functional system. Systems also exhibit certain features and characteristics, some of which are:
Objective
Every system has a predefined goal or objective towards which it works. A system cannot exist without a defined objective. For example an organization would have an objective of earning maximum possible revenues, for which each department and each individual has to work in coordination.
Standards
It is the acceptable level of performance for any system. Systems should be designed to meet standards. Standards can be business specific or organization specific. For example take a sorting problem. There are various sorting algorithms. But each has its own complexity. So such algorithm should be used that gives most optimum efficiency. So there should be a standard or rule to use a particular algorithm. It should be seen whether that algorithm is implemented in the system.
Environment
Every system whether it is natural or man made co-exists with an environment. It is very important for a system to adapt itself to its environment. Also, for a system to exist it should change according to the changing environment. For example, we humans live in a particular environment. As we move to other places, there are changes in the surroundings but our body gradually adapts to the new environment. If it were not the case, then it would have been very difficult for human to survive for so many thousand years. Another example can be Y2K problem for computer systems. Those systems, which are not Y2K compliant, will not be able to work properly after year 2000. For computer systems to survive it is important these systems are made Y2K compliant or Y2K ready.
Feed Back
Feedback is an important element of systems. The output of a system needs to be observed and feedback from the output taken so as to improve the system and make it achieve the laid standards. In fig 1.1, it is shown that a system takes input. It then transforms it into output. Also some feedback can come from customer (regarding quality) or it can be some intermediate data (the output of one process and input for the other) that is required to produce final output.
Classifications of System
From previous section we have a firm knowledge of various system components and its characteristics. There are various types of system. To have a good understanding of these systems, these can be
categorized in many ways. Some of the categories are open or closed, physical or abstract and natural or man made information systems, which are explained next.
Any change in the existing policies of an organization may require the existing information system to be restructured or complete development of a new information system. In case of an organization functioning manually and planning to computerize its functioning, the development of a new information system would be required. The development of any information system can be put into two major phases: analysis and Design. During analysis phase the complete functioning of the system is understood and requirements are defined which lead to designing of a new system. Hence the development process of a system is also known as System Analysis and Design process. So let us now understand 1. 2. 3. What exactly System Analysis and Design is? Who is system analyst and what are his various responsibilities? Users of the Systems?
Stages in building an improved system The above figure shows the various stages involved in building an improved system. System design is the process of planning a new business system or one to replace or complement an existing system. Analysis specifies what the system should do. Design states how to accomplish the objective. After the proposed system is analyzed and designed, the actual implementation of the system occurs. After implementation, working system is available and it requires timely maintenance. See the figure above.
Role of System Analyst differs from organization to organization. Most common responsibilities of System Analyst are following
1) System analysis
It includes system's study in order to get facts about business activity. It is about getting information and determining requirements. Here the responsibility includes only requirement determination, not the design of the system.
2) System analysis and design:
Here apart from the analysis work, Analyst is also responsible for the designing of the new system/application.
3) Systems analysis, design, and programming:
Here Analyst is also required to perform as a programmer, where he actually writes the code to implement the design of the proposed application. Due to the various responsibilities that a system analyst requires to handle, he has to be multifaceted person with varied skills required at various stages of the life cycle. In addition to the technical know-how of the information system development a system analyst should also have the following knowledge.
Business knowledge: As the analyst might have to develop any kind of a business system, he should be familiar with the general functioning of all kind of businesses. Interpersonal skills: Such skills are required at various stages of development process for interacting with the users and extracting the requirements out of them Problem solving skills: A system analyst should have enough problem solving skills for defining the alternate solutions to the system and also for the problems occurring at the various stages of the development process.
Very first users are the hands-on users. They actually interact with the system. They are the people who feed in the input data and get output data. Like person at the booking counter of a gas authority. This person actually sees the records and registers requests from various customers for gas cylinders. Other users are the indirect end users who do not interact with the systems hardware and software. However, these users benefit from the results of these systems. These types of users can be managers of organization using that system. There are third types of users who have management responsibilities for application systems. These oversee investment in the development or use of the system.
Fourth types of users are senior managers. They are responsible for evaluating organization's exposure to risk from the systems failure. Now we know what are systems and what is system analysis and design. So let us take a case in which well apply the concepts we have learned in the chapter. The case would be referred to as and where necessary throughout the website and in this process we will be developing the system required.
The different phases of system development life cycle is shown in this diagram
PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE Let us now describe the different phases and related activities of system development life cycle. (a) Preliminary System Study Preliminary system study is the first stage of system development life cycle. This is a brief investigation of the system under consideration and gives a clear picture of what actually the physical system is? In practice, the initial system study involves the preparation of a System Proposal which lists the Problem Definition, Objectives of the Study, Terms of reference for Study, Constraints, Expected benefits of the new system, etc. in the light of the user requirements.
The system proposal is prepared by the System Analyst (who studiesthe system) and places it before the user management. The management may accept the proposal and the cycle proceeds to the next stage. The management may also reject the proposal or request some modifications in the proposal. In summary, we would say that system study phase passes through the following steps: Problem identification and project initiation Background analysis Inference or findings (system proposal)
(b) Feasibility Study In case the system proposal is acceptable to the management, the next phase is to examine the feasibility of the system. The feasibility study is basically the test of the proposed system in the light of its workability, meeting users requirements, effective use of resources and of course, the cost effectiveness. These are categorized as technical, operational, economic and schedule feasibility. The main goal of feasibility study is not to solve the problem but to achieve the scope. In the process of feasibility study, the cost and benefits are estimated with greater accuracy to find the Return on Investment (ROI). This also defines the resources needed to complete the detailed investigation. The result is a feasibility report submitted to the management. This may be accepted or accepted with modifications or rejected. The system cycle proceeds only if the management accepts it. (c) Detailed System Study The detailed investigation of the system is carried out in accordance with the objectives of the proposed system. This involves detailed study of various operations performed by a system and their relationships within and outside the system. During this process, data are collected on the available files, decision points and transactions handled by the present system. Interviews, on-site observation and questionnaire are the tools used for detailed system study. Using the following steps it becomes easy to draw the exact boundary of the new system under consideration: Keeping in view the problems and new requirements Workout the pros and cons including new areas of the system
All the data and the findings must be documented in the form of detailed data flow diagrams (DFDs), data dictionary, logical data structures and miniature specification. The main points to be discussed in this stage are: Specification of what the new system is to accomplish based on the user requirements. Functional hierarchy showing the functions to be performed by the new system and their relationship with each other. Functional network, which are similar to function hierarchy but they highlight the functions which are common to more than one procedure. List of attributes of the entities these are the data items which need to be held about each entity (record)
(d) System Analysis Systems analysis is a process of collecting factual data, understand the processes involved, identifying problems and recommending feasible suggestions for improving the system functioning. This involves studying the business processes, gathering operational data, understand the information flow, finding out bottlenecks and evolving solutions for overcoming the weaknesses of the system so as to achieve the organizational goals. System Analysis also includes subdividing of complex process involving the entire system, identification of data store and manual processes. The major objectives of systems analysis are to find answers for each business process: What is being done, How is it being done, Who is doing it, When is he doing it, Why is it being done and How can it be improved? It is more of a thinking process and involves the creative skills of the System Analyst. It
attempts to give birth to a new efficient system that satisfies the current needs of the user and has scope for future growth within the organizational constraints. The result of this process is a logical system design. Systems analysis is an iterative process that continues until a preferred and acceptable solution emerges. (e) System Design Based on the user requirements and the detailed analysis of the existing system, the new system must be designed. This is the phase of system designing. It is the most crucial phase in the developments of a system. The logical system design arrived at as a result of systems analysis is converted into physical system design. Normally, the design proceeds in two stages: Preliminary or General Design: In the preliminary or general design, the features of the new system are specified. The costs of implementing these features and the benefits to be derived are estimated. If the project is still considered to be feasible, we move to the detailed design stage. Structured or Detailed Design: In the detailed design stage, computer oriented work begins in earnest. At this stage, the design of the system becomes more structured. Structure design is a blue print of a computer system solution to a given problem having the same components and inter-relationships among the same components as the original problem. Input, output, databases, forms, codification schemes and processing specifications are drawn up in detail.
In the design stage, the programming language and the hardware and software platform in which the new system will run are also decided. There are several tools and techniques used for describing the system design of the system. These tools and techniques are: Flowchart Data flow diagram (DFD) Data dictionary Structured English Decision table Decision tree
Each of the above tools for designing will be discussed in detailed in the next lesson. The system design involves: i. Defining precisely the required system output ii. Determining the data requirement for producing the output iii. Determining the medium and format of files and databases iv. Devising processing methods and use of software to produce output v. Determine the methods of data capture and data input vi. Designing Input forms vii. Designing Codification Schemes viii. Detailed manual procedures ix. Documenting the Design
(f) Coding The system design needs to be implemented to make it a workable system. This demands the coding of design into computer understandable language, i.e., programming language. This is also called the programming phase in which the programmer converts the program specifications into computer instructions, which we refer to as programs. It is an important stage where the defined procedures are transformed into control specifications by the help of a computer language. The programs coordinate the data movements and control the entire process in a system. It is generally felt that the programs must be modular in nature. This helps in fast development, maintenance and future changes, if required.
(g) Testing Before actually implementing the new system into operation, a test run of the system is done for removing the bugs, if any. It is an important phase of a successful system. After codifying the whole programs of the system, a test plan should be developed and run on a given set of test data. The output of the test run should match the expected results. Sometimes, system testing is considered a part of implementation process. Using the test data following test run are carried out: Program test: When the programs have been coded, compiled and brought to working conditions, they must be individually tested with the prepared test data. Any undesirable happening must be noted and debugged (error corrections) System Test: After carrying out the program test for each of the programs of the system and errors removed, then system test is done. At this stage the test is done on actual data. The complete system is executed on the actual data. At each stage of the execution, the results or output of the system is analyzed. During the result analysis, it may be found that the outputs are not matching the expected output of the system. In such case, the errors in the particular programs are identified and are fixed and further tested for the expected output. When it is ensured that the system is running error-free, the users are called with their own actual data so that the system could be shown running as per their requirements.
(h) Implementation After having the user acceptance of the new system developed, the implementation phase begins. Implementation is the stage of a project during which theory is turned into practice. The major steps involved in this phase are: Acquisition and Installation of Hardware and Software Conversion User Training Documentation
The hardware and the relevant software required for running the system must be made fully operational before implementation. The conversion is also one of the most critical and expensive activities in the system development life cycle. The data from the old system needs to be converted to operate in the new format of the new system. The database needs to be setup with security and recovery procedures fully defined. During this phase, all the programs of the system are loaded onto the users computer. After loading the system, training of the user starts. Main topics of such type of training are: How to execute the package How to enter the data How to process the data (processing details) How to take out the reports
After the users are trained about the computerized system, working has to shift from manual to computerized working. The process is called Changeover. The following strategies are followed for changeover of the system. (i) Direct Changeover: This is the complete replacement of the old system by the new system. It is a risky approach and requires comprehensive system testing and training. (ii) Parallel run: In parallel run both the systems, i.e., computerized and manual, are executed simultaneously for certain defined period. The same data is processed by both the systems. This strategy is less risky but more expensive because of the following: Manual results can be compared with the results of the computerized system. The operational work is doubled.
Failure of the computerized system at the early stage does not affect the working of the organization, because the manual system continues to work, as it used to do.
(iii) Pilot run: In this type of run, the new system is run with the data from one or more of the previous periods for the whole or part of the system. The results are compared with the old system results. It is less expensive and risky than parallel run approach. This strategy builds the confidence and the errors are traced easily without affecting the operations. The documentation of the system is also one of the most important activity in the system development life cycle. This ensures the continuity of the system. There are generally two types of documentation prepared for any system. These are: User or Operator Documentation System Documentation
The user documentation is a complete description of the system from the users point of view detailing how to use or operate the system. It also includes the major error messages likely to be encountered by the users. The system documentation contains the details of system design, programs, their coding, system flow, data dictionary, process description, etc. This helps to understand the system and permit changes to be made in the existing system to satisfy new user needs. (i) Maintenance Maintenance is necessary to eliminate errors in the system during its working life and to tune the system to any variations in its working environments. It has been seen that there are always some errors found in the systems that must be noted and corrected. It also means the review of the system from time to time. The review of the system is done for: knowing the full capabilities of the system knowing the required changes or the additional requirements studying the performance.
If a major change to a system is needed, a new project may have to be set up to carry out the change. The new project will then proceed through all the above life cycle phases.
Nature of The System: The analysis of the system will help the system designer to conclude whether the system is the closed type or open, and a deterministic or probabilistic. Such an understanding of the system is necessary, prior to design the process to ensure the necessary design architecture. Role of the System as an Interface: The system, many a times, acts as an interface to the other systems. Hence through such an interface, it activates or promotes some changes in the other systems. It is necessary to understand the existing role of the system, as an interface, to safeguard the interests of the other systems. Any modifications or changes made should not affect the functioning or the objective of the other systems. Participation of Users: The strategic purpose of the analysis of the system is to seek the acceptance of the people to a new development. System analysis process provides a sense of participation to the people. This helps in breaking the resistance to the new development and it also ensure the commitment to the new system. Understanding of Resource Needs: The analysis of the system helps in defining the resource requirements in terms of hardware and software. Hence, if any additional resources are required, this would mean an investment. The management likes to evaluate the investment form the point of view of return on such investment. If the return on the investment is not attractive, the management may drop the project. Assessment of Feasibility: The analysis of the system helps to establish the feasibility from different angles. The system should satisfy the technical, economic and operational feasibility.
A system is a set of interdependent components, organized in a planned manner to achieve certain objectives. System interacts with their environment through receiving inputs and producing outputs. Systems can be decomposed into smaller units called subsystems. Systems falls into three categories Physical or Abstract systems Open or closed system depending upon their interaction with environment. Man-made such as information systems. Three levels of information in organization require a special type of information. Strategic information relates to long-term planning policies and upper management. Managerial information helps middle management and department heads in policy implementation and control. Operational information is daily information needed to operate the business. Information systems are of many types. Management Information, transaction processing, and decision support systems are all information systems. Transaction processing system assist in processing day to day activities of the organization Management information systems are decisions oriented. These use transaction data and other information that is developed internally or outside the organization. Decision support systems are built for assisting managers who are responsible for making decisions.
System analysis and design refers to the application of systems approach to problem solving.
Review Questions
1.
2. 3. 4. 5. 6. 7.
Define the term System. What are the various elements of system? Identify two systems in your surroundings. What is system analysis and design? What are the roles of system analyst? Make a list of traits that a system analyst should have. Will the responsibility of a system analyst vary according to:
(a) Organization size( for example small or large business)? (b) Type of organization(business, government agency, non-profit organization)? 8. Differentiate between a) Open and closed system b) Physical and abstract 9. Main aim of an information system is to process _________. 10. Transaction processing, __________________ , and decision support system are three types of information system.
11. State true or false a) Decision support system is for middle level management. b) Closed systems don't interact with their environment. c) Transaction processing system handles day-to-day operations of the organization. d) Management information system deals with strategic information of organization. e) Problem solving and interpersonal skills are desirable for system analyst.
This unit gives a brief overview of general system concepts such as Definition of system, Characteristics of a system namely, organization, Interaction, Interdependence, Integration, Central objective. Later part concentrates on elements of systems namely input, output, process,
control & feedback, environment, boundaries and interface. The different types of system, physical or abstract, open or closed system is also dealt.
Definition of System
A system is a set of elements or components that interact to accomplish goals. The term System is derived from the Greek word systma which means a set of interacting or interdependent entities, real or abstract, forming an integrated whole. In simpler terms, a system is an organized relationship among functioning units or components. With reference to a business organization system or specifically a business system is a group of interrelated procedures used for a business function, with an identifiable boundary, working together for some purpose. A system can be defined in many ways. Some of these include: A regularly interacting or interdependent group of items forming a unified whole. An organized set of doctrines, ideas, or principles, usually intended to explain the arrangements or working of a systematic whole. An organized or established procedure. An organized society or social situation regarded as stultifying establishment. A System is a set of related components that produces specific results. An organization consisting of interrelated departments or subsystems for carrying out specific business objectives is a business system.
Characteristics of a system
Systems have five important characteristics namely organization, interaction, interdependence, integration and central objective. Organization The term organization here implies to the structure & order of the system. It can be viewed as the arrangement of components that help to achieve the goals and objectives. It is a collection of one or more subsystems.
Interaction
A system many have many subsystems / components. The way in which each component functions with other components is called interaction. For instance, consider a Manufacturing firm, the sales unit must interact with production unit so that they have sufficient inventory level as and when the demand is made. The sales unit may also interact with finance unit for employee payments. Interdependence Some or all components or subsystems of the system may be dependent on one another. They may be coordinated & linked together according to some plan. In simpler terms, if the output of one subsystem is input for the proper functioning of another subsystem, then the second subsystems is said to be interdependent on first. This interdependence may continue like a chain with in a system. For example the outcome of the raw material unit of a firm i.e the processed raw material may be input to the production unit. The finished products manufactured by production unit may be input to testing unit and so on. Integration
The term integration refers to the holism of system. It tells how different subsystem or components are tied together to form a system .It also implies how the different parts of system work together within the system even though each part performs a unique function. For a Manufacturing firm to produce required products with a very good quality and at a reasonable price, all other subunits like procurement, production, finance, quality control & testing and sales must work with coordination. Central Objective Objectives are the main goals / aim to be achieved through the system. The systems exists to achieve or to help achieve these objectives. Objectives may be real or stated. Objectives may be long-term objectives or short-term objectives.
Types of systems
There are numerous types of systems that exist and we also come across them in our day-to-day life. Systems may be classified into different types. Normally all the systems are categorized into
two categories namely natural systems and man-made systems. Natural systems
There are thousands of systems that exist in nature. We can further classify natural systems into two basic subcategories namely, physical systems and living systems. Physical systems include diverse systems like
Stellar systems: galaxies, solar systems, etc. Geological systems: rivers, mountain ranges, etc.
Living systems encompass all of the animals, plants and human beings. The living systems, whether at the level of the cell, the organ, the organism, the group, the organization, the society, or the supranational system, all consists of around 19 subsystems. Some of these include the
boundary, the distributor, the converter, the producer, the extruder, the channel and net, the decoder, the memory, etc.
Man-made systems
Man-made systems are the systems developed to support the human working ability. Some of the man made systems include:
Social systems: organizations of laws, doctrines, customs, etc. Transportation systems: networks of highways, canals and airlines. Communication systems: telephone, telex and messaging system Manufacturing systems: factories, assembly lines, etc. Financial systems: accounting, inventory, general ledger and so on.
Today because of technology advancements, we can observe that most of these systems include computers. However there are still some systems may not being automated because of reasons like cost, convenience, security, maintainability and politics. Most of the man-made systems, including computer systems can interact with physical systems and living systems. In some cases, automated systems are being designed to replace living systems. And in some cases living systems are considered as components of automated systems.
Automated systems
Automated systems are the man-made systems that interact with or are controlled by one or more computers. Although many different kinds of automated systems exists, they all have some of the common components like hardware, software, people, data and procedures. Automated systems can be classified in many ways. One simplest way of categorizing is by application. But, such a classification is not useful because techniques like analyzing, modeling, designing and implementing automated systems are generally the same regardless of the application. A more useful categorization of automated systems is as follows:
Batch system: In a batch system the information is usually retrieved on a sequential basis, i.e the computer system read through all the records in its database, processing and updating those records for which there is some activity. On-line systems: An on-line system is one, which accepts input directly from the user or environment where it is used and also returns outputs or results of computation directly to where they are required. Real-time systems: A real-time system may be defined as one which controls an environment by receiving data, processing them, and returning the results sufficiently quickly to affect the environment at that time. Decision-support systems: These computer systems that help managers and other knowledge workers in an organization make intelligent, informed decisions about various aspects of the operation. Typically, the decision-support systems do not operate on a regular basis. Instead, they are used on an adhoc basis, whenever needed. Knowledge-based systems: The goal of computer scientists working in the field of artificial intelligence is to produce programs that imitate human performance in a wide variety of intelligent tasks. For some expert systems, that goal is close to being attained. For others, although we do not yet know how to construct programs that perform well on their own, we can begin to build programs that significantly assist people in their performance of a task.
Other classifications
Systems can also divided as
Physical systems Physical systems are tangible entities that may be static or dynamic in operation. For example, physical parts of the computer center like computers, desks, and chairs that facilitate operation of the computer can be seen and counted. Such systems are static physical systems. A programmed computer in which data, programs, output and applications change as the users demand is dynamic physical system. Abstract systems
Abstract systems are conceptual or nonphysical entities. They may be formulas of relationship among sets of variables or models i.e. the abstract conceptualization of physical situations. A model is an easier way of visualizing relationships in the system under study. Open system Open systems is a system having an interface with environment. It permits interaction across its boundary. It receives inputs from within the system or from the environment and delivers outputs the system or environment. Open systems tend to have form and structure. They adapt to changes in environment so as to continue to exist. Information systems are open systems, which adapt to the changing demands of the user. Other examples of open system include biological system, organizational system. Closed system A closed system is one that does not interface with its environment, i.e. it has no input or output. The concept of closed systems is more relevant to scientific systems than to social systems. Closed systems are isolated from environmental influences. A completely closed system is rare in reality. A chemical reaction in a sealed, insulated container is an closed system. Relatively closed systems are special type of closed system, which is less relaxed when compared to closed systems. They are used in organizations and in information processing, where systems are relatively isolated from the environment, but are not completely closed. For example, a computer program with predefined input, a process and an output is a relatively closed system.
Systems principles
There are a few general principles or guidelines that are of particular interest to people building automated information systems. They include:
1. If a system is more specialized then it is less flexible i.e., the ability of a system to be adapted to different circumstances is very less. 2. If a system is more general-purpose then it is less optimized for a particular situation. But the more the system is optimized for a particular situation, the less adaptable it will be to new circumstances 3. If a system is very large then maintenance is a tedious process. 4. Systems can be part of larger systems and they can always be partitioned into smaller subsystems. 5. Systems can be scalable. However, this principle could not be true for all systems.
Elements of a system
A systems consists of the following elements, Input Processing Output Boundary Environment Components Input: A system may accept input from within its boundary or from the environment. For example, in a manufacturing firm, the production unit may get raw materials from the procurement section which is a part of the system i.e. a subsystem (within the system boundary) or directly from the raw material supplier which is outside the system i.e. environment. Output: Any system that has an intended set of inputs with certain processing yields output. This output may be used by any subsystems or by the environment. Consider the same manufacturing scenario, the production unit may deliver finished products to the sales unit, a subsystem or directly delivery to the wholesalers / retailers i.e. to environment.
Processing: Data to be converted into information should undergo a transformation process. Similarly, inputs that need to be converted into a desirable output should undergo the processing. For instance, to get a finished product the raw materials have to undergo the process of cleaning, manufacturing, testing, etc. System boundary: System boundary is a delimiter, which divides or separates the system from the environment. Environment: Anything outside system boundary is environment.
Components: The subsystems/ subparts of a system operating independently are called the components of a system. There may be association between to or more components of a system like finance unit and sales unit of a manufacturing firm. Such an association is called interrelationship. Interaction between two or more components requires an interface to be used.
The following figure 2.1 illustrates the different view of basic elements of a system.
Environment
Input
Processing
Output
System Boundary
Nearly three decades ago the operations in an organization used to be limited and so it was possible to maintain them using manual procedures. But with the growing operations of organizations, the need to automate the various activities increased, since for manual procedures it was becoming very difficult, slow and complicated. Like maintaining records for a thousand plus employees company on papers is definitely a cumbersome job. So, at that time more and more companies started going for automation. Since there were a lot of organizations, which were opting for automation, it was felt that some standard and structural procedure or methodology be introduced in the industry so that the transition from manual to automated system became easy. The concept of system life cycle came into existence then. Life cycle model emphasized on the need to follow some structured approach towards building new or improved system. There were many models suggested. A waterfall model was among the very first models that came into existence. Later on many other models like prototype, rapid application development model, etc were also introduced. System development begins with the recognition of user needs. Then there is a preliminary investigation stage. It includes evaluation of present system, information gathering, feasibility study, and request approval. Feasibility study includes technical, economic, legal and operational feasibility. In economic feasibility cost-benefit analysis is done. After that, there are detailed design, implementation, testing and maintenance stages. In this session, we'll be learning about various stages that make system's life cycle. In addition, different life cycles models will be discussed. These include Waterfall model, Prototype model, Object-Oriented Model, spiral model and Dynamic Systems Development Method (DSDM).
1.
2. 3. 4.
Understanding the problem Deciding a plan for a solution Coding the planned solution Testing the actual program
For small problems these activities may not be done explicitly. The start end boundaries of these activities may not be clearly defined, and not written record of the activities may be kept. However, for large systems where the problem solving activity may last over a few years. And where many people are involved in development, performing these activities implicitly without proper documentation and representation will clearly not work. For any software system of a non-trival nature, each of the four activities for problem solving listed above has to be done formally. For large systems, each activity can be extremely complex and methodologies and precedures are needed to perform it efficiently and correctly. Each of these activities is a major task for large software projects. Furthermore, each of the basic activities itself may be so large that it cannot be handled in single step and must be broken into smaller steps. For example, design of a large software system is always broken into multiple, distinct design phases, starting from a very high level design specifying only the components in the system to a detailed design where the logic of the components is specified. The basic activities or phases to be performed for developing a software system are: 1. 2. 3. 4. Requirement Analysis / Determination of System's Requirements Design of system Development (coding) of software System Testing
In addition to the activities performed during software development, some activities are performed after the main development is complete. There is often an installation (also called implementation) phase, which is concerned with actually installing the system on the client's computer systems and then testing it. Then, there is software maintenance. Maintenance is an activity that commences after the software is developed. Software needs to be maintained not because some of its components "wear out" and need to be replaced, but because there are often some residual errors remaining in the system which must be removed later as they are discovered. Furthermore, the software often must be upgraded and enhanced to include more "features" and provide more services. This also requires modification of the software, Therefore, maintenance in unavoidable for software systems. In most commercial software developments there are also some activities performed before the requirement analysis takes place. These can be combined into a feasibility analysis phase. In this phase the feasibility of the project is analyzed, and a business proposal is put forth with a very general plan for the project and some cost estimates. For feasibility analysis, some understanding of the major requirements of the system is essential. Once the business proposal is accepted or the contract is awarded, the development activities begin starting with the requirements analysis phase.
Following topics describes the above mentioned phases: 1. 2. 3. 4. 5. 6. 7. Preliminary Investigation Requirement Analysis / Determination of System's Requirements Design of system Development (coding) of software System Testing Software Maintenance Error distribution with phases
Preliminary Investigation
Fig 2.1 shows different stages in the system's life cycle. It initiates with a project request. First stage is the preliminary analysis. The main aim of preliminary analysis is to identify the problem. First, need for the new or the enhanced system is established. Only after the recognition of need, for the proposed system is done then further analysis is possible.
Suppose in an office all leave-applications are processed manually. Now this company is recruiting many new people every year. So the number of employee in the company has increased. So manual processing of leave application is becoming very difficult. So the management is considering the option of automating the leave processing system. If this is the case, then the system analyst would need to investigate the existing system, find the limitations present, and finally evaluate whether automating the system would help the organization. Once the initial investigation is done and the need for new or improved system is established, all possible alternate solutions are chalked out. All these systems are known as "candidate systems". All the candidate systems are then weighed and the best alternative of all these is selected as the solution system, which is termed as the "proposed system". The proposed system is evaluated for its feasibility. Feasibility for a system means whether it is practical and beneficial to build that system. Feasibility is evaluated from developer and customer's point of view. Developer sees whether they have the required technology or manpower to build the new system. Is building the new system really going to benefit the customer. Does the customer have the required money to build that type of a system? All these issues are covered in the feasibility study of the system. The feasibility of the system is evaluated on the three main issues: technical, economical, and operational. Another issue in this regard is the legal feasibility of the project.
1. Technical feasibility: Can the development of the proposed system be done with current equipment, existing software technology, and available personnel? Does it require new technology? 2. Economic feasibility: Are there sufficient benefits in creating the system to make the costs acceptable? An important outcome of the economic feasibility study is the cost benefit analysis. 3. Legal feasibility: It checks if there are any legal hassle in developing the system. 4. Operational feasibility: Will the system be used if it is developed and implemented? Will there be resistance from users that will undermine the possible application benefits? The result of the feasibility study is a formal document, a report detailing the nature and scope of the proposed solution. It consists of the following:
Statement of the problem Details of findings Findings and recommendations in concise form
Once the feasibility study is done then the project is approved or disapproved according to the results of the study. If the project seems feasible and desirable then the project is finally approved otherwise no further work is done on it.
Requirements Analysis is done in order to understand the problem for which the software system is to solve. For example, the problem could be automating an existing manual process, or developing a completely new automated system, or a combination of the two. For large systems which have a large number of features, and that need to perform many different tasks, understanding the requirements of the system is a major task. The emphasis in requirements Analysis is on identifying what is needed from the system and not how the system will achieve it goals. This task is complicated by the fact that there are often at least two parties involved in software development - a client and a developer. The developer usually does not understand the client's problem domain, and the client often does not understand the issues involved in software systems. This causes a communication gap, which has to be adequately bridged during requirements Analysis.
In most software projects, the requirement phase ends with a document describing all the requirements. In other words, the goal of the requirement specification phase is to produce the software requirement specification document. The person responsible for the requirement analysis is often called the analyst. There are two major activities in this phase - problem understanding or analysis and requirement specification in problem analysis; the analyst has to understand the problem and its context. Such analysis typically requires a thorough understanding of the existing system, the parts of which must be automated. Once the problem is analyzed and the essentials understood, the requirements must be specified in the requirement specification document. For requirement specification in the form of document, some specification language has to be selected (example: English, regular expressions, tables, or a combination of these). The requirements documents must specify all functional and performance requirements, the formats of inputs, outputs and any required standards, and all design constraints that exits due to political, economic environmental, and security reasons. The phase ends with validation of requirements specified in the document. The basic purpose of validation is to make sure that the requirements specified in the document, actually reflect the actual requirements or needs, and that all requirements are specified. Validation is often done through requirement review, in which a group of people including representatives of the client, critically review the requirements specification.
Software Requirement or Role of Software Requirement Specification (SRS)
IEEE (Institute of Electrical and Electronics Engineering) defines as, 1. A condition of capability needed by a user to solve a problem or achieve an objective; 2. A condition or capability that must be met or possessed by a system to satisfy a contract, standard, specification, or other formally imposed document. Note that in software requirements we are dealing with the requirements of the proposed system, that is, the capabilities that system, which is yet to be developed, should have. It is because we are dealing with specifying a system that does not exist in any form that the problem of requirements becomes complicated. Regardless of how the requirements phase proceeds, the Software Requirement Specification (SRS) is a document that completely describes what the proposed software should do without describing how the system will do it?. The basic goal of the
requirement phase is to produce the Software Requirement Specification (SRS), which describes the complete external behavior of the proposed software.
The design activity is often divided into two separate phase-system design and detailed design. System design, which is sometimes also called top-level design, aims to identify the modules that should be in the system, the specifications of these modules, and how they interact with each other to produce the desired results. At the end of system design all the major data structures, file formats, output formats, as well as the major modules in the system and their specifications are decided. During detailed design the internal logic of each of the modules specified in system design is decided. During this phase further details of the data structures and algorithmic design of each of the modules is specified. The logic of a module is usually specified in a high-level design description language, which is independent of the target language in which the software will eventually be implemented. In system design the focus is on identifying the modules, whereas during detailed design the focus is on designing the logic for each of the modules. In other words, in system design the attention is on what components are needed, while in detailed design how the components can be implemented in software is the issue. During the design phase, often two separate documents are produced. One for the system design and one for the detailed design. Together, these documents completely specify the design of the system. That is they specify the different modules in the system and internal logic of each of the modules. A design methodology is a systematic approach to creating a design by application of set of techniques and guidelines. Most methodologies focus on system design. The two basic principles used in any design methodology are problem partitioning and abstraction. A large system cannot be handled as a whole, and so for design it is partitioned into smaller systems. Abstraction is a concept related to problem partitioning. When partitioning is used during design, the design activity focuses on one part of the system at a time. Since the part being designed interacts with other parts of the system, a clear understanding of the interaction is essential for properly designing the part. For this, abstraction is used. An abstraction of a system or a part defines the overall behavior of the system at an abstract level without giving the internal details. While working with the part of a system, a designer needs to understand only the abstractions of the other parts with which the part being designed interacts. The use of abstraction allows the
designer to practice the "divide and conquer" technique effectively by focusing one part at a time, without worrying about the details of other parts. Like every other phase, the design phase ends with verification of the design. If the design is not specified in some executable language, the verification has to be done by evaluating the design documents. One way of doing this is thorough reviews. Typically, at least two design reviews are held-one for the system design and one for the detailed and one for the detailed design.
An important concept that helps the understandability of programs is structured programming. The goal of structured programming is to arrange the control flow in the program. That is, program text should be organized as a sequence of statements, and during execution, the statements are executed in the sequence in the program. For structured programming, a few single-entry-single-exit constructs should be used. These constructs includes selection (if-then-else), and iteration (while - do, repeat - until etc). With these constructs it is possible to construct a program as sequence of single - entry - single - exit constructs. There are many methods available for verifying the code. Some methods are static in nature that is, that is they do not involve execution of the code. Examples of such methods are data flow analysis, code reading, code reviews, testing (a method that involves executing the code, which is used very heavily). In the coding phase, the entire system is not tested together. Rather, the different modules are tested separately. This testing of modules is called "unit testing". Consequently, this phase is often referred to as "coding and unit testing". The output of this phase is the verified and unit tested code of the different modules.
System Testing
Testing is the major quality control measure employed during software development. Its basic function is to detect errors in the software. During requirement analysis and design, the output is a document that is usually textual and non-executable. After the coding phase, computer programs are available that can be executed for testing phases. This implies that testing not only has to uncover errors introduced during coding, but also errors introduced during the previous phases. Thus, the goal of testing is to uncover requirement, design or coding errors in the programs.
Consequently, different levels of testing are employed. The starting point of testing is unit testing. In this a module is tested separately and is often performed by the coder himself
simultaneously with the coding of the module. The purpose is to execute the different parts of the module code to detect coding errors. After this the modules are gradually integrated into subsystem, which are then integrated themselves eventually form the entire system. During integration of modules, integration testing is performed. The goal of this testing is to detect design errors, while focusing on testing the interconnection between modules. After the system is put together, system testing is performed. Here the system is tested against tech system requirements to see if all the requirements are met and the system performs as specified by the requirements. Finally, acceptance testing is performed to demonstrate to the client, on the real life data of the client, the separation of the system. For testing to be successful, proper selection of test cases is essential. There are two different approaches to selecting test cases-functional testing and structural testing. In functional testing the software for the module to be tested is treated as black box, and then test cases are decided based on the specifications of the system or module. For this reason, this form of testing is also called "black box testing". The focus is on testing the external behavior of the system. In structural testing the test cases are decided based on the logic of the module to be tested. Structural testing is sometimes called "glass box testing". Structural testing is used for lower levels of testing and functional testing is used for higher levels. Testing is an extremely critical and time-consuming activity. It requires proper planning of the overall testing process. Frequently the testing process starts with the test plan. This plan identifies all the testing related activities that must be performed and specifies the schedule, allocates the resources, and specify guidelines for testing. The test plan specifies manner in which the modules will integrate together. Then for different test units, a test case specification document is produced, which lists all the different test cases, together with the expected outputs, that will be used for testing. During the testing of the unit, the specified test cases are executed and actual result is compared with the expected output. The final output of the testing phases is to the text report and the error report, or set of such reports (one of each unit is tested). Each test report contains the set of such test cases and the result of executing the code with these test cases The error report describes the errors encountered and action taken to remove those errors.
It is generally agreed that for large systems, removing all the faults before delivery is extremely difficult and faults will be discovered long after the system is installed. As these faults are detected, they have to be removed. Maintenance activities related to fixing of errors fall under corrective maintenance.
Removing errors is one of the activities of maintenance. Maintenance also needed due to a change in the environment or the requirements of the system. The introduction of a software system affects the work environment. This change in environment often changes what is desired from the system. Furthermore, often after the system is installed and the users have had a chance to work with it for sometime, requirements that are not identified during requirement analysis phase will be uncovered. This occurs, since the experience with the software helps the user to define the needs more precisely. There might also be changes in the input data, the system environment and output formats. All these require modification of the software. The maintenance activities related to such modification fall under adaptive maintenance. Maintenance work is based on existing software, as compared to development work, which creates new software. Consequently maintenance resolves around understanding the existing software and spares most of their time trying to understand the software that they have to modify. Understanding the software involves not only understanding the code, but also the related documents. During the modification of the software, the effects of the change have to be clearly understood by the maintainer since introducing undesired side effects in the system during modification is easier. To test whether those aspects in the system that are not supposed to be modified are operating as they were before modification, regression testing is done. Regression testing involves executing old test cases to test that no new errors have been introduced. Thus, maintenance involves understanding the existing software (code and related documents), understanding the effects of change, making the changes - both to the code and documents, testing the new parts (changes), and resetting of the old parts that were not changed. Since often during development, needs of the maintainers are not kept in mind, little support documents are produced during development to aid the maintainer. The complexity of the maintenance task is coupled with the neglect of maintenance concerns during development which makes maintenance the most cost effective activity in the life of a software product.
Since maintenance depends critically on the software characteristics that are decided during development, maintenance cost can be reduced if maintenance concerns are kept in forefront during development. One of the reasons why this is often not done is that the development cost is done by the developers while maintenance is often done by the users. Hence, the developers do not have much incentive for increasing the development effort in order to reduce the maintenance cost. However, for reduction in overall cost of software, it is imperative that the software be developed so the maintenance is easy. The development cost, a typical distribution of effort with the different phases is Requirement - 10% Design - 20% Coding - 20% Testing - 50% The exact number will differ with organization and the type of the project. There are some observation we can make from the data given above. The first is that the goal of design and coding should reduce the cost of design and coding, but should be to reduce the cost of testing and maintenance, at the expense of increasing design and coding cost. Both testing and maintenance depend heavily in the design and coding of the software. And these costs can be considerably reduced if the software is designed and coded to make testing and maintenance easier. Therefore, during design and implementation, the issues in our minds should be "can the design be easily tested", and "can it be easily modified". These require alternate designs and may increase the cost of the design and coding. But this additional costs pay dividends in the later phases.
In a software development effort the goal is to produce high quality software. The development process is, therefore, the sequence of activities that will produce such software. A software development life cycle model is broken down into distinct activities. A software development life cycle model specifies how these activities are organized in the entire software development effort. We discuss each software development life cycle model in detail. 1. 2. 3. 4. Waterfall Software Development Life Cycle Model Prototyping Software Development Life Cycle Model Iterative Enhacement Model The Spiral Model
The design starts after the requirements analysis is done. And coding begins after the design is done. Once the programming is completed, the code is integrated and testing is done. On successful completion of testing, the system is installed. After this the regular operation and maintenance of the system takes place. The following figure demonstrates the steps involved in waterfall life cycle model.
The Waterfall Software Life Cycle Model With the waterfall model, the activities performed in a software development project are requirements analysis, project planning, system design, detailed design, coding and unit testing, system integration and testing. Linear ordering of activities has some important consequences. First, to clearly identify the end of a phase and beginning of the others. Some certification mechanism has to be employed at the end of each phase. This is usually done by some verification and validation. Validation means confirming the output of a phase is consistent with its input (which is the output of the previous phase) and that the output of the phase is consistent with overall requirements of the system. The consequences of the need of certification is that each phase must have some defined output that can be evaluated and certified. Therefore, when the activities of a phase are completed, there should be an output product of that phase and the goal of a phase is to produce this product. The outputs of the earlier phases are often called intermediate products or design document. For the coding phase, the output is the code. From this point of view, the output of a software project is to justify the final program along with the use of documentation with the requirements document, design document, project plan, test plan and test results. Another implication of the linear ordering of phases is that after each phase is completed and its outputs are certified, these outputs become the inputs to the next phase and should not be changed or modified. However, changing requirements cannot be avoided and must be faced. Since changes performed in the output of one phase affect the later phases, that might have been performed. These changes have to made in a controlled manner after evaluating the effect of
each change on the project.This brings us to the need for configuration control or configuration management. The certified output of a phase that is released for the best phase is called baseline. The configuration management ensures that any changes to a baseline are made after careful review, keeping in mind the interests of all parties that are affected by it. There are two basic assumptions for justifying the linear ordering of phase in the manner proposed by the waterfall model. For a successful project resulting in a successful product, all phases listed in the waterfall model must be performed anyway. Any different ordering of the phases will result in a less successful software product.
Except for the last one, these are all the outputs of the phases. In order to certify an output product of a phase before the next phase begins, reviews are often held. Reviews are necessary especially for the requirements and design phases, since other certification means are frequently not available. Reviews are formal meeting to uncover deficiencies in a product. The review reports are the outcome of these reviews.
2. 3.
Easy to explain to the user Stages and activities are well defined Helps to plan and schedule the project
4.
Prototyping is an attractive idea for complicated and large systems for which there is no manual process or existing system to help determining the requirements. In such situations letting the client "plan" with the prototype provides invaluable and intangible inputs which helps in determining the requirements for the system. It is also an effective method to demonstrate the feasibility of a certain approach. This might be needed for novel systems where it is not clear that constraints can be met or that algorithms can be developed to implement the requirements. The process model of the prototyping approach is shown in the figure below.
Prototyping Model The basic reason for little common use of prototyping is the cost involved in this built-it-twice approach. However, some argue that prototyping need not be very costly and can actually reduce the overall development cost. The prototype are usually not complete systems and many of the details are not built in the prototype. The goal is to provide a system with overall functionality. In addition, the cost of testing and writing detailed documents are reduced. These factors helps to reduce the cost of developing the prototype. On the other hand, the experience of developing the prototype will very useful for developers when developing the final system. This experience helps to reduce the cost of development of the final system and results in a more reliable and better designed system.
Advantages of Prototyping
Users are actively involved in the development 2. It provides a better system to users, as users have natural tendency to change their mind in specifying requirements and this method of developing systems supports this user tendency. 3. Since in this methodology a working model of the system is provided, the users get a better understanding of the system being developed. 4. Errors can be detected much earlier as the system is mode side by side. 5. Quicker user feedback is available leading to better solutions.
1.
Disadvantages
1. Leads to implementing and then repairing way of building systems. 2. Practically, this methodology may increase the complexity of the system as scope of the system may expand beyond original plans.
increments provides feedback to the client which is useful for determining the final requirements of the system.
In the first step of iterative enhancement model, a simple initial implementation is done for a subset of the overall problem. This subset is the one that contains some of the key aspects of the problem which are easy to understand and implement, and which forms a useful and usable system. A project control list is created which contains, in an order, all the tasks that must be performed to obtain the final implementation. This project control list gives an idea of how far the project is at any given step from the final system. Each step consists of removing the next step from the list. Designing the implementation for the selected task, coding and testing the implementation, and performing an analysis of the partial system obtained after this step and updating the list as a result of the analysis. These three phases are called the design phase, implementation phase and analysis phase. The process is iterated until the project control list is empty, at the time the final implementation of the system will be available. The process involved in iterative enhancement model is shown in the figure below.
The Iterative Enhancement Model The project control list guides the iteration steps and keeps track of all tasks that must be done. The tasks in the list can be include redesign of defective components found during analysis. Each entry in that list is a task that should be performed in one step of the iterative enhancement process, and should be simple enough to be completely understood. Selecting tasks in this manner will minimize the chances of errors and reduce the redesign work
The next step in the spiral life cycle model is to evaluate these different alternatives based on the objectives and constraints. This will also involve identifying uncertainties and risks involved. The next step is to develop strategies that resolve the uncertainties and risks. This step may involve activities such as benchmarking, simulation and prototyping. Next, the software is developed by keeping in mind the risks. Finally the next stage is planned.
The next step is determined by remaining risks. For example, its performance or user-interface risks are considered more important than the program development risks. The next step may be evolutionary development that involves developing a more detailed prototype for resolving the risks. On the other hand, if the program development risks dominate and previous prototypes have resolved all the user-interface and performance risks; the next step will follow the basic waterfall approach. The risk driven nature of the spiral model allows it to accommodate any mixture of specificationoriented, prototype-oriented, simulation-oriented or some other approach. An important feature of the model is that each cycle of the spiral is completed by a review, which covers all the products developed during that cycle, including plans for the next cycle. The spiral model works for developed as well as enhancement projects.
Quadrant 4: Plan next phases. Although the spiral, as depicted, is oriented toward software development, the concept is equally applicable to systems, hardware, and training, for example. To better understand the scope of each spiral development quadrant, lets briefly address each one.
Quadrant 1: Determine Objectives, Alternatives, and Constraints
Activities performed in this quadrant include: 1. Establish an understanding of the system or product objectivesnamely performance, functionality, and ability to accommodate change. 2. Investigate implementation alternativesnamely design, reuse, procure, and procure/ modify 3. Investigate constraints imposed on the alternativesnamely technology, cost, schedule, support, and risk. Once the system or products objectives, alternatives, and constraints are understood, Quadrant 2 (Evaluate alternatives, identify, and resolve risks) is performed.
Quadrant 2: Evaluate Alternatives, Identify, Resolve Risks
Engineering activities performed in this quadrant select an alternative approach that best satisfies technical, technology, cost, schedule, support, and risk constraints. The focus here is on risk mitigation. Each alternative is investigated and prototyped to reduce the risk associated with the development decisions. Boehm describes these activities as follows: . . . This may involve prototyping, simulation, benchmarking, reference checking, administering user questionnaires, analytic modeling, or combinations of these and other risk resolution techniques. The outcome of the evaluation determines the next course of action. If critical operational and/or technical issues (COIs/CTIs) such as performance and interoperability (i.e., external and internal) risks remain, more detailed prototyping may need to be added before progressing to the next quadrant. Dr. Boehm notes that if the alternative chosen is operationally useful and robust enough to serve as a low-risk base for future product evolution, the subsequent risk-driven steps would be the evolving series of evolutionary prototypes going toward the right (hand side of the graphic) . . . the option of writing specifications would be addressed but not exercised. This brings us to Quadrant 3.
Quadrant 3: Develop, Verify, Next-Level Product
If a determination is made that the previous prototyping efforts have resolved the COIs/CTIs, activities to develop, verify, next-level product are performed. As a result, the basic waterfall approach may be employedmeaning concept of operations, design, development, integration, and test of the next system or product iteration. If appropriate, incremental development approaches may also be applicable.
The spiral development model has one characteristic that is common to all modelsthe need for advanced technical planning and multidisciplinary reviews at critical staging or control points. Each cycle of the model culminates with a technical review that assesses the status, progress, maturity, merits, risk, of development efforts to date; resolves critical operational and/or technical issues (COIs/CTIs); and reviews plans and identifies COIs/CTIs to be resolved for the next iteration of the spiral. Subsequent implementations of the spiral may involve lower level spirals that follow the same quadrant paths and decision considerations
preliminary Analysis
The main objectives of preliminary analysis is to identify the customer's needs, evaluate system concept for feasibility, perform economic and technical analysis, perform cost benefit analysis and create system definition that forms the foundation for all subsequent engineering works. There should be enough expertise available for hardware and software for doing analysis.
How much time should be spent on it? As such, there are no rules or formulas available to decide on this. However, size, complexity, application field, end-use, contractual obligation are few parameters on which it should be decided. Other major question that arises is who should do it. Well an experienced well-trained analyst should do it. For large project, there can be an analysis team. After the preliminary analysis, the analyst should report the findings to management, with recommendations outlining the acceptance or rejection of the proposal.