1 / 19

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)

hrisinger
Download Presentation

Design, Implementation and Maintenance

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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)

  2. 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

  3. System Design Elements • Output design • Reports • Files, transactions • Input design • Screens • Input transactions or files • Processing design • What are the major processing logic and algorithms to be used? • Database and file design • Create the database schema • Define key non-database files

  4. System Design Elements (Con’t) • High level physical design • Telecommunications • What are the detailed network and telecom requirements? • Operations • To run the system, what operational procedures must be put in place? • Control and security • What controls will be required to maintain the security and integrity of the system? • Test Design • A preliminary test plan must be created

  5. 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?

  6. Physical Design Elements (Con’t) • Software Design • Identification of individual programs or program modifications • Design of programs • Specification of inputs and outputs • Specification of critical logical components • Test Design • This is the point where the testing plan must be finalized

  7. Physical Design Elements (Con’t) • Database Design • The detailed specification of the database and any files is done here • Telecommunication Design • Detailed specifications done • Sufficient to procure hardware or contract work • Security and control • Detailed specifications done

  8. Design Phase Checkpoints • Logical and physical designs should be reviewed carefully by all team members • Walkthroughs and reviews of each subsystem • Important for quality and to ensure design consistency • Management Checkpoint • A management checkpoint is critical • Should review all aspects, including cost, ROI and schedule

  9. Construction and Test • Software is written or purchased • Hardware is purchased • All individual components of system are tested • Integrated system is tested • Detailed implementation plans are created and tested • Training takes place

  10. 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

  11. Software Development (Con’t) • Structured programming • Specific techniques regarding naming, use of certain programming constructs • Consistent with structured design • Integrated Development Environments (IDE) • Can significantly improve productivity • Use of program walkthroughs • Peer or senior programmer does detailed examination of code • Less expensive way to find errors than testing

  12. Software Development (Con’t) • Chief programmer teams • Teams organized around a senior programmer or architect • Team includes • Junior programmers • Librarian • Testing specialists • Documentation and training specialists

  13. 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

  14. Testing (Con’t) • 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

  15. 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?

  16. 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 • Phase in by module • Phase in by part of business

  17. 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”

  18. Maintenance (Con’t) • 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 • Estimated effort and cost

  19. Maintenance (Con’t) • 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

More Related