F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/2005 Software Engineering for the Virgo Project at EGO F. Carbognani.

Slides:



Advertisements
Similar presentations
Autodesk Integrations Overview SmartDesk A seamlessly integrated, affordable, out-of-the-box, Windows based drawing and document management tool for.
Advertisements

Configuration management
Software change management
Configuration management
Configuration Management
Test Case Management and Results Tracking System October 2008 D E L I V E R I N G Q U A L I T Y (Short Version)
Automated Software Testing: Test Execution and Review Amritha Muralidharan (axm16u)
HP Quality Center Overview.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
ITIL: Service Transition
Web Applications Development Using Coldbox Platform Eddie Johnston.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
The Experience Factory May 2004 Leonardo Vaccaro.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Software Configuration Management
Tools and Services for the Long Term Preservation and Access of Digital Archives Joseph JaJa, Mike Smorul, and Sangchul Song Institute for Advanced Computer.
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Introduction to Software Testing
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
CVSQL 2 The Design. System Overview System Components CVSQL Server –Three network interfaces –Modular data source provider framework –Decoupled SQL parsing.
Overview of Change Management ClearQuest Overview for CORUG January, 2008.
This chapter is extracted from Sommerville’s slides. Text book chapter
Effective Methods for Software and Systems Integration
SPI Software Process & Infrastructure GRIDPP Collaboration Meeting - 3 June 2004 Jakub MOSCICKI
Framework for Automated Builds Natalia Ratnikova CHEP’03.
SPI Software Process & Infrastructure EGEE France - 11 June 2004 Yannick Patois
Software Configuration Management
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
Workshop on Computer-Supported Knowledge Collaboration, Shanghai, July 7, Current Status of Software Industry in Japan.
INFSO-RI Enabling Grids for E-sciencE The gLite Software Development Process Alberto Di Meglio CERN.
Configuration Management (CM)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 29 Slide 1 Configuration management.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
EGEE is a project funded by the European Union under contract IST Testing processes Leanne Guy Testing activity manager JRA1 All hands meeting,
The LCG SPI project in LCG Phase II CHEP’06, Mumbai, India Feb. 14, 2006 Andreas Pfeiffer -- for the SPI team
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Developing software and hardware in parallel Vladimir Rubanov ISP RAS.
LCG-SPI: SW-Testing LCG AppArea internal review (20/10/03)
Apache JMeter By Lamiya Qasim. Apache JMeter Tool for load test functional behavior and measure performance. Questions: Does JMeter offers support for.
Feedback from the POOL Project User Feedback from the POOL Project Dirk Düllmann, LCG-POOL LCG Application Area Internal Review October 2003.
Analysis trains – Status & experience from operation Mihaela Gheata.
Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
Reduce Development and Testing Time on Embedded Space Programs With Auto- Generated Code Software Engineer Northrop Grumman Electronic Systems Matthew.
Franco Carbognani, EGO LSC-Virgo Meeting May 2007 Status and Plans LIGO-G Z Software Management.
By : SAG3 Members.  Cross platform client interface for Time recording/capturing  MS Project integration to Time tracker  integration to Time.
MVC WITH CODEIGNITER Presented By Bhanu Priya.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
SPI Software Process & Infrastructure Project Plan 2004 H1 LCG-PEB Meeting - 06 April 2004 Alberto AIMAR
Part 1 The Basics of Information Systems. Purpose of Information Systems Information systems ◦ Collects, stores and organizes information ◦ Retrieves.
Configuration Control (Aliases: change control, change management )
Comments on SPI. General remarks Essentially all goals set out in the RTAG report have been achieved. However, the roles defined (Section 9) have not.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
Tool Support for Testing
Building Enterprise Applications Using Visual Studio®
Configuration Management
Cisco Data Virtualization
Chapter 18 Maintaining Information Systems
Software Configuration Management
Chapter 11: Integration- and System Testing
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/2005 Software Engineering for the Virgo Project at EGO F. Carbognani for The Virgo Collaboration iCALEPCS - Geneva October, 2005

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Virgo Project Suspended Michelson Interferometer with two 3 Km arms aimed at the detection of gravitational wave signals from cosmic sources

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Project Numbers Lines of Code (LOC) of C/C++ and Assembler Supported external packages amount of LOC of C/C++ 50 Workstation + 60 Local Control Units (RIOs) for the Interferometer operation 4 operating systems (OS9, alpha/OSF1, Linux, LynxOs 2 countries, 6 laboratories, 18 teams, almost 100 developers over the current lifespan of the project.

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Size

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Main Ideas Scientific software projects like VIRGO are becoming too large and complex to be managed without proper SE procedures Heavy-weight procesess and standards, like CMM, IEEE or ISO 9000 somethime limit their existence to office cupboards. Standards need to be simple and implemented by embedding them as a set of consistent tools

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Key Areas Configuration Management Problem Report Development Environment Documentation (Automatic) Testing Releases Performance Monitoring

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Configuration Management The supporting tool (SCVS) is a very thin layer on top of CVS aimed to simplify its use and tailor it on the Virgo Software development specificity. The basic rules behind SCVS are: –All files belonging to a package are handled at the same time –Only one person at time can modify a package –Branches are supported In archiving a package, the developer tells the others that a new CONSISTENT set of files is ready for use.

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Software Archive Access and Size

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Software Problem Report (SPR) Provides an easy standard avenue for users and testers to report bugs and for developers and maintainers to fix them and track them in an orderly fashion. Very simple interface and SPRs lifecycle to avoid that developers end up in spending more time on the bug tracking system than on the bugs or the projects themselves. A central database with Web and interface to submit, query, modify SPRs (implemented using WREQ)

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ SPR Statistics VCS-3.0

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Development Environment A standardized development essential requirement to manage different people in different sites. Such standardized environment has been obtained using the tool CMT CMT provides all key elements of a development environment: –structured make usage –easy encapsulation of third party tools and libraries –standardization of the UNIX environment set-up of every Virgo user.

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Documentation Document Templates Whenever possible extract documentation from the code itself for maintainability Doxygen support –CMT fragments for the generation of the Doxygen documents via “make” –Doxyfile template.

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Testing Has to be automatic Tool for Automated Testing(tat) has been adopted and slightly modified for the Virgo software Key feature of tat are: –The test execution has a standard and very simple interface (just a single command) –The test command prepares the environment set-up, executes the test(s), filters out variant data (dates, time, host names), compares results against reference and provides FAILED or PASSED result.

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Testing (cont.) Virgo Test Facility (VTF) Model of control system and control room Validation of Software Releases Validation of Operating Systems baselines Integration tests for subsystems Implements a full Suspension Crate replica and minimal DAQ chain. Being continuously upgraded and expanded

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Releases Slow upgrade cycle (3-6 months) for Major (External) Releases, on demand for Minor (Internal) Releases Tested for non-regression Uniquely identify all components (O.S., tools, external packages, Common Software) needed as development or operational platform of an application. Provide the explicit Integration Plan Heavily relying on the Virgo Test Facility (VTF) for the build and test phase Latest releases represent a true fully aligned baseline

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ VCS-1.0 Use Dependency

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ VCS-3.0 Use Dependency

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ System Monitoring The Software Release cycle must be completed by collecting field data to be carefully analyzed for succeeding releases. The normal scope of the Big Brother tool (monitoring System and Network-delivered services) has been extended by proposing and customizing it as a common framework for all Virgo Subsystems performances monitoring BB graphs very effective in spotting specific software problems.

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ System Monitoring (cont.)

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/2005 Support for the Object Oriented development approach: –New templates for Analysis and Design Documents –UML and Use Cases: Evaluation of the umbrello graphical tool –C++ Class templates (hpp and cpp files) containing the Doxygen tags Web based documentation and teamwork support: –Automatic generation of User Manuals in HTML format via Doxygen –Use of the Wiki tool as the main project development space, document management system and knowledge base. Integrated Development Environment (IDE) –KDevelop being customized for fully automated Doxygen documentation generation and for CMT integration 20 Future Steps

F. Carbognani Software Engineering for the Virgo Project at EGOGeneva-iCALEPCS 14/10/ Conclusion SE does not come for free, but can be brought into a project at a reasonable cost. SE can be implemented in gradual steps, providing first the most urgent tools and procedures, and then letting focused pilot projects lead the way for the “full SE approach” Even on a more “code-and-fix” oriented environment, with some effort, SE can be accepted and shared.