A survey and critique of the impacts of information technology
The ACM Digital Library is published by the Association for Computing Machinery. Copyright © 2018 ACM, Inc.
The development of new information systems is a complex task and often falters due to unforeseen problems. Despite the tools available for project management, all too many information system projects fail to meet one or more of the criteria for success by being significantly behind schedule, drastically over budget, or by failing to meet the technical specifications of the system. To help ensure the success of an information systems project, it is essential that the project manager be involved in risk management on an on-going basis. In addition to the use of project and risk management tools, it is important to ensure that the project personnel have four types of knowledge: Process, domain, institutional, and cultural. In addition, projects should be monitored for signs of failures so that short- and long-term recovery methods can be applied in a timely manner and projects can meet their goals.
State of the art information technology allows businesses to exchange data and information faster and more accurately than ever before. As advances in information technology continue, the ways that it is combined into information systems that support organizations also proliferate. However, the development of new information systems is a complex task and often falters due to unforeseen problems. By some estimates, although approximately $255 billion is spent every year on the development of information systems in the United Sates, only one third of the projects meet all three criteria of success (i.e., on time, within budget, and technically adequate) while the rest are considered "troubled." Although some reports indicate that the success rate for information systems projects is increasing, project failure is still a major concern. In addition, many information systems projects are becoming increasingly ambitious and complex, so concerns about success continue to be an issue.
System Development -- Project Management
One of the ways to help keep information systems development projects on track is through project management. The art of project control is an often interactive process of keeping the project within technical scope (i.e., not adding work to the project outside that which was originally planned), within the budget negotiated for accomplishment of the project tasks, and moving along according to the predetermined schedule. In addition, project management requires balancing the risks associated with changes in any of these areas and how they affect the accomplishment of the overall goal of the project. This task is accomplished through a constant focus on three major aspects of the development activity: The project and its goals, the process of how these goals are met, and the performance of individuals and organizations to accomplish these goals. If a project is managed well, its goals can be accomplished on-time and within budget, not only giving the organization a profit in the short-term, but enhancing its reputation for good work at a reasonable cost, thereby enhancing its ability to continue to make a profit in the future.
Stages of Information System Development Problem Recognition -- Requirements Determination
There are several stages in the development of information systems. First, before a new business application can be developed, it must be recognized that a new application is needed. During this phase, the problem is defined and investigated and its feasibility is determined. If management decides that the project is feasible and its potential benefits outweigh its risks, a detailed requirements analysis needs to be performed. This analysis comprises a research study in which data are collected and analyzed to determine how best to proceed within the constraints set out by the organization (e.g., constraints of time, budget, personnel, or other resources). The next step in the process is to plan and design the new system. During this step, the requirements determined in the previous phase of the process are translated into design specifications.
Systems Design/Prototype Development
After the preliminary design has been approved, a full-scale, working model of the new system is built. This model -- called a prototype -- is used to help designers clarify the requirements that need to be included in the system. A working prototype can reveal flaws in plans much better than can be done by a review of written requirements. Too often, what looks good on paper can be awkward or untenable in reality. A prototype allows various design features to be tested to see if they will meet the requirements for the system or if the design needs to be changed or refined. Figure 2 shows the steps in prototype development.
Development -- Construction
After the project team has tested the prototype, the next step is to develop a detailed physical design of the application or system. During this step, any necessary modifications revealed by the prototype are made to the design. After the completion of the detailed design, the system is actually developed. During this phase, software and services necessary for the project are acquired either in house or through the purchase of contract labor or off-the-shelf applications. When the code is written, it must also be tested to determine whether or not it meets the requirements of the specifications, performs in a way that users expect it to perform, and detects errors that either stop processing or produce erroneous results. Once the system passes testing, it is implemented in the field. This phase of the project includes training the users in system operation and functions as well as conversion from the old system (if any) to the new system.
To help ensure the success of an information systems project, it is essential that the project manager be involved in risk management on an on-going basis. This requires a risk reporting structure so that those working closely on the at-risk activities can report problems to management in a timely manner and appropriate action can be taken to correct problems. Large information systems projects typically build in periodic formal reviews held between both the contractor and the customer to jointly determine the status of the project and whether or not mid-course corrections are needed. These typically include a preliminary design review (PDR) and critical design review (CDR) as well as a number of smaller reviews depending on the nature and scope of the project.
Preliminary Design Review
The PDR is conducted to determine whether or not the project team understands the preliminary design well enough to start work on a detail design and is attended by representatives of all the significant stakeholders in the project. Some of the issues addressed at PDR include factors driving the system design (e.g., customer requirements, performance, reliability, hardware or software limitations) and their prioritization, tradeoff analyses between performance and costs have been done to determine the most efficient way to meet the requirements of the design specification and to determine the impact of one section of the design on the rest of the product, critique of the design alternatives, discussion of how the system will be tested, and discussions of schedule, milestones, problems, and risks. PDR also may include a live demonstration or other proof-of-concept to support the proposed design.
Critical Design Review
The second major design performed on large hardware or software projects is the critical design review (CDR). This review is conducted before the design is released for manufacturing to make sure that it is at a point where it is good enough to begin implementation. Participants in the CDR are from the same functions as those in the PDR. The CDR may include discussion and justification of any...