Presentation is loading. Please wait.

Presentation is loading. Please wait.

17 Dec 2002 FIO Development Process Bill Tomlin. 17 Dec 2002/BT2 Introduction Historical perspective Good practice  Design  Testing Development methods.

Similar presentations


Presentation on theme: "17 Dec 2002 FIO Development Process Bill Tomlin. 17 Dec 2002/BT2 Introduction Historical perspective Good practice  Design  Testing Development methods."— Presentation transcript:

1 17 Dec 2002 FIO Development Process Bill Tomlin

2 17 Dec 2002/BT2 Introduction Historical perspective Good practice  Design  Testing Development methods compared Recommendations

3 17 Dec 2002/BT3 Ada – Enchantress of Numbers Born December 10, plan to calculate Bernoulli numbers using Babbage’s ‘Difference Engine’ First programmer 1979 ADA language “I am much annoyed at your having altered my Note. You know I am always willing to make any required alterations myself, but that I cannot endure another person to meddle with my sentences”

4 17 Dec 2002/BT4 Good Practice: Design Top-down, Use Case driven Identify high-level components Decide interfaces Apply to sub-components Low coupling, high cohesion A simple model says a lot…

5 17 Dec 2002/BT5

6 6 Example: The Database Single, consistent access method Hide implementation details Good performance Ease of maintenance Access control Pre-compilation Connection pooling

7 17 Dec 2002/BT7 “Good and clear interfaces reduce bugs. Avoiding complexity reduces bugs.” - Linus Torvald “Spend time on architecture not maintenance.” - Jean-Claude Wipple

8 17 Dec 2002/BT8 Testing Apply principles of engineering to software Bottom-up unit testing Catch errors early  Cheaper  Less embarrassing  Saves time

9 17 Dec 2002/BT9 January 28, 1986

10 17 Dec 2002/BT10 An “O-ring” fails

11 17 Dec 2002/BT11 “Major malfunction”

12 17 Dec 2002/BT12 What went wrong… Rubber used to seal joints failed to expand at 0ºC The component wasn’t tested in the right way The engineer wasn’t listened to The risk assessment was wrong (1/ vs. 1/100)

13 17 Dec 2002/BT13 “For a successful technology, reality must take precedence over public relations, for nature cannot be fooled” - Feynman

14 17 Dec 2002 Methods Waterfall Iterative Common depends on scale of project…

15 17 Dec 2002/BT15 …can be a lot of dogs to house

16 17 Dec 2002/BT16

17 17 Dec 2002/BT17

18 17 Dec 2002/BT18 Waterfall Method

19 17 Dec 2002/BT19 Waterfall Method Advantages Simple Stability - harder to introduce late changes Testers get early specifications to work from Project planning is easier Disadvantages Risky - no early working releases Inflexible – can’t change requirements or design Cannot respond to changing circumstance Testing late and on critical path Projects usually too late and too expensive Communications can break down…

20 17 Dec 2002/BT20 1. Customer requested: 2. Analyst Specified: 3. Designer Specified: 4. Programmer Implemented: 5. Installed: 6. Customer really needed:

21 17 Dec 2002/BT21 Iterative Method

22 17 Dec 2002/BT22 Iterative Method Advantages Can calibrate and refine plan  more accurate Working releases all through  lower risk Allow reappraisal Whole development process regularly performed Disadvantages Developers may keep writing fresh code, not bug fixing Core product may need re- architecting with new functionality Planning more complex More chaotic

23 17 Dec 2002/BT23 "A complex system that works is invariably found to have evolved from a simpler system that worked" - Gall 1986

24 17 Dec 2002/BT24 Common Method

25 17 Dec 2002/BT25 Development in FIO… Lack of clear method Good people but high turnover Assumed knowledge Fragmented information Interesting production environments Sporadic use of CVS, SourceSafe Eclectic, wordy document content, if they exist High coupling between components

26 17 Dec 2002/BT26 Recommendations…

27 17 Dec 2002/BT27 Start with a simple process… An “FIO project approach” document Standard set of project artifacts  Requirements - what  Design (UML) - how  Code, makefiles, sql  Instructions: how to build & deploy All artifacts in CVS/SourceSafe Single repository for FIO Obvious location Consistent naming All DB access via stored procedures

28 17 Dec 2002/BT28 …which we can evolve Document templates Code templates Coding standards Libraries Reviews Quality plans, testing Dev  Test  Production environments Release procedures Widen scope beyond FIO ?

29 17 Dec 2002/BT29 Questions/Comments ?


Download ppt "17 Dec 2002 FIO Development Process Bill Tomlin. 17 Dec 2002/BT2 Introduction Historical perspective Good practice  Design  Testing Development methods."

Similar presentations


Ads by Google