Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Systems development life cycle
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Phases == {{No footnotes|section|date=January 2023}} === System investigation === During this step, current priorities that would be affected and how they should be handled are considered. A [[feasibility study]] determines whether creating a new or improved system is appropriate. This helps to estimate costs, benefits, resource requirements, and specific user needs. The feasibility study should address [[Feasibility study#Operational feasibility study|operational]], [[Feasibility study#Financial feasibility|financial]], [[Feasibility study#Technical feasibility|technical]], human factors, and [[Feasibility study#Legal feasibility|legal/political]] concerns. === Analysis === The goal of [[analysis]] is to determine where the problem is. This step involves decomposing the system into pieces, analyzing project goals, breaking down what needs to be created, and engaging users to define requirements. === Design === In [[systems design]], functions and operations are described in detail, including screen layouts, business rules, process diagrams, and other documentation. Modular design reduces complexity and allows the outputs to describe the system as a collection of subsystems. The design stage takes as its input the requirements already defined. For each requirement, a set of design elements is produced. Design documents typically include functional hierarchy diagrams, screen layouts, business rules, process diagrams, pseudo-code, and a complete [[data model]] with a [[data dictionary]]. These elements describe the system in sufficient detail that developers and engineers can develop and deliver the system with minimal additional input. === Testing === The code is tested at various levels in [[software testing]]. Unit, system, and user acceptance tests are typically performed. Many approaches to testing have been adopted. The following types of testing may be relevant: * [[Model-based testing|Path testing]] * [[Test data|Data set testing]] * [[Unit testing]] * [[System testing]] * [[Integration testing]] * [[Black-box testing]] * [[White-box testing]] * [[Regression testing]] * [[Automation testing]] * [[User acceptance testing]] * [[Software performance testing]] === Training and transition === Once a system has been stabilized through testing, SDLC ensures that proper training is prepared and performed before transitioning the system to support staff and end users. Training usually covers operational training for support staff as well as end-user training. After training, systems engineers and developers transition the system to its production environment. === Operations and maintenance === [[Software maintenance|Maintenance]] includes changes, fixes, and enhancements. === Evaluation === The final phase of the SDLC is to measure the effectiveness of the system and evaluate potential enhancements.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)