So what is the system development life cycle? It is a collection of system development activities called phases. According to Shelly Cashman's "discovering Computers 2010 most SDLC's contain five phases which are planning, analysis, design, implementation, and Operation (pg 620). To further explain this I have used Cashman's four main activities performed for each phase below.
- Review and approve the project requests
- Prioritize the project requests
- Allocate resources such as money
- Form a project development team for each approved project
 |
http://www.freedigitalphotos.net/images/Business_Concepts_An_g200-Online_Training__p33812.html |
The planning phase of the SDLC is used to create a high level view of the projects and decide what it's goals should be regarding those projects (
http://www.computerworld.com/s/article/71151/System_Development_Life_Cycle). the main activities for the planning phase are fairly self explanatory, they are mostly the same steps any business would take in planning any type of project not just a system development project.
- Conduct a preliminary investigation
- Perform detailed analysis
According to Cashman the "main purpose of the preliminary phase, sometimes called the feasibility study, is to determine the exact nature of the problem or improvement and decide whether it is worth pursuing. After this decision is made the detailed analysis should begin. This involves "three major activities
(1) study how the current system works;
(2) determine the user's wants, needs, and requirements; and
(3) recommend a solution." (pg 631) These two steps of the Analysis phase are just information gathering to ultimately decide if the project should continue and if so how should it continue.
- If necessary acquire hardware and software
- Develop all of the details of the new or modified information system
 |
http://www.photos8.com/search/page/3?q=computer |
The first step of the design phase is to acquire any software or hardware that might be needed to complete the project. This step can be skipped if the hardware or software needed is already present at the organization. The next step is to make detailed plan of the new or modified system in order to "develop designs for the databases, inputs, outputs, and programs."(Cashman Discovering Computers 2010, pg 640
- Develop programs
- Install and test the new system
- Train users
- Convert to the new system
 |
http://www.photos8.com/working_on_apple_laptop-wallpapers.html |
The implementation phase's purpose is to build a new or modified system and then deliver it to the users (Cashman, Discovering Computers 2010, pg 643) This phase consists of creating the program, the trail and error testing, training users, and finally installing or updating the software for users to use.
- Operation, Support, Security
- Perform maintenance activities
- Monitor system performance
- Assess system security
According to Cashman the final phase is to "provide ongoing assistance for an information system and its users after the system is implemented." (pg645) In other words the final phase is basically tech support for the program. This phase is there to assure users that any problems will be fixed and that security of the program and the information inside of it will not be compromised.
 |
http://www.photos8.com/barbed_wire_fence-wallpapers.html |
In other words the system development life cycle or SDLC is the entire process of formal, logical steps taken to develop a software product.(http://www.mks.com/resources/resource-pages/software-development-life-cycle-sdlc-system-development) These steps help ensure the program is implemented on time with minimal errors and support for the users. I hope after reading this blog you can now understand the steps it takes to create a program and the life cycle a program takes.