190 likes | 322 Views
The Maintenance Process. Steve Chenoweth CSSE 375, Rose-Hulman Based on Don Bagert’s 2006 Lecture. Today. Friday’s lab – How’d it go? Project assignments & what to do next – questions? Tomorrow’s class – Tori HW2 – Thurs Maintenance process - this. Outline. Short Review
E N D
The Maintenance Process Steve Chenoweth CSSE 375, Rose-Hulman Based on Don Bagert’s 2006 Lecture
Today • Friday’s lab – How’d it go? • Project assignments & what to do next – questions? • Tomorrow’s class – Tori • HW2 – Thurs • Maintenance process - this
Outline • Short Review • Maintenance Process Models • Quick-fix • Boehm’s • Osborne’s • Iterative • Reuse
Software Maintenance Framework Components • User Requirements • Organizational Environment • Operational Environment • Maintenance Process • Software Product • Maintenance Personnel
Maintenance Process(extended to real life) Ingredients of such a process (in general, Steve’s experience): • Processing requests before starting to work on them, like: • Capturing maintenance requests • Investigating those requests – like testing to verify a bug and decide how hard to fix it • Deciding the time / cost to do, getting customer ok • Prioritizing requests – versus other requests! • Assigning to a sub-team to do • Coding and documenting (as per standards) • Testing with various configurations, other legacy code issues • Deciding to send it out (special, or in which sub-release)
An example… • Note the amount of “pre-fixing” & other communication activity! From http://www.indiawebdevelopers.com/CustomerSupport/maintenance_process.asp.
Another example… • Ditto… From http://www.stsc.hill.af.mil/crosstalk/1997/07/stark1.gif.
Basic Strategies for Software Enhancement(one more review topic) • New versions coming out at regular intervals • Ongoing (technical) support – between or instead of releases
The Theoretical Maintenance Process Models Varying sophistication…
Quick-Fix • Advantages • Fast • Can be useful for small projects • Disadvantages • Little or no documentation • Any design becomes less useful over time
Boehm’s • Advantages • Controlled process • Emphasis on feedback • Disadvantage • Slower than quick-fix
Osborne’s • Advantages • Involves all life-cycle phases • Documentation is updated • Disadvantages • Complicated • Lots of Overhead
Iterative • Advantages • Relatively simple • Allows for analysis • Disadvantage • Management decisions are not explicitly included • Appears informally to be on a tilt!
Reuse • Advantages • Can use components from other projects • Code is modular • Disadvantages • Overhead in designing for reuse
Quiz Exercise! Do in small groups…
Steve’s alternative Maintenance process model… • Self-improvement, a 12-step approach (only 6 shown):