Design, Implementation and Maintenance
Design, Implementation and Maintenance
The lower end of the lifecycle focuses on Detailed logical and technical specification of the system or system changes (Design) The acquisition of hardware and the creation of software (Construction) Getting the new system in the hands of its intended users with minimal business disruption (Implementation) Maintaining the effectiveness of the solution as the business evolves (Maintenance)
System Design
Usual divided into Logical and Physical Logical Design A detailed conceptualization of what the system must do These are the functional requirements of the system Logical design differences from requirements analysis in level of detail and specificity
Physical Design
Specification of the system components necessary to implement the logical design Elements Hardware
If new hardware is required, this is the place to specify it What is the system load going to be and is the existing hardware adequate? What are the storage requirements? Will new networking equipment be required?
5
Test Design This is the point where the testing plan must be finalized
6
Software Development
Structured Design A body of learning about what constitutes good programs
Maintainable Error free
Heuristics
Modular Clearly defined module inputs and outputs, entry and exit points The opposite of spaghetti
10
12
Testing
Must proceed logically from small units to large units Individual programs Subsystems comprised of groups of programs Complete system Implementation testing Stress or load testing
13
Testing (Cont)
Testing must be designed based upon test criteria Test data Must be constructed which will produce all possible outcomes Must ensure that all program paths are exercised Expected results must be documented And obviously compared with actual Testing automation tools exist
14
Implementation
How do I get all of this installed and running? Elements Training people Converting data from old system to new Installing hardware Installing software Go/No go implementation test
Where do we hit a point of no return?
15
Implementation Alternatives
If system is an addition to existing environment, implementation should be simple If system replaces an existing system Big bang approach
Quick, less expensive, more dangerous
16
Maintenance
Maintenance is the base of the iceberg Often, the cost of maintaining a system is 5 times the cost of original acquisition Impact of design on maintenance Well designed and well structured systems are much easier to maintain This means that additional investments during design and construction will yield big benefits during maintenance
You can pay me now or you can pay me later
17
Maintenance (Cont)
Maintenance processes should be managed much like new development Maintenance authorization should be management decision
Use of SR/MR process Categorization of request
Bug fix (level of severity) Enhancement Externally required
Maintenance (Cont)
Maintenance should follow a methodology like new development Requirements analysis Design Code review Test plan and testing Implementation plan This should be scaled to the size of the maintenance System documentation should be maintained as well
19