Presentation is loading. Please wait.

Presentation is loading. Please wait.

No Silver Bullet – Essence and Accident “Not only are there no silver bullets now in view, the very nature of software makes it unlikely that there will.

Similar presentations


Presentation on theme: "No Silver Bullet – Essence and Accident “Not only are there no silver bullets now in view, the very nature of software makes it unlikely that there will."— Presentation transcript:

1 No Silver Bullet – Essence and Accident “Not only are there no silver bullets now in view, the very nature of software makes it unlikely that there will be any – no inventions that will do for software productivity, reliability, and simplicity what electronics, transistors, and large-scale integration did for computer hardware.”

2 Productivity Equation Time of task = SUM[(frequency) i X (time) i ] Conceptual components of the task take most of the time (deciding what to build) In order to increase software productivity we must focus on this aspect of software development

3 Promising Attacks on the Conceptual Essence Buy vs. Build Requirements refinement - Rapid Prototyping Incremental development

4 Buy versus Build “The most radical possible solution for constructing software is not to construct it at all” ANY software product is cheaper to buy than to build Even at a cost of $100,000, a purchased piece of software is costing only about as much as one programmer-year Delivery is immediate The cost of software is in development, not replication. By sharing the cost among a large number of users, the per-user cost is lowered. Examples: spreadsheets/payroll apps/accounting software

5 Requirements Refinement Most difficult step in software development Any mistakes in the requirements cripple the resulting system and are difficult to rectify later Clients generally do not know what they want or know what questions must be answered Clients almost never communicate the problem to the software designers in the detail that must be specified It is the designers job to iteratively extract and refine the product requirements from the client

6 Rapid Prototyping Prototypes generally simulate important interfaces and perform major functions of the intended system Prototypes are an important tool designers use to extract requirements specifications from the client Give clients a chance to test versions of the product they are specifying to designers Any problems in requirements are caught early in the design phase

7 Incremental Development Software is not written Software is grown by incremental development Every new function or class grows out of what is already in the program Decreases bugs Ease of backtracking Prevents the project from going off course


Download ppt "No Silver Bullet – Essence and Accident “Not only are there no silver bullets now in view, the very nature of software makes it unlikely that there will."

Similar presentations


Ads by Google