INFSO-RI-508833 Enabling Grids for E-sciencE www.eu-egee.org The gLite Software Development Process Alberto Di Meglio EGEE – JRA1 CERN.

Slides:



Advertisements
Similar presentations
Project Management Summary Castor Development Team Castor Readiness Review – June 2006 German Cancio, Giuseppe Lo Presti, Sebastien Ponce CERN / IT.
Advertisements

EC Review – 01/03/2002 – G. Zaquine – Quality Assurance – WP12 – CS-SI – n° 1 DataGrid Quality Assurance Gabriel Zaquine Quality Engineer - WP12 – CS-SI.
EGEE is a project funded by the European Union under contract IST Software Configuration Management and Integration Alberto Di Meglio EGEE.
SPI Software Process & Infrastructure GRIDPP Collaboration Meeting - 3 June 2004 Jakub MOSCICKI
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks gLite Release Process Maria Alandes Pradillo.
EGEE-II INFSO-RI Enabling Grids for E-sciencE PSNC work status Gerard Frankowski, Rafał Lichwała Poznań Supercomputing.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
SPI Software Process & Infrastructure EGEE France - 11 June 2004 Yannick Patois
EGEE is a project funded by the European Union under contract IST JRA1 Testing Activity: Status and Plans Leanne Guy EGEE Middleware Testing.
EMI INFSO-RI EMI SA2 Report Quality Assurance Alberto Aimar (CERN) SA2 WP Leader.
EMI INFSO-RI EMI Quality Assurance Processes (PS ) Alberto Aimar (CERN) CERN IT-GT-SL Section Leader EMI SA2 QA Activity Leader.
INFSO-RI Enabling Grids for E-sciencE The gLite Software Development Process Alberto Di Meglio CERN.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
INFSO-RI Enabling Grids for E-sciencE SA1: Cookbook (DSA1.7) Ian Bird CERN 18 January 2006.
INFSO-RI Enabling Grids for E-sciencE Logging and Bookkeeping and Job Provenance Services Ludek Matyska (CESNET) on behalf of the.
EGEE is a project funded by the European Union under contract IST Testing processes Leanne Guy Testing activity manager JRA1 All hands meeting,
EGEE is a project funded by the European Union under contract IST Build Infrastructure & Release Procedures Integration.
FP6−2004−Infrastructures−6-SSA IPv6 and Grid Middleware: the EUChinaGRID experience Gabriella Paolini – GARR Valentino.
A DΙgital Library Infrastructure on Grid EΝabled Technology ETICS Usage in DILIGENT Pedro Andrade
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks General relationships with EGEE JRA1 SA3.
FP6−2004−Infrastructures−6-SSA IPv6 in the EGEE Related Projects: the EUChinaGRID experience Gabriella Paolini – GARR.
EGEE is a project funded by the European Union under contract IST Software Configuration Management and Integration Alberto Di Meglio EGEE.
INFSO-RI SA1 Service Management Alberto AIMAR (CERN) ETICS 2 Final Review Brussels - 11 May 2010.
EGEE is a project funded by the European Union under contract IST JRA1-SA1 requirement gathering Maite Barroso JRA1 Integration and Testing.
INFSO-RI Enabling Grids for E-sciencE SA1 and gLite: Test, Certification and Pre-production Nick Thackray SA1, CERN.
EMI is partially funded by the European Commission under Grant Agreement RI SA2 – Quality Assurance Alberto AIMAR (CERN) SA2 Leader EMI Second EC.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Operations Automation Team James Casey EGEE’08.
INFSO-RI Enabling Grids for E-sciencE Integration and Testing, SA3 Markus Schulz CERN IT JRA1 All-Hands Meeting 22 nd - 24 nd March.
JRA Execution Plan 13 January JRA1 Execution Plan Frédéric Hemmer EGEE Middleware Manager EGEE is proposed as a project funded by the European.
Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Usage of virtualization in gLite certification Andreas Unterkircher.
EGEE-III INFSO-RI Enabling Grids for E-sciencE Antonio Retico CERN, Geneva 19 Jan 2009 PPS in EGEEIII: Some Points.
JRA2: Quality Assurance Overview EGEE is proposed as a project funded by the European Union under contract IST JRA.
EMI INFSO-RI SA1 – Maintenance and Support Francesco Giacomini (INFN) SA1 Leader 1 st EMI Periodic Review Brussels, 22 June 2011.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks The future of the gLite release process Oliver.
Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Tools and techniques for managing virtual machine images Andreas.
Software Engineering Overview DTI International Technology Service-Global Watch Mission “Mission to CERN in Distributed IT Applications” June 2004.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
European Middleware Initiative (EMI) The Software Engineering Model Alberto Di Meglio (CERN) Interim Project Director.
EGEE is a project funded by the European Union under contract IST GLite Integration Infrastructure Integration Team JRA1.
INFSO-RI Enabling Grids for E-sciencE The gLite Software Development Process Alberto Di Meglio EGEE – JRA1 CERN.
EMI INFSO-RI Software Quality Assurance in EMI Maria Alandes Pradillo (CERN) SA2.2 Task Leader.
EMI INFSO-RI Software Metric Definitions, Reports and Analysis in EMI Authors: Eamonn Kenny (TCD), Gianni Pucciani (CERN) Date: Tuesday 12 th April.
EMI INFSO-RI EMI Quality Assurance Tools Lorenzo Dini (CERN) SA2.4 Task Leader.
EGEE-III INFSO-RI Enabling Grids for E-sciencE SA3 All Hands Meeting 'Cluster of Competence' Experience SA3 INFN Cyprus May 7th-8th.
INFSO-RI Enabling Grids for E-sciencE Quality Assurance Gabriel Zaquine - JRA2 Activity Manager - CS SI EGEE Final EU Review
INFSO-RI SA2 ETICS2 first Review Valerio Venturi INFN Bruxelles, 3 April 2009 Infrastructure Support.
INFSO-RI Enabling Grids for E-sciencE gLite Certification and Deployment Process Markus Schulz, SA1, CERN EGEE 1 st EU Review 9-11/02/2005.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Patch Preparation SA3 All Hands Meeting.
EMI INFSO-RI SA1 – Maintenance and Support Francesco Giacomini (INFN) EMI First EC Review Brussels, 22 June 2011.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks MSA3.4.1 “The process document” Oliver Keeble.
INFSO-RI Enabling Grids for E-sciencE gLite Test and Certification Effort Nick Thackray CERN.
INFSO-RI JRA2 Test Management Tools Eva Takacs (4D SOFT) ETICS 2 Final Review Brussels - 11 May 2010.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Implementing product teams Oliver Keeble.
EGEE-III INFSO-RI Enabling Grids for E-sciencE JRA1 and SA3 All Hands Meeting December 2009, CERN, Geneva Product Teams –
Enabling Grids for E-sciencE EGEE-III-INFSO-RI EGEE and gLite are registered trademarks Francesco Giacomini JRA1 Activity Leader.
INFSOM-RI ETICS and EGEE Testing Alberto Di Meglio.
SPI Software Process & Infrastructure Project Plan 2004 H1 LCG-PEB Meeting - 06 April 2004 Alberto AIMAR
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
INFSO-RI Enabling Grids for E-sciencE File Transfer Software and Service SC3 Gavin McCance – JRA1 Data Management Cluster Service.
EMI INFSO-RI SA2: Quality Assurance Status Report Alberto Aimar(SA2) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
SCD Monthly Projects Meeting 2014 Scientific Linux Update Rennie Scott January 14, 2014.
INFSO-RI Enabling Grids for E-sciencE Software Process Author: Laurence Field (CERN) Presented by David Smith JRA1 All Hands meeting,
OSG Facility Miron Livny OSG Facility Coordinator and PI University of Wisconsin-Madison Open Science Grid Scientific Advisory Group Meeting June 12th.
INFSOM-RI WP3: WP3: Software configuration tools and methodologies Status Report ETICS All-Hands – 23 May 2007 E. Ronchieri.
The gLite Software Development Process
E-Infrastructure for Testing, Integration and Configuration of Software Alberto Di Meglio CERN, INFN, Engineering, 4D Soft, University of Wisconsin.
SPI Software Process & Infrastructure
Leanne Guy EGEE JRA1 Test Team Manager
Presentation transcript:

INFSO-RI Enabling Grids for E-sciencE The gLite Software Development Process Alberto Di Meglio EGEE – JRA1 CERN

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Overview Software configuration management QA tools and checkpoints QA Metrics and Process Auditing Beyond gLite

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Software Process JRA1 Software Process is based on an iterative method loosely based on RUP and some XP practices It comprises two main 12-month development cycles divided in shorter development-integration-test-release cycles lasting from 2 to 6 weeks The two main cycles starts with full Architecture and Design phases, but the architecture and design are periodically reviewed and verified. The process is fully documented in a number of standard document: –Software Configuration Management Plan (SCM) –Test Plan –Quality Assurance Plan –Developer’s Guide

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December SCM The SCM Plan is the core document of the Software Process It contains a description of the processes and the procedures to be applied to the six SCM activity areas: –Software configuration and versioning, tagging and branching conventions –Build Systems and Tools –Bug Tracking –Change Control and the Change Control Board (CCB) –Release Process –Process Auditing and QA Metrics It is based on a number of standard methods and frameworks including: –ISO 10007: Quality management systems -- Guidelines for configuration management, ISO, 2003 –IEEE Software Engineering Guidelines ( –The Rational Unified Process ( 306.ibm.com/software/awdtools/rup/) In addition it adopts best-practice solutions 1 to guarantee the highest possible quality in a very distributed and heterogeneous collaboration 1 S.P. Berczuk, Software Configuration Management Patterns, Software Patterns Series, Addison-Wesley, 2002 A. Di Meglio et al., A Pattern-based Continuous Integration Framework for Distributed EGEE Grid Middleware Development, Proc. CHEP 2004

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Build Infrastructure Two nightly build servers on RH Linux 3.0 (ia32) –Clean builds out of HEAD and v. 1.x every night of all components –Results are published to the gLite web site –Tagged every night and totally reproducible One continuous build server on RH Linux 3.0 (ia32) –Incremental builds out of v. 1.x every 60 minutes –Results published to CruiseControl web site –Automated build error notifications to developers and Integration Team One nightly build server on RH Linux 3.0 (ia64) –Clean builds every night of all components One nightly build server on Windows XP –Clean builds every night of all components currently ported to Windows Build system supported platforms: –Red Hat Linux 3.0 and binary compatible platforms (SLC 3, CentOS, etc), 32 and 64-bit (gcc) –Windows XP/2003 (at least for UI, but problems with third-party software like GT2.4)

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Defect Tracking System Based on the Savannah project portal at CERN Used also for change requests (for example API changes, external libraries version changes, etc). In this case, request are assigned to the Change Control Board for further evaluation Each gLite subsystem is tracked as a separate category and related bugs are assigned to the responsible clusters Third-party issues are also tracked here in addition to being reported to original provider

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Defect Tracking Cycle

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Release Process QA Checkpoints DevelopmentIntegrationTesting Also in collaboration with Applications and Operations Pass Fail Fix Functional Tests Testbed Deployment Fail Pass Installation Guide, Release Notes, etc Software Code Integration Tests Deployment Packages TAGS Baseline Release Candidate TAG Release SA1 PPS Code Reviews Build System Code Conventions Unit Tests Coverage Tests Integration and System Tests Functional Tests Reports, analysis and statistics Deployment Tests Functional Tests Documentation Tests

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Code Style and Conventions

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Unit Tests Reports

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Auto-generated Documentation

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Regression Test Reports

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December SLOC Total Physical Source Lines of Code (SLOC) SLOC = 955,825 (as of 21 November 2005) Total SLOC by language (dominant language first) Java (29.85%) C (27.92%) Ansi C (21.90%) Perl (7.89%) sh (7.42%) Python (4.55%) Total complete builds: 665 (all 1.x branches), 262 (HEAD) Number of subsystems: 18 (gLite 1.5) + 7 (queued) Number of CVS modules: 501 Pre-Release Defects/KSLOC = 2.78 Post-Release Defects/KSLOC = 1.14

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Code Size and Stability The Code Size chart shows the changes in total number of SLOCs during the life of the project The Code Stability chart shows the change rate of code size during the life of the project. As the project nears completion the rate should approach 0 Jump is due to new code submitted for R1.5. Not all code will actually make it to the final release

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December The Defects/kSLOC Chart Pre-Release QI Post-Release QI CMM2 Space Shuttle MySQL 5 Windows XP (Beta 2)

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Software Defects Statistics Adequate staffing of the Test Team is critical

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Software Defects Statistics

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Defects Trends (I) Time Open defects The Rayleigh Defect Prediction Model Design Implementation Tests and Release

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Defects Trends (II) gLite 1.0 gLite 1.2/1.3 gLite The Rayleigh Defect Prediction Model applied to gLite

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Defects Trends (III)

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Beyond gLite Collaborations in QA activities have been established with other projects External components are released through the gLite infrastructure (eg. Gridsite) Strong relationships exists with the NMI build and test infrastructure managed by the University of Wisconsin. Components from gLite are also distributed through VDT/NMI sharing the same release process (VOMS) A new project called ETICS is starting in January together with UoW and NMI to leverage the experience gathered during EGEE to provide distributed build and test services to other projects Collaborations in the QA field between EGEE/ETICS and other projects like Globus and OMII-EU are being established

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December Conclusions gLite is supported by a strong, industry-standard software engineering process Collection and analysis of QA metrics can provide a powerful tool for monitoring the status of the project and assessing critical areas of intervention The experience gathered during EGEE also in collaboration with other projects must be preserved and expanded Additional initiatives to strengthen the process and share the knowledge have been taken and are now moving well beyond the EGEE boundaries

Enabling Grids for E-sciencE INFSO-RI nd EGEE Review December More information