🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

ch3 [Compatibility Mode].pdf

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Document Details

SelfRespectLogic5898

Uploaded by SelfRespectLogic5898

Tags

software maintenance information systems system development lifecycle computer science

Full Transcript

Maintaining Information Systems © 2005 by Prentice Hall Learning Objectives  Explain and contrast four types of system maintenance.  Describe factors affecting maintenance costs.  Describe maintenance management issues, including organizational structure, qua...

Maintaining Information Systems © 2005 by Prentice Hall Learning Objectives  Explain and contrast four types of system maintenance.  Describe factors affecting maintenance costs.  Describe maintenance management issues, including organizational structure, quality measurement, change management, and configuration management.  Explain the role of CASE tools for system maintenance. 16-2 © 2005 by Prentice Hall 16-3 © 2005 by Prentice Hall What is Software Maintenance? Software Maintenance: is a very broad activity that includes error corrections, enhancements of capabilities, deletion of obsolete capabilities,and optimization. software maintenance: Modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modiÞed environment.(IEEE standard) 16-4 © 2005 by Prentice Hall What is Software Maintenance? Software Maintenance: The totality of activities required to provide cost-effective support to a software system. Activities are performed during the pre- delivery stage as well as the post-delivery stage”. ISO/ IEC 14764 (2006, p.4), 16-5 © 2005 by Prentice Hall The Process of Maintaining Information Systems Process of returning to the beginning of the SDLC and repeating development steps focusing on system change until the change is implemented Maintenance is the longest phase in the SDLC Four major activities: Obtaining maintenance requests Transforming requests into changes Designing changes Implementing changes 16-6 © 2005 by Prentice Hall Maintenance is like a mini-SDLC 16-7 © 2005 by Prentice Hall Types of System Maintenance Corrective maintenance Changes made to a system to repair flaws in its design, coding, or implementation Adaptive maintenance Changes made to a system to evolve its functionality to changing business needs or technologies Perfective maintenance Changes made to a system to add new features or to improve performance Preventive maintenance Changes made to a system to avoid possible future problems 16-8 © 2005 by Prentice Hall By far, most maintenance is corrective, and therefore urgent and non-value adding. 16-9 © 2005 by Prentice Hall The Cost of Maintenance Many organizations allocate eighty percent of information systems budget to maintenance Factors that influence system maintainability: Latent defects Number of customers for a given system Quality of system documentation Maintenance personnel Tools Well-structured programs 16-10 © 2005 by Prentice Hall A well-documented system is easier to understand, and therefore easier to maintain. 16-11 © 2005 by Prentice Hall Conducting System Maintenance Managing Maintenance Number of people working in maintenance has surpassed number working in development. Three possible organizational structures: Separate  Maintenance group consists of different personnel than development group. Combined  Developers also maintain systems. Functional  Maintenance personnel work within the functional business unit. 16-12 © 2005 by Prentice Hall Advantages and Disadvantages Maintenance Organization Advantages Disadvantages Type Separate Improved system Ignorance of critical and documentation undocumented quality information Combined Maintenance group Less emphasis on knows all about good documentation system Functional Personnel have Limited job mobility vested interest and human or technical resources 16-13 © 2005 by Prentice Hall Assignment of Maintenance Personnel Maintenance work is often viewed negatively by IS personnel. Organizations have historically have rewarded people involved in new development better than maintenance personnel. Organizations often rotate personnel in and out of maintenance roles in order to lessen negative feelings about maintenance. 16-14 © 2005 by Prentice Hall Conducting System Maintenance Measures of Effectiveness Important factors to consider Number of failures Time between each failure Type of failure Mean time between failures (MTBF) A measurement of error occurrences that can be tracked over time to indicate the quality of a system 16-15 © 2005 by Prentice Hall Expect lots of failures early, but as corrective maintenance takes place, error rate should decrease rapidly 16-16 © 2005 by Prentice Hall Controlling Maintenance Requests Maintenance requests can be frequent Prioritize based on type and urgency of request 16-17 © 2005 by Prentice Hall The Flow of a Maintenance Request Evaluations are based on feasibility analysis 16-18 © 2005 by Prentice Hall Configuration Management The process of assuring that only authorized changes are made to the system Baseline modules Software modules that have been tested, documented, and approved to be included in the most recently created version of a system System librarian A person responsible for controlling the checking out and checking in of baseline modules when a system is being developed or maintained Build routines Guidelines that list the instructions to construct an executable system from the baseline source code 16-19 © 2005 by Prentice Hall Configuration Management Tools Special software systems for managing system configuration Controls access to modules in the system library Two types Revision control: modules labeled as frozen (unchangeable) or floating (checked out by programmer for modification) Source code control: extend revision control to all interrelated modules Historical changes can be traced and previous versions can be reconstructed 16-20 © 2005 by Prentice Hall Role of CASE and Automated Development Tools in Maintenance Traditional systems Development with development CASE Emphasis on coding and Emphasis is on design testing. documents. Changes are implemented by coding Changes are and testing first. implemented in design Documentation is done documents. after maintenance is Code is regenerated performed. using code generators. Keeping documentation Documentation is current is often neglected updated during due to time-consuming maintenance. nature of task. 16-21 © 2005 by Prentice Hall Website Maintenance Special considerations 24 X 7 X 365  Nature of continuous availability makes maintenance challenging.  Pages under maintenance can be locked.  Date and time stamps Check for broken links HTML Validation  Pages should be processed by a code validation routine before publication. 16-22 © 2005 by Prentice Hall Website Maintenance Special considerations (continued) Reregistration  When content significantly changes, site may need to be reregistered with search engines Future Editions  Consistency is important to users  Post indications of future changes to the site  Batch changes 16-23 © 2005 by Prentice Hall Summary In this chapter you learned how to:  Explain and contrast four types of system maintenance.  Describe factors affecting maintenance costs.  Describe maintenance management issues, including organizational structure, quality measurement, change management, and configuration management.  Explain the role of CASE tools for system maintenance. 16-24 © 2005 by Prentice Hall

Use Quizgecko on...
Browser
Browser