Computerproject 24
Computerproject 24
Computerproject 24
The System Development Life Cycle as Used in the Construction of the Server Appliance
The systems development life cycle is a project management technique that divides complex
projects into smaller, more easily managed segments or phases. Segmenting projects allows
managers to verify the successful completion of project phases before allocating resources to
subsequent phases.
Software development projects typically include initiation, planning, design, development, testing,
implementation, and maintenance phases. However, the phases may be divided differently
depending on the organization involved.
For example, initial project activities might be designated as request, requirements-definition, and
planning phases, or initiation, concept-development, and planning phases. Endusers of the system
under development should be involved in reviewing the output of each phase to ensure the system
is being built to deliver the needed functionality.
PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE
INITIATION PHASE
The Initiation Phase begins when a business sponsor identifies a need or an opportunity.
Recommend the exploration of alternative concepts and methods to satisfy the need including
questioning the need for technology, ie., will a change in thebusiness process offer a solution?
Assure executive business and executive technical sponsorship. The Sponsor designates a Project
Manager and the business need is documented in a Concept Proposal. The Concept Proposal
includes information about the business process and the relationship to the Agency/Organization.
• Infrastructure and the Strategic Plan. A successful Concept Proposal results in a Project
Management Charter which outlines the authority of the project manager to begin the project.
Careful oversight is required to ensure projects support strategic business objectives and resources
are effectively implemented into an organization's enterprise architecture. The initiation phase
begins whenan opportunity to add, improve, or correct a systemis identified and formally requested
through the presentation of a business case. The business case should, at a minimum, describe a
proposal's purpose, identify expected benefits, and explain how the proposed system supports one
of the organization's business strategies. The business case should also identify alternative solutions
and detail as many informational, functional, and network requirements as possible.
PICTORIAL REPRESENTATION ON SDLC:
PLANNING PHASE
The planning phase is the most critical step in completing development, acquisition, and
maintenance projects. Careful planning, particularly in the early stages of a project, is necessary to
coordinate activities and manage project risks effectively. The depth and formality of project plans
should be commensurate with the characteristics and risks of a given project. Project plans refine
the information gathered during the initiation phase by further identifying the specific activities and
resources required to complete a project.
A critical part of a project manager's job is to coordinate discussions between user, audit, security,
design, development, and network personnel to identify and documentas many functional, security,
and network requirements as possible. During this phase, a plan is developed that documents the
approach to be used and includes a discussion of methods, tools, tasks, resources, project schedules,
and user input. Personnel assignments, costs, project schedule, and target dates are established.
The System Concept Development Phase begins after a business need or opportunity is validated by
the Agency/Organization Program Leadership and the Agency/Organization CIO.
Identify
system interfaces.
Identify basic functional and data requirements to satisfy the business need.
* Establish system boundaries; identify goals, objectives, critical success factors, and performance
measures.
* Evaluate costs and benefits of alternative approaches to satisfy the basic functional requirements
Identify and initiate risk mitigation actions, and Develop high- level technical architecture, process
models, datamodels, and a concept of operations. This phase explorespotential technical solutions
within the context of the business need.
It may include several trade-off decisions such as the decision to use COTS software products as
opposed to developing custom software reusing от software components, or the decision to use an
incremental delivery versus a complete, onetime deployment.
The ITPR must be approved by the State CIO before the project can move forward.
REQUIREMENTS ANALYSIS PHASE
This phase formally defines the detailed functional user requirements using high-level requirements
identified in the Initiation, System Concept, and Planning phases. It also delineates the requirements
in terms of data, system performance, security, and maintainability requirements for the system.
The requirements aredefined in this phase to a level of detail sufficient for systems design to
proceed. They need to be measurable, testable, and relate to the business need or opportunity
identified in the Initiation Phase. The requirements that will be used to determine acceptance of the
system are captured in the Test and Evaluation Master Plan.
➤ Further define and refine the functional and data requirements and document them in the
Requirements Document,
➤ Complete business process reengineering of the functions to be supported (i.e., verify what
information drives the business process, what information is generated, who generates it, where
does the information go, and who processes it),
➤ Develop detailed data and process models (system inputs, outputs, and the process.
➤ Develop the test and evaluation requirements that will be used to determine acceptable system
performance.
DESIGN PHASE
The design phaseinvolves converting the informational, functional, and network requirements
identified during the initiation and planning phases into unified design specifications that developers
use to script programs during the development phase. Program designs are constructed in various
ways. Using a top-down approach, designers first identify and link major program components and
interfaces, then expand design layouts as they identify and link smaller subsystems and connections.
Using a bottom-up approach, designers first identify and link minor program components and
interfaces, then expand design layouts as they identify and link larger systems and connections
Contemporary design techniques often useprototyping tools that build mock-up designs of items
such as application screens, database layouts, and system architectures. End users, designers,
developers, database managers, and network administrators should review and refine the
prototyped designs in an iterative process until they agree on an acceptable design. Audit, security,
and quality assurance personnel should be involved in thereview and approval process. During this
phase, the system is designed to satisfy the functional requirements identified in the previous phase.
Since problems in the design phase could be very expensive to solve in the later stage of the
software development, a variety of elements are considered in the design to mitigate risk. These
include:
•Preparing detailed logic specifications for each software module. The result is a draft System Design
Document which captures the preliminary design for the system.
• Everything requiring user input or approval is documented and reviewed by the user. Once these
documents have been approved by the Agency CIO and Business Sponsor, the final System Design
Document is created to serve as the Critical/Detailed Design for the system.
•This document receives a rigorous review by Agency technical and functional representatives to
ensure that it satisfies thebusiness requirements. Concurrent with the development of the system
design, the Agency Project Manager begins development of the Implementation Plan, Operations
and Maintenance Manual, and the Training Plan.
DEVELOPMENT PHASE
The development phase involves converting design specifications into executable programs.
Effective development standardsinclude requirements that programmers and other project
participants discuss design specifications before programming begins. The procedures help ensure
programmers clearly understand program designs and functional requirements. Programmers use
various techniques to develop computer programs. The large transaction oriented programs
associated with financial institutions have traditionally been developed using procedural
programming techniques. Procedural programming involves the line-by-line scripting of logical
instructions that are combined to form aprogram. Effective completion of the previous stages is a
key factor in the success of the Development phase. The Development phase consists of:
Subsystem integration, system, security, and user acceptance testing is conducted during the
integration and test phase. The user, with thoseresponsible for quality assurance, validates that the
functional requirements, as defined in the functional requirements document, are satisfied by the
developed or modified system. OIT Security staff assess the system security and issue a security
certification and accreditation prior to installation/implementation
Security staff assess the system security certification and accredition prior to
installation/implementation.
Multiple levels of testing are performed, including:
Testing at the development facility by the contractor and possibly supported by end users.
Testing as a deployed system with end users working togetherwith contract personnel
Operational testing by the end user alone performing all functions. Requirements are traced
throughout testing, a final Independent Verification & Validation evaluation is performed and all
documentation is reviewed and accepted prior to acceptance of the system.
IMPLEMENTATION PHASE
This phase isinitiated after the system has been tested and accepted by the user. In this phase, the
system is installed to support the intended business functions. System performance is compared to
performance objectives established during the planning phase. Implementation includes user
notification, user training, installation of hardware, installation of software onto production
computers, and integration of the system into daily work processes. This phase continues until the
system is operating in production in accordance with the defined user requirements.
The system operation is ongoing. The system is monitored for continued performance in accordance
with user requirements and needed system modifications are incorporated. Operations continue as
long as the system can be effectively adapted to respond to the organization's needs. When
modifications or changes are identified, the system may re enter the planning phase.
• Operate, maintain, and enhance the system. Certify that the system can process sensitive
information.
Conduct periodic assessments of the system to ensure the functional requirements continue to be
satisfied.