Presentation is loading. Please wait.

Presentation is loading. Please wait.

Gio Wiederhold CS446 Maint --1 CS446 Maintenance Gio Wiederhold.

Similar presentations


Presentation on theme: "Gio Wiederhold CS446 Maint --1 CS446 Maintenance Gio Wiederhold."— Presentation transcript:

1 Gio Wiederhold CS446 Maint --1 CS446 Maintenance Gio Wiederhold

2 Gio Wiederhold CS446 Maint --2 What is Maintenance ? Definition: Unscheduled tasks to fix 4errors in software (after delivery, often induced by growth in scope) 4adapt to externally imposed changes (tax laws, regulations, interfaces, customer expectations, …) 4adapt to internally imposed changes (mergers, corporate reorganization, new product lines,...) Crucial leverage: –70-90% of system costs are SW-maintenance If maintenance costs can decrease 25% we double our capability to develop innovative products If maintenance costs increase by 25% we loose any capability for innovation –Affected by architectural paradigm changes s M I

3 Gio Wiederhold CS446 Maint --3 Maintenance as a Strategy Good BENEFIT/COST wrt customer sBenefit is maximal relevant information, requires constant updating tManage cost of change, don’t change system architecture, interfaces We expect SW to be adapatable –enables change, growth –long liftetimes –regular, high maintenance Costs –initial –maintenance (70-90% for SW) long lifetime long lifetime low depreciation  1 / lifetime high maintenance cost

4 Gio Wiederhold CS446 Maint --4 Maintenance is good for you automobile hardware software 5y 17% 20%/y 3y 9% 33%/y 15y 80% 7%/y 5y 17% 20%/y 3y 9% 33%/y 15y 80% 7%/y total 23.4%/ y total 16%/y total 12.3%/ y relative annual maintenance cost depreciation / year = 1 / lifetime 100% 40 0 20 70 30 10 80 90 60 50 lifetime years 10 years 10 4 2 7 3 1 8 9 6 5 13 11 12 ?

5 Gio Wiederhold CS446 Maint --5 Cost Components : Determining what to fix clear architecture good - as built - documentation Fixing it experienced people -- often authors are gone Testing see prior presentation, even a higher %tage

6 Gio Wiederhold CS446 Maint --6 Maintenance & Architecture Integrated –central responsibility –many hidden linkages distributed –remote responsibilities –many visible links client-server ? better structure Same maintenance complexity

7 Gio Wiederhold CS446 Maint --7 Growing Systems: n modules Federated: deal with many servers and clients Fast build by resource reuse changes (x) are difficult affect many clients ¶ · ¸ ¸ ¸ ¸ ¸ ¶ ·

8 Gio Wiederhold CS446 Maint --8 Systems with Mediators Applications.... Mediators...... Data Resources... Gio Wiederhold. 1995

9 Gio Wiederhold CS446 Maint --9 Functional Service Layers Service Serviceinterface Resource access interface interface User interface Real-world interface interface Human-computer Interaction Interaction Application- specific code specific code Domain- specific specific code code Source- specific specific code code MEDIATION Services Services Available Sources Client

10 Gio Wiederhold CS446 Maint --10 Growth through Reuse New Application Prior & Revised Mediators Extended Data Resources Gio Wiederhold. 1995

11 Gio Wiederhold CS446 Maint --11 Incremental Maintenance 1. New/Revised application neeeds more data 2. Mediator isolates other applications 3. New application checks out data and function 4. Other applications can join when feasible versus 1. New/Revised application neeeds more data 2. Determine affected applications 3. Change affected codes, create test scaffolding 4. Plan for system-wide release at half-year cycle 5. Batch all other changes for that cycle 6. Perform critical, risky release of batch

12 Gio Wiederhold CS446 Maint --12 Mediated = linear O(n) Cost of Growth-- else O(n 2 ) Incremental change is enabled : - versus batching many changes delay, risk Applications only use some mediators ; Data changes only affect some mediators; only in their domain 1. Prior version mediators can supply old information to n-1 prior applications 2. New version mediators provide better information to the new application 3. New applications, using the new version mediators, can be developed and inserted dynamically 4. Old applications can be updated to use new mediators when they are ready  2 7 In time, the old version mediators become superfluous

13 Gio Wiederhold CS446 Maint --13 Maintenance requires assignment of responsibility Client ? Application Interface Resource Interfaces Owner / Creator Maintainer Lessor - Seller Advertiser Changes of user needs Domain changes Models, programs, rules, caches,... Software & People Resource changes Server ?

14 Gio Wiederhold CS446 Maint --14 Assigning Maintenance Responsibility a. Source data quality – supplier database, files, or web pages b. Interface to the source – wrapper, supplier or vendor for supplier c. Source selection – expert specialist in mediator d. Source quality assessment – customer input to mediator e. Semantic interoperation – specialist group providing input to the mediator f. Consistency and metadata information – mediator service operation or warehouse g. Informal, pragmatic integration – client services with customer input h. User presentation formats – client services with customer input Services Sources Customers

15 Gio Wiederhold CS446 Maint --15 New Metrics Productivity Lines of code  Time to asssemble a product Time to Update Product Several years  3/6 months Satisfaction of System Administrator  Customer –-- missing: Performance based on Detailed data  Component / Service specs

16 Gio Wiederhold CS446 Maint --16 New Role for Consultants Old Used at Design Time and To Explain Failures Future Available as a Service Responsible for Interoperation Maintenance

17 Gio Wiederhold CS446 Maint --17 Summary Maintenance is a high cost item Cost is incurred over many years if the product is successful often by different people, org’s Should be planned for in architectural decisions in responsibility assignment Good maintenance has a high value and high leverage

18 Gio Wiederhold CS446 Maint --18 Technology Transition. Economic drivers have to be considered. Three party model Industry: need-based invention academia: formalization innovators: new technology New Service models provide new Opportunities supply innovative tools to industry supply specialized information to industry I i a

19 Gio Wiederhold CS446 Maint --19 Understanding the other parties Motivation is profit and loss avoidance of Industry: investment -- –payoff to stockholders / retain value / stable Academia: prestige -- (leads to continuing funding) –visibility, not stability or reliability Innovative businesses: leverage -- not sustainable –low downside cost, high upside risk, –change expected and needed Government research: – technology dissemination & shelving service ?

20 Gio Wiederhold CS446 Maint --20 Notes from Stanford OTL SoE inventions –31 % licensed / 29% waiting, 40%dropped –Large companies poor adopters, best are exclusive to startups –Center for Networking has an overll license, pay once + small annual New Licensed Field of Use: EPIC program –excludes software - but same pricing scheme –excluded are already active inventions –inventions co-developed outside of SoE –inventions not pursued by Stanford –base cost for membership 400K or 100K for 5 years –100K non-exclusive license per inventions before patent is granted –200K non-exclusive license per invention after patent is granted –easy access for 6-months –SOE gets base, can distribute to depts. Inventor gets license fees. –objective is better relationships.to large companies –not suitable for startups, small companies

21 Gio Wiederhold CS446 Maint --21 Research economy transfer paths Products Tool suppliers (TS) versus Product suppliers (PS) high-value modest volume Customers Research Government Teaching Taxes high volume people results

22 Gio Wiederhold CS446 Maint --22 Operating Systems Microsoft Windows, personal computer and WS. proprietary product, no obligations to hardware, rapidly adapted to new requirements UNIX, an open systems, consensus and takes time. SUN servers LINUX clients and servers, free, low entry cost …. Mainframe operating systems, little growth expected VMS (COMPAQ) reliable 24 hour / 7 day


Download ppt "Gio Wiederhold CS446 Maint --1 CS446 Maintenance Gio Wiederhold."

Similar presentations


Ads by Google