Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Development in B A B AR Neil Geddes Rutherford Appleton Laboratory.

Similar presentations


Presentation on theme: "Software Development in B A B AR Neil Geddes Rutherford Appleton Laboratory."— Presentation transcript:

1 Software Development in B A B AR Neil Geddes Rutherford Appleton Laboratory

2 BACKGROUND BaBar  CP violation experiment at SLAC Approved 1995 Start May 1999, run for 5-10 years Software  Learn from experience and the software industry  Computing Group proposed OO in C++  Accepted by the Collaboration

3 OO Program to interfaces  Polymorphism  Hide the representation  Separate data and algorithms Code Re-use  Separate data and algorithms Abstract data types  Objects

4 C++ Not the real issue  Software is only written slowly Why C++ ?  Only viable choice for large OO project. But  Learning new language Language choice does affect design decisions  No language Standard  Complicated language

5 BaBar Walk before we learned to run  Break problem into manageable pieces  Infrastructure to support developers Early prototype - Analysis/user interface in 1996 “Learning while doing” Extensive training of core developers Continued user training  BaBar Mock Data Challenges Could do better !

6 METHODOLOGY Method what ? Early prototyping  Part of the training  It will be wrong the first time  We are not good at specifications + we change our minds  Better match to the way we work Do it Again

7 Development Cycle 1995  Overall architecture 1996  Core functionality, analysis interface  No real aligment/calibration 1997  Mock Data Challenge 1  Alignment/calibration 1998  Mock Data Challenge 2  Performance

8 LESSONS Core Team  Must have a core team of principal developers  Regular and frequent contact Infrastructure  Support requirements will be underestimated  Burden increases as some power of platforms distribution of users and developers overall project size  Failures here will impact overall project design...

9 TRAINING Developers  Importance can not be over-emphasised Users  C++ and OO new to HEP  This is perhaps the real issue with language choice Better software vs effort and complication

10 OO/C++ - THE PROBLEMS Fanatics  Search for the correct answer  Confusing ignorance with incompetence Running before walking  Pandoras box of neat C++ tricks  Complicated inheritance Learning C++ rather than OO programming  They are not the same C++ code dependencies  Removed by good design

11 THE REAL ISSUES Software development is free Isn’t it ? We are scattered all over the world  Complicates the project management and support  Central decisions have wide reaching consequences So what are the real issues ? ResourcesProject Management Resources and Project Management

12 CONCLUSIONS Did we make the correct decision in 1995 ? OF COURSE WE DID!


Download ppt "Software Development in B A B AR Neil Geddes Rutherford Appleton Laboratory."

Similar presentations


Ads by Google