Waterfall System Development Process
Waterfall System Development Process
Security and Control considerations need to be an integral part of the entire system development
process. This approach usually leads to problems that become security vulnerabilities, which can
cause major security breaches resulting in significant legal and system modification expenses. The
following list of security and control requirements:
• Access controls, including controls to authenticate and permit access only to authorized individuals.
• Encryption of electronic customer information, including while in transit or in storage on networks or
systems to which unauthorized individuals may have access.
• Dual control procedures, segregation of duties, and employee background checks for employees with
responsibilities for or access to customer, employee, or organization-sensitive information
• Monitoring systems and procedures to detect actual and attempted attacks on or intrusions into
information systems
• Measures to protect against destruction, loss, or damage of customer, employee, or organization-
sensitive data due to potential environmental hazards, such as fire and water damage, technological
failures, or disasters such as hurricanes and terrorism
• Business resumption procedures to get the system up and running with no major business disruption and
with no loss of data in the event of a disaster (e.g., fire, hurricane, terrorism)
System Performance How well a system performs can be measured through its performance
requirements
5. Identify and Evaluate Alternative Solutions
The analysis team must think creatively and consider several system solution options. By
looking at the problem in new or different ways, questioning current assumptions and the
way things are done today, and removing current constraints and barriers, the team is free to
identify highly creative and effective information system solutions .
The system analysis phase identified areas where system security and controls need to be
defined. During the design phase, designers must develop specific system security and controls
for all aspects of the information system, including hardware, software, database systems,
telecommunications, and Internet operations, as shown in Table. Security considerations involve
error prevention, detection, and correction; disaster planning and recovery; and systems controls.
The goal is to ensure secure systems without burdening users with too many identification
numbers and passwords for different applications. After the controls are developed, they should
be documented in standards manuals that indicate how to implement the controls. The controls
should then be implemented and frequently reviewed. It is common practice to measure how
often control techniques are used and to take action if the controls have not been implemented.
Organizations often have compliance departments to make sure the IS department is adhering to
its systems controls along with all local, state, and federal laws and regulations.
5. Design Disaster Recovery Plan.
• Natural Disasters
9 Flood
9 Tsunami
9 Hurricane/cyclone
9 Earthquake
9 Volcanic eruption
Mission-Critical Process: A process that plays a pivotal role in an organization’s continued
operations and goal attainment.
Hot Site: A duplicate, operational hardware system that is ready for use (or immediate access to
one through a specialized vendor)
Cold Site: A computer environment that includes rooms, electrical service, telecommunications
links, data storage devices, and the like
Cloud computing has added another dimension to disaster recovery planning. If your organization
is hit by a disaster, information systems that are running on the cloud are likely to be operational
and accessible by workers from anywhere they can access the Internet.
Files and databases can be protected by making a copy of all files and databases changed during
the last few days or the last week, a technique called:
Incremental backup. This approach to backup uses an Image log, which is a separate file that
contains only changes to applications or data. Whenever an application is run, an image log is
created that contains all changes made to all files. If a problem occurs with a database, an old
database with the last full backup of the data, along with the image log, can be used to re-create
the current database.
6. Design Database
The database provides a user view of data and makes it possible to add and modify data, store and
retrieve data, manipulate the data, and generate reports. One of the steps in designing a database
involves “telling” the database management system (DBMS) the logical and physical structure of
the data and the relationships among the data for each user. Recall that this description is called
a schema, and it is entered into the DBMS using a data definition language. A data definition
language (DDL) is a collection of instructions and commands that define and describe data and
relationships in a specific database.
System design concludes with a formal system design report summarizing the findings of this
phase of the project. Any changes from the system analysis findings are highlighted and
explained. The table of contents for a typical system design report. This report is a more complete
and detailed version of the system investigation report.
The system design report is presented to the project steering team with a recommendation to stop,
revise, or go forward with the system development project. The steering team carefully reviews
the recommendations because if the project is to proceed, considerable human and financial
resources will be committed and legally binding vendor contracts will be signed. Following the
steering team meeting, the project team incorporates the recommendations and changes suggested
into the final report.
Construction
system construction: The phase of system development that converts the system design into an
operational system by acquiring and installing hardware and software, coding and testing software
programs, creating and loading data into databases, and performing initial program testing.
An organization also needs useful software documentation to accompany the software code.
Technical Documentation includes written details that computer operators follow to execute the
program and that analysts and programmers use to solve problems or modify the program.
Technical documentation explains the purpose of every major piece of computer code. It also
identifies and describes key variables.
User Documentation is developed for the people who use the system. In easy-to-understand
language, this type of documentation shows how the program can and should be used to perform
user tasks. Linx Software produces LinxCRM, a customer relationship management system. The
company implemented special software to help it create high-quality user documentation
including annotated screen shots from the system. Linx also created a video to help train users
2. Create and Load Data
For many projects, considerable time and effort is expended in
creating and loading a new database.
1. User Preparation
User preparation is the process of readying managers, decision makers, employees, system users,
and stakeholders to accept and use the new system
2. Site Preparation
Site Preparation : A location for the hardware associated with the new system needs to be
prepared. For a small system, site preparation can be as simple as rearranging the furniture in an
office to make room for a computer. The computer and associated hardware in a larger system
might require special wiring, air conditioning, or construction. A special floor, for example,
might have to be built and cables placed under it to connect the various computer components,
and a new security system might be needed to protect the equipment. The project team needs to
consider the amount of site preparation that may be necessary and build sufficient lead time into
the schedule to allow for it.
3.Installation
Installation is the process of physically placing the computer equipment on the site and making
it operational. Although normally the manufacturer is responsible for installing computer
equipment, someone from the organization (usually the IS manager) should oversee the
process, making sure that all equipment specified in the contract is installed at the proper
location. After the system is installed, the manufacturer performs several tests to ensure that
the equipment is operating as it should.
4. Cutover
Cutover is the process of switching from an old
information system to a replacement system. Cutover is
critical to the success of the organization; if not done
properly, the results can be disastrous.
System cutover strategies. Organizations can follow one
of several cutover strategies:
• Pilot start-up: A cutover strategy that involves running the complete new system for one
group of users rather than for all users.
• Parallel start-up: A cutover strategy that involves running both the old and new systems for
a period of time and closely comparing the output of the new system with the output of the
old system; any differences are reconciled. When users are comfortable that the new system
is working correctly, the old system is eliminated.
System Operation and Maintenance
The steps involved in system operation and maintenance are: Operation, Maintenance,
and Disposal
System Operation involves the use of a new or modified system under all kinds of
operating conditions. Getting the most out of a new or modified system during its
operation is the most important aspect of system operations for many organizations.
Monitoring: Is the process of measuring system performance by tracking the number of
errors encountered, the amount of memory required, the amount of processing or CPU
time needed, and other performance indicators. If a particular system is not performing
as expected, it should be modified or a new system should be developed or acquired .
System performance products can measure all components of an information system,
including hardware, software, database, and network systems.
System Review: Is the process of analyzing a system to make sure it is
operating as intended. System review often compares the performance and
benefits of the system as it was designed with the actual performance
and benefits of the system in operation.
Maintenance
System Maintenance is a stage of system development that involves changing and enhancing
the system to make it more useful in achieving user and organizational goals. Reasons for
program maintenance include the following:
• Poor system performance, such as slow response time for frequent transactions
• Changes in business processes
• Changes in the needs of system stakeholders, users, and managers
• Bugs or errors in the program
• Technical and hardware problems
• Corporate mergers and acquisitions
• Changes in government regulations
• Changes in the operating system or hardware on which the application runs
The maintenance process can be especially difficult for older software. A legacy system is an old
system, which might have cost millions of dollars to develop, patch, and modify over the years.
The maintenance costs for legacy systems can become quite expensive, and, at some point, it
becomes more cost effective to switch to new programs and applications than to repair and
maintain the legacy system.
System-maintenance efforts
This chart shows the relative amount of change
and effort associated to test and implement
slipstream upgrades, patches, releases, and
versions
Slipstream Upgrade: A minor system upgrade-typically a code adjustment or minor bug fix; it
usually requires recompiling all the code, and in so doing, it can create entirely new bugs.
Patch: A minor system change to correct a problem or make a small enhancement; it is usually
an addition to an existing program.
Release: A significant program change that often requires changes in the documentation of the
software.
Version: A major program change, typically encompassing many new features
Disposal
System Disposal: A stage of system development that involves those activities that ensure the
orderly dissolution of the system, including disposing of all equipment in an environmentally
friendly manner, closing out contracts, and safely migrating information from the system to
another system or archiving it in accordance with applicable records management policies.
The steps involved in system disposal
1. Communicate intent.
2. Terminate contracts.
3. Make backups of data.
4. Delete sensitive data.
5. Dispose of hardware.
Communicate Intent A memo communicating the intent to terminate the information system
should be distributed to all key stakeholders, months in advance of the actual shutdown. This
ensures that everyone is aware of the shutdown and allows time for them to convert to the new
system or process replacing the terminated system. For example, the Microsoft Windows XP
operating system was released in 2001. Microsoft announced in September 2007 that it would end
support of this popular operating system in April 2014.
Terminate Contracts The various vendors who provide hardware, software, or services
associated with the information system must be notified well in advance to avoid any penalty fees
associated with abrupt termination of a contract.
Make Backups of Data Prior to deleting files associated with the system, backup copies of data
must be made according to the organization’s records management policies.
Delete Sensitive Data Extreme care must be taken to remove customer, employee, financial,
and company-sensitive data from all computer hardware and storage devices before disposing
of it. When a file is deleted, the bits and pieces of the file physically stay on a computer hard
drive until they are overwritten, and they can be retrieved with a data recovery program. To
remove data from a hard drive permanently, the hard drive needs to be wiped clean. The
program used should overwrite or wipe the hard drive several times. An alternative is to
remove the hard drive and physically destroy it.
Dispose of Hardware After backing up and then removing data from drives, members of the
project team can dispose of obsolete or damaged computer hardware. Governments,
environmental agencies, and leading hardware manufacturers are attempting to reduce
hazardous materials in electronic products; however, some hardware components still contain
materials that are toxic to the environment. Responsible disposal techniques should be used
regardless of whether the hardware is sold, given away, or discarded. Many computer
hardware manufacturers including Dell and HP have developed programs to assist their
customers in disposing of old equipment.
User Acceptance Testing for New Accounting System
You are a member of the finance and accounting organization of a midsized sporting goods
retailer. You are knowledgeable of all facets of your firm’s current accounting systems and have
been working in accounts receivable for the past three years. The firm is implementing a new
cloud-based accounting system to handle general ledger, accounts payable, accounts receivable,
and payroll tasks. You have been selected to plan and lead the user acceptance testing for the
accounts receivable portion of the system. This will be a full-time activity for you over the
next two-to-three months, and during that time, other employees will fill in to take care of most
of your day-to-day responsibilities.