Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 551 People, Process, Product and Project. Tailored OO Application Software Reusable Software Vendor Software User Programs Client Personal Computer.

Similar presentations


Presentation on theme: "CS 551 People, Process, Product and Project. Tailored OO Application Software Reusable Software Vendor Software User Programs Client Personal Computer."— Presentation transcript:

1 CS 551 People, Process, Product and Project

2 Tailored OO Application Software Reusable Software Vendor Software User Programs Client Personal Computer Client Workstation Application Server Large Data Server Software Engineering

3 ... SW Library CPU Program Compile Debug Link Load Run CPU 6-18 Months to first release Procedural Programming

4 < 1 Week Type Assets - Assign 5ESS R Filter = = = 5E Dynamic Bonding Activate Create Node - Create Node = = = = = Threshold 5ESS C.Alarm 5E C.Alarm Thres C. Alarm OOD Programming

5 Databases: Key to System Integration l Any meaningful concept of integration must revolve around the objects used by the systems. l Systems are integrated to the degree that they use the same objects. l Objects are not static in either meaning or structure; the problem is to manage these changes, not stop them. l Data do not die when their host system dies. In fact, they grow, becoming integrated with data from other systems.

6 Ten key development processes 1. Pilot before deploying 2. Use experts first 3. Invest $ and time in staff 4. Number of OO Architects = 20% staff 5. Number of Object classes = 0.5% function points 6. Design = 30% development cycle 7. Model performance early and often 8. Buy unit test drivers 9. Assign work by feature teams 10. First release break-even; afterwards 3:1

7 Provisioning Field Support Telephone Equipment How Data Gets Corrupted

8 “…[S]ystems are integrated to the degree that they use the same data.” Robert Curtice “…[D]ata are not static in either meaning or structure [and] the problem is to manage these changes, not stop them.” Daniel S. Appleton

9 Customer Service Requests Network Changes Telephone Equipment Provisioning Field Support Logical Update Loop Customer Records Provisioning Field Support Update Client Application Server Large Data Server Feedback for data integrity

10 Data Actions Data + Actions + Data ++ Actions ++ Data 1 Actions 1 Data 1 + Action 1 + Data 1 ++ Action 1 ++ A1A1 C1C1 B1B1 Benefits Inheritance rippled consistent changes throughout Data and Actions updated “Just-in-Time” Redundant Data Minimized Date & Action Changes A B C Data integrity through objects

11 Robustness 30:1 l It takes three times the effort to find and fix a problem in the test lab then by developers l It takes ten times the test lab effort to find and fix it in the field As of 9/7/06

12 Corporate Network Management Soaring Revenues VIP Content Authoring Customer Care Level 1/2 Gateways IEC Networks L1G Network Provider 1 Network Provider N Hollywood’s Hottest Transactions Processing Shop at Home Broadband Pizza 123 456 789000 John Doe Universal Credit/ Banking WOW!!! Arthur’s Ads James’ Games Content Storage & Retrieval IP Business Model

13 “Testing can show the presence of bugs but not their absence.” E. Dijkstra, inventor of structured programming

14 “Software is only one interpretation of the reality of the problem it is solving.” Jackson “Don’t automate an undisciplined work flow. The computer won’t solve what the customer’s management can’t.” Brooks

15 Functional versus Project organization FunctionalProject  Requirements  Design  Code  Test More efficient because skills are honed. Hard integration and prone to ‘gold plating.’  Customer interface  Program design  Integration  Validation and Verification More effective and more fun.

16 Bugs Where are they? How many are typically found? Do bugs ever go away?

17 Where are Bugs found? Developers’ System Test Customer’s On-Site Test Customer’s Acceptance Test Soak Site and Training Program Production Use 77% 1% 2% 4% 16% 100%

18 Bugs reported from first two beta sites Month Sub-system (# source lines of code) A (250K) B (100K) C (113K) D (175K) E (112K) F (25K) Found by customer Total # Bugs 3 15 20 14 17 18 16 10 11 15 16 118 80 96 58 78 106 108 111 93 105 84 68 45 59 19 30 104 88 60 68 56 95 87 60 69 68 56 82 95 86 124 94 68 14 60 139 174 127 63 94 59 77 87 65 0000000240400000002404 32 18 34 50 32 49 71 90 112 290 260 383 333 308 373 401 326 375 361 332 Jan Feb Mar Apr May June July Aug Sept Oct Nov 11 Month Total 1551,037692889959 10 524 3,742 Found by Developers

19 Bug density in mature systems System (# of source lines of code) # Releases Bugs per 1K New or Changed Source Lines A (500K ) B ( 200K ) C (100K ) D ( 50K ) 13 14 8 9 0.76 0.72 1.00 1.14

20 Key Question l What’s the problem?


Download ppt "CS 551 People, Process, Product and Project. Tailored OO Application Software Reusable Software Vendor Software User Programs Client Personal Computer."

Similar presentations


Ads by Google