ITEC 370 Lecture 22 Maintenance Review • Questions? • Project update on F, next F give prototype demonstration • Interface testing – Checklist of design features – Users Maintenance Objectives • Maintenance – What do you do once it is delivered??? Maintenance Fin • Congrats, you just delivered your product Maintenance Now what • Decide on the style of maintenance you want to follow • Reactive • Proactive Maintenance Reactive • Status quo and keeping it • Only react when a client requests a fix – Corrective maintenance • Benefits – Less attention required to details – Retraining less of an issue • Downsides – Not good for publicity of product – Miss opportunities Maintenance Example • DGL – software created for my dissertation • Used by NIST / VT on a daily basis for 5+ years • No new major development for 5+ years • Bug fixes when a particular problem occurs with an application • No new adopters Maintenance When • Good for when clients are not apt to change – Expensive retraining • Manufacturing lines • Call centers • You don’t have the resources to do anymore than is necessary • Buggy updates are bad… Maintenance Active • Anticipate what is coming down the road • New software versions and compatibility – Preventative maintenance • Competitors products • Improve on what you currently have – Graphics card drivers Maintenance iOS software • App store provides millions of users a chance to find software that smaller developers probably wouldn’t ever have been able to put in front of users – AngryBirds anyone? • Requires a lengthy “validation” by Apple beforehand • Apple changes their platform constantly Maintenance Betting on maintenanc e • World of Warcraft – November 23rd 2004 • Team Fortress 2 – Since 2007, would you like a hat with that? – Halloween themed levels Maintenance Numbers • Typically – 25% Adaptive – 20% Corrective – 55% Preventative • In other words, time moves on and so must your software Maintenance Lehman’s laws • • • • • • Continuing change Increasing complexity Conservation of familiarity Continuing growth Declining quality Feedback system Maintenance Environmen ts • Remember the user’s environment may be different than what you use • Remember your environment’s quirks • Remember staging is your best friend Maintenance Update testing • • • • Remember, change causes issues Deleting/corrupting user data Clean install Over-write information – Do you force an overwrite? – Only update the pieces needed? Maintenance Review • Reactive • Active Maintenance