Only $2.99/month

IS BOOK Ch. 11 Review Questions

Key Concepts:

Terms in this set (12)

Planning:
This is the first phase in the systems development process. It identifies whether or not there is the need for a new system to achieve a businesses' strategic objectives. This is a preliminary plan (or a feasibility study) for a company's business initiative to acquire the resources to build on an infrastructure to modify or improve a service.
Systems Analysis and Requirements: The second phase is where businesses will work on the source of their problem or the need for a change. Functional requirements of a system are considered here. It is also where system analysis takes place - or analyzing the needs of the end users to ensure the new system can meet their expectations.
Systems Design: The third phase describes, in detail, the necessary specifications, features and operations that will satisfy the functional requirements of the proposed system which will be in place. This is the step for end users to discuss and determine their specific business information needs for the proposed system. It's during this phase that they will consider the essential components (hardware and/or software) structure (networking capabilities), processing and procedures for the system to accomplish its objectives.
Development: The fourth phase is where the IT/IS project will be built and programmed. System designers normally assume responsibility of this role. They prepare the new system.
Integration and Testing: The fifth phase involves systems integration and system testing (of programs and procedures) - normally carried out by a Quality Assurance (QA) professional - to determine if the proposed design meets the set of business goals planned in the first phase. Testing may be repeated - to check for errors, bugs and interoperability - until the end user finds it acceptable.
Implementation: The sixth phase involves installment of the newly-developed system. This step puts the project into production. Both system analysts and end-users should now see the realization of the project that has implemented changes.
Operations and Maintenance: The seventh and final phase is maintenance and future changes, if required. This is the step where end users can fine-tune the system, if they wish, to boost performance, add new capabilities to the system or have additional user requirements.
The waterfall model is a sequential (non-iterative) design process, used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, production/implementation and maintenance.
The system development life cycle framework provides a sequence of activities for system designers and developers to follow. It consists of a set of steps or phases in which each phase of the SDLC uses the results of the previous one.

The SDLC adheres to important phases that are essential for developers, such as planning, analysis, design, and implementation, and are explained in the section below. It includes evaluation of present system, information gathering, feasibility study and request approval. A number of SDLC models have been created: waterfall, fountain, spiral, build and fix, rapid prototyping, incremental, synchronize and stabilize. The oldest of these, and the best known, is the waterfall model: a sequence of stages in which the output of each stage becomes the input for the next. These stages can be characterized and divided up in different ways, including the following: Preliminary analysis, Systems analysis, requirements definition, Systems design: Describes desired features and operations in detail, including screen layouts, business rules, process diagrams, pseudocode and other documentation.
Development: The real code is written here.
Integration and testing: Brings all the pieces together into a special testing environment, then checks for errors, bugs and interoperability.
Acceptance, installation, deployment: The final stage of initial development, where the software is put into production and runs actual business.
Maintenance: During the maintenance stage of the SDLC, the system is assessed to ensure it does not become obsolete. This is also where changes are made to initial software. It involves continuous evaluation of the system in terms of its performance.
Evaluation: Some companies do not view this as an official stage of the SDLC, while others consider it to be an extension of the maintenance stage, and may be referred to in some circles as post-implementation review.
The results of this "inspect-and-adapt" approach to development greatly reduce both development costs and time to market. Because teams can develop software at the same time they're gathering requirements, the phenomenon known as "analysis paralysis" is less likely to impede a team from making progress. And because a team's work cycle is limited to two weeks, it gives stakeholders recurring opportunities to calibrate releases for success in the real world.
"Agile Development" is an umbrella term for several iterative and incremental software development methodologies. The most popular agile methodologies include Extreme Programming (XP), Scrum, Crystal, Dynamic Systems Development Method (DSDM), Lean Development, and Feature-Driven Development (FDD).
The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software engineering to describe a process for planning, creating, testing, and deploying an information system. The systems development life-cycle concept applies to a range of hardware and software configurations, as a system can be composed of hardware only, software only, or a combination of both.

The roles and organization structures described in this article are meant to be representative -- your approach may differ slightly because you are in a different situation. But, if you think that your approach needs to be significantly different then you likely haven't yet fully given up on the thinking behind traditional IT roles and are likely putting your agile adoption at risk as a result. Also, this article does not address enterprise-level roles.

Iterative and incremental development are essential parts of the Modified waterfall models, Rational Unified Process, Extreme Programming and generally the various agile software development frameworks.

It follows a similar process to the plan-do-check-act cycle of business process improvement.
The six-step process I outline in this article should help you make the right decision on that next project.

Step 1: Validate the need for technology
Many organizations often choose an enabling technology before identifying any legitimate business need. Sometimes this "cart before the horse" approach is due to rigid business processes, lack of technical knowledge, or pure product hype, which commands many a tech guru's attention. Decision makers are very often awed by product suite success stories, dynamite product demonstrations, and industry analysts' evaluation of technology—even when they haven't formally identified a need for the technology.
Step 2: Identify core business requirements
In large organizations, pinpointing core business requirements is often easier said than done but is nonetheless critical before enabling a business solution. A core business requirement is one that must be supported by the solution to continue. If a requirement can be only partially met or not addressed by a solution, it is not a core requirement.
Step 3: Identify architectural requirements
Most organizations are already using technology to enable their business processes. To reduce the cost of operation and maintenance of this technology, these organizations have established standards to which all solutions must adhere.
Step 4: Examine existing solutions
At this point, a business need has been pinpointed, ROI has been estimated, and both core business and architectural restrictions have been identified. Leaders should now take a good look at existing systems.
Step 5: Do you have in-house skills to support a custom solution?
The major factor that significantly reduces the ROI of a custom solution (and in many cases, ultimately causes the endeavor to fail) is the lack of available personnel with proper skill sets. It takes many skills to design and deploy a business solution that is both scaleable and extensible. Unless one of your business areas is product development