Term
|
Definition
When too much time is spent documenting project requirements. |
|
|
Term
|
Definition
The process of allowing future system users to try out the new system on their own. Used to locate program failures just prior to program shipment. |
|
|
Term
|
Definition
The famous adage that states: Adding more people to a late project makes the project later. Brooks’s Law is true not only because a larger staff requires increased coordination, but also because new people need training. The only people who can train the new employees are the existing team members, who are thus taken off productive tasks. The costs of training new people can overwhelm the benefit of their contribution. |
|
|
Term
|
Definition
A tool used to help develop computer programs or systems. CASE tools vary in their features and functions. Some such tools address the entire systems development process from requirements to maintenance; others address just the design and implementation phases. |
|
|
Term
|
Definition
A program that generates application code for commonly performed tasks. The idea is to improve developer productivity by having the tool generate as much code as possible. The developer can then add code for application-specific features. |
|
|
Term
Computer-assisted software/systems engineering |
|
Definition
A style of program development that uses a tool, called a CASE tool, to help develop computer programs. A style of program development that uses a tool, called a CASE tool, to help develop computer systems. |
|
|
Term
|
Definition
Whether an IS can be developed within budget. |
|
|
Term
|
Definition
An emerging technique for developing computer programs. Programmers create only features and functions of the new program that they can complete in 2 weeks or less. If many programmers are working on the project, each person’s work must be done in such a way that all their work can be combined and assembled at the end of that period. Users and PQA professionals test the developed code continuously through the process. Three key XP characteristics are: (1) it is customer centric, (2) it uses just-in-time design, and (3) it involves paired programming. |
|
|
Term
|
Definition
A development process whereby developers design, implement, and fix portions of an application, one-by-one, until the entire program has been developed in pieces. This method reduces development challenges by using a divide-and-conquer strategy. |
|
|
Term
Joint application design (JAD) |
|
Definition
A key element of rapid application design. A team of users, developers, and PQA personnel conducts design activities during JAD sessions. JAD came about because developers wanted to incorporate feedback and testing earlier in the development process. Ultimately, developers decided that the best place to get feedback was during design creation. |
|
|
Term
|
Definition
In the context of information systems, (1) to fix the system to do what it was supposed to do in the first place or (2) to adapt the system to a change in requirements. |
|
|
Term
Object-oriented development (OOD) |
|
Definition
A systems development methodology that arose from the discipline of object-oriented programming. OOD develops programs using the object-oriented programming (OOP) techniques. Programs developed using OOP are easier to maintain than those developed using traditional techniques. |
|
|
Term
Object-oriented programming (OOP) |
|
Definition
A discipline for designing and writing computer programs. Programs developed using OOP are easier and cheaper to maintain than those developed using traditional techniques. |
|
|
Term
Organizational feasibility |
|
Definition
Whether an IS fits within an organization’s customer, culture, or legal requirements. |
|
|
Term
|
Definition
The most unconventional characteristic of XP. With it, two programmers work together, side by side, on the very same computer. They look over each other’s shoulders, and they continuously communicate as they program on that single machine. According to XP proponents, studies show that two programmers working in this way can do at least as much work as two programmers working separately, and the resulting program code has fewer errors and is more easily maintained. |
|
|
Term
|
Definition
A type of system conversion in which the new system runs in parallel with the old one for a while. Parallel installation is expensive because the organization incurs the costs of running both systems. |
|
|
Term
|
Definition
A group of fixes for high-priority failures that can be applied to existing copies of a particular product. Software vendors supply patches to fix security and other critical problems. |
|
|
Term
|
Definition
A type of system conversion in which the new system is installed in pieces across the organization(s). Once a given piece works, then the organization installs and tests another piece of the system, until the entire system has been installed. |
|
|
Term
|
Definition
A type of system conversion in which the organization implements the entire system on a limited portion of the business. The advantage of pilot implementation is that if the system fails, the failure is contained within a limited boundary. This reduces exposure of the business and also protects the new system from developing a negative reputation throughout the organization(s). |
|
|
Term
|
Definition
A type of system conversion in which the organization shuts off the old system and starts the new system. If the new system fails, the organization is in trouble: Nothing can be done until either the new system is fixed or the old system is reinstalled. Because of the risk, organizations should avoid this conversion style if possible. Sometimes called direct installation. |
|
|
Term
Product quality assurance (PQA) |
|
Definition
The testing of a system. PQA personnel usually construct a test plan with the advice and assistance of users. PQA test engineers perform testing, and they also supervise user-test activity. Many PQA professionals are programmers who write automated test programs. |
|
|
Term
|
Definition
A mock-up of an aspect of a new system; it could be a mock-up of a form, report, query, or other element of the user interface. |
|
|
Term
Rapid application development (RAD) |
|
Definition
A type of application development pioneered by James Martin. The basic idea is to break up the design and implementation phases of the SDLC into smaller chunks and to design and implement those chunks using as much computer assistance as possible. |
|
|
Term
|
Definition
A CASE tool database that contains documents, data, prototypes, and program code for the software or system under development. |
|
|
Term
|
Definition
Whether IS will be able to be developed on the timetable needed. |
|
|
Term
|
Definition
A large group of fixes that solve low-priority software problems. Users apply service packs in much the same way that they apply patches, except that service packs typically involve fixes to hundreds or thousands of problems. |
|
|
Term
|
Definition
The process of converting business activity from the old system to the new. |
|
|
Term
Systems analysis and design |
|
Definition
The process of creating and maintaining information systems. It is sometimes called systems development. |
|
|
Term
|
Definition
IS professionals who understand both business and technology. They are active throughout the systems development process and play a key role in moving the project from conception to conversion and, ultimately, maintenance. Systems analysts integrate the work of the programmers, testers, and users. |
|
|
Term
|
Definition
The process of creating and maintaining information systems. It is sometimes called systems analysis and design. |
|
|
Term
Systems development life cycle (SDLC) |
|
Definition
The classical process used to develop information systems. These basic tasks of systems development are combined into the following phases: system definition, requirements analysis, component design, implementation, and system maintenance (fix or enhance). |
|
|
Term
|
Definition
Whether existing information technology will be able to meet the needs of a new IS. |
|
|
Term
|
Definition
Groups of sequences of actions that users will take when using the new system. |
|
|
Term
Unified Modeling Language (UML) |
|
Definition
A series of diagramming techniques that facilitates OOP development. UML has dozens of different diagrams for all phases of system development. UML does not require or promote any particular development process. |
|
|
Term
|
Definition
A methodology designed for use with the Unified Modeling Language (UML) that uses use cases that describe the application of a new system. |
|
|
Term
|
Definition
A description of an application of a new system that is used with the Unified Modeling Language (UML) and the Unified Process (UP). |
|
|
Term
|
Definition
Tools used in RAD projects to improve developer productivity. An example is Microsoft’s Visual Studio.Net. |
|
|
Term
|
Definition
The fiction that one phase of the SDLC can be completed in its entirety and the project can progress, without any backtracking, to the next phase of the SDLC. Projects seldom are that simple; backtracking is normally required. |
|
|