Software Development Process
Seven Stages of the Software Development Cycle
- Analysis
- Design
- Implementation
- Testing
- Documentation
- Evaluation
- Maintenance
Analysis
The analyst will investigate and understand the problem They will Interview client to be clear about the problem and develop a software specification:
The software Specification will be a:
- Clear statement of problem
- Basis of legal agreement
- Agreed between analyst and client
The systems analyst will carry out an investigation to get as much information to help develop the software, they will:
- Review and observe the current system in use
- Review all documentation
- Conduct Interviews and/or Issue Questionnaires
Software Specification
The Software Specification is the document produced at the end of the analysis stage
This document contains :
- A detailed description of the features and functions of the program.
- The scope and boundaries of the project.
- A timescale and budget for the project.
Purpose
This will be a general description of the purpose of the software.
Scope
Project scope is the part of project planning that involves determining and documenting a list of specific project goals, deliverables, features, functions, tasks, deadlines, and ultimately costs. In other words, it is what needs to be achieved and the work that must be done
to deliver a project
The scope is a list of the deliverables that the project will hand over to the client/end user.
For example:
- The Design
- Completed program
- Test plan
- Test results
- Evaluation
- It can also include time limits for the project.
Boundaries
The limits that help define the what is in the project and what is not.
It can also clarify any assumptions made by the software developers regarding the clients requirements,
Features and Functions
The features and functions that must be delivered by the system in terms of inputs, processes and outputs.
Examples
Purpose
The purpose of this program is to take 20 pupil names, their prelim marks and their assignment marks from a file. Calculate the percentage, and then find and display the name and percentage of the pupil with the highest percentage.
Scope
This development involves creating a modular program. The deliverables include:
- detailed design of the program structure
- test plan with completed test data table
- working program
- results of testing
- evaluation report
This development work must be completed within 4 hours.
Boundaries
The program will read the pupil data (name, prelim mark and assignment mark) for 20 pupils from a sequential file. The data is accurate, so there is no need to implement input validation.
The pupil with the top mark will be the pupil who has the highest percentage. The only output needed is the name and percentage of the pupil with the highest percentage.
Functional Requirements
These are defined in terms of the inputs, processes and outputs detailed below. All inputs are imported from a sequential file and all outputs displayed on the screen. The program is activated by double clicking on the file icon and then selecting “Run” from the menu. Each process should be a separate procedure or function that is called from the main program.
Inputs: Pupil name
Prelim mark
Assignment mark
Processes: Calculate the percentage for each pupil
Find the name and percentage of the pupil with the highest percentage
Output: Name of the pupil with the highest percentage
The highest percentage