As you know this blog helps me keep track of things I have learned, and helps burn things into my brain. Today we are going to discuss the seven steps in software development…
The software life cycle was defined as creating a structured, top-down method for the design and implementation of a program. The actual amount of steps varies according to the person describing them, but they always cover the same steps.
- Specify the Requirement
- Data Analysis
- Problem Analysis
The first four steps are very important as it represents the logic of the problem, and can be used to test the execution of the algorithm. This checking of the logic eliminates semantic problems, and allows for the utilization of the pseudocode in many languages. You should have test data ready, and develop a trace table; This can be used to check the output of the program when testing.
1. Specify the requirement: This area is where you describe exactly what you are doing as clear as possible. In this statement you will include the data to be used, and what can be assumed. Also, the desired output and its layout.
2. Data Analysis: List all the variables needed to solve the problem. Utilizing self-documenting (Descriptive of what they represent) variable names is always preferred. This also includes the data type, scope, and documentation for each variable.
3. Problem Analysis: Here you will list each operation necessary to solve the problem at hand. You can also divide the problem into multiple subtasks as needed, and continue until they are specifically stated and easily solved.
4. Algorithm: this clarifies how the problem is to be solved. An algorithm is an effective method for solving a problem expressed as a finite sequence of steps. The algorithm must be written very clearly, as not to cause misinterpretation, and is normally done in pseudocode. The algorithm should, when applied to the problem, solve it in a finite amount of time.
These last three steps allow for the solution to the problem to be entered into a form the computer can work with.
5. Coding: The translation of the algorithm from pseudocode into a programming language. Proper mapping of the code to the algorithm, combined with refining of the pseudocode, should lead to an easy translation to any programming language.
6. Testing: This step requires the use of the data table built with the algorithm. You will run the program, and verify the output for correctness and proper layout. Also, you will validate the code ensuring you requirements have been met and the problem was solved.
7. Maintenance: Updating and testing of the software. Every time the code is updated, it must be tested for correctness.
Feel free to leave a comment with any suggestions/corrections you might have.