Framework for Automated Builds Natalia Ratnikova CHEP’03.

Slides:



Advertisements
Similar presentations
Accel Computerized Maintenance Management System.
Advertisements

Configuration management
05/11/2001 CPT week Natalia Ratnikova, FNAL 1 Software Distribution in CMS Distribution unitFormContent Version of SCRAM managed project.
Multi-Mode Survey Management An Approach to Addressing its Challenges
Ch 3 System Development Environment
Summer Student presentation Changing Dashboard build system to Bamboo Robert Varga IT/SDC
2004 Cross-Platform Automated Regression Test Framework Ramkumar Ramalingam, Rispna Jain IBM Software Labs, India.
Alternate Software Development Methodologies
Web Applications Development Using Coldbox Platform Eddie Johnston.
1 Software & Grid Middleware for Tier 2 Centers Rob Gardner Indiana University DOE/NSF Review of U.S. ATLAS and CMS Computing Projects Brookhaven National.
1 SYSTEM and MODULE DESIGN Elements and Definitions.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Introduction to Software Testing
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
–Streamline / organize Improve readability of code Decrease code volume/line count Simplify mechanisms Improve maintainability & clarity Decrease development.
CSCI ClearQuest 1 Rational ClearQuest Michel Izygon - Jim Helm.
SPI Software Process & Infrastructure GRIDPP Collaboration Meeting - 3 June 2004 Jakub MOSCICKI
SEAL V1 Status 12 February 2003 P. Mato / CERN Shared Environment for Applications at LHC.
M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
Abstract The automated multi-platform software nightly build system is a major component in the ATLAS collaborative software organization, validation and.
SPI Software Process & Infrastructure EGEE France - 11 June 2004 Yannick Patois
Nightly Releases and Testing Alexander Undrus Atlas SW week, May
NICOS System of Nightly Builds for Distributed Development Alexander Undrus CHEP’03.
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.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Control in ATLAS TDAQ Dietrich Liko on behalf of the ATLAS TDAQ Group.
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
1 Computing Challenges for the Square Kilometre Array Mathai Joseph & Harrick Vin Tata Research Development & Design Centre Pune, India CHEP Mumbai 16.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
ANKITHA CHOWDARY GARAPATI
Effort.vs. Software Product “Quality” Effort Product “Quality” Which curve? - linear? - logarithmic? - exponential?
SEAL Core Libraries and Services CLHEP Workshop 28 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14Slide 1 Chapter 14 Design with Reuse.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Any data..! Any where..! Any time..! Linking Process and Content in a Distributed Spatial Production System Pierre Lafond HydraSpace Solutions Inc
GDB Meeting - 10 June 2003 ATLAS Offline Software David R. Quarrie Lawrence Berkeley National Laboratory
Software Maintenance Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
INFSO-RI Enabling Grids for E-sciencE ARDA Experiment Dashboard Ricardo Rocha (ARDA – CERN) on behalf of the Dashboard Team.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Geant4 is a toolkit to simulate the passage of particles through matter, and is widely used in HEP, in medical physics and for space applications. Ongoing.
Thoughts on How to Distribute the Bare Minimum for Analysis Natalia Ratnikova, Fermilab 16 May, 2006 Software Development Tools Meeting.
Architectural Mismatch: Why reuse is so hard? Garlan, Allen, Ockerbloom; 1994.
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.
1/30/2003 Los Alamos National Laboratory1 A Migration Framework for Legacy Scientific Applications  Current tendency: monolithic architectures large,
CONTROL-M Training At Global Online Trainings IND: Skype: Global.onlinetrainings USA:
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.
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
CIS 375 Bruce R. Maxim UM-Dearborn
Chapter 18 Maintaining Information Systems
Introduction to Design Patterns
Pipeline Execution Environment
Software Reuse ©Ian Sommerville 2006.
Web Engineering.
Maintaining software solutions
Introduction to Software Testing
ABHISHEK SHARMA ARVIND SRINIVASA BABU HEMANT PRASAD 08-OCT-2018
Chapter 2. Problem Solving and Software Engineering
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Chapter 2: Building a System
ONAP Architecture Principle Review
Building a “System” Moving from writing a program to building a system. What’s the difference?! Complexity, size, complexity, size complexity Breadth.
Presentation transcript:

Framework for Automated Builds Natalia Ratnikova CHEP’03

25 March 2003N. Ratnikova BOA: Framework for Automated Builds2 Project Goals Facilitate software maintenance, help to improve software quality in the areas of software development, release management and distribution processes with the aids of the automated builds. Systematize available tools and components and put them all to work together in a highly automated fashion. Provide knowledge base management system for the automated software builds.

25 March 2003N. Ratnikova BOA: Framework for Automated Builds3 System Requirements Set up tools to collect code tags and automatically build the corresponding software on the range of supported CMS platforms. Hyperlinked log files for builds should be provided. The system should also support building of pre-releases, releases and even private test builds.

25 March 2003N. Ratnikova BOA: Framework for Automated Builds4 Analyzing Existing Systems Nightly ATLAS software releases on Linux platform ml ml Night builds of ALICE off-line software CDF run II software management Continuous integration with Cruisecontrol GCC testing efforts … and many others

25 March 2003N. Ratnikova BOA: Framework for Automated Builds5 CMS Case Study Massive software development. Over 300 public software releases for the last 15 months. World-wide distributed development. Multiple software projects with anisochronous release schedule. Cross dependencies between projects. External products and tools (from 5 to 45) Multiple platforms compiler and OS upgrades …

25 March 2003N. Ratnikova BOA: Framework for Automated Builds6 CMS Case Study(cont) Versatile supporting tools and services are already available in the CMS environment: Source Code Repository and Versions Management SCRAM Configuration, Build and Release Management Oval Validation Tests Framework Warning Filter Build Output Parser and Publisher Projects Watch Release Monitoring and Notification SCRAM Tool Box External Software Configuration Repository Pacman Universal Software Installer

25 March 2003N. Ratnikova BOA: Framework for Automated Builds7 CMS Case Study Main challenge: Configuration Cross-projects dependencies. Plenty of detailed specific information. Changing requirements and infrastructure. Lack of standardization for regular operations. Complicated and dynamic dependencies between components. Site specific configuration management (most tedious and error-prone operations).

25 March 2003N. Ratnikova BOA: Framework for Automated Builds8 BOA Solutions: MODEL : Look for invariants in the complex system Abstract the structure from the functionality, and the functionality from the implementation IMPLEMENTATION: Accumulate and systematize the knowledge base Provide standard interfaces to inter-changeable components PROCESS: Cyclic development and early prototyping Constantly testing and documenting

25 March 2003N. Ratnikova BOA: Framework for Automated Builds9 Handles installation specific information and algorithms System Architecture Installation Domain Versions Project Projects Maintains list of projects, site dependent information, defines projects types, provides access to projects user interface Maintains list of versions. Implements type specific operations. Maintains different types of installation (e.g. Release, Nightly, Integration…). Contains configuration requirements.

25 March 2003N. Ratnikova BOA: Framework for Automated Builds10 BOA Framework Architecture Knowledge Base Inference Engine User Interface Shell User Domain independent (in principle) Domain dependent Corresponds to basic expert system architecture

25 March 2003N. Ratnikova BOA: Framework for Automated Builds11 System Features Proposed architecture allows to separate services from the implementation details supports multiple types of projects: scramified, pacmanized… and builds: releases, nightlies,… allows for customized configuration on the domain level provides convenient user interface with built-in help and standard interfaces to the underlying pluggable components. domain database keeps track of multiple projects, versions, installations and their status

25 March 2003N. Ratnikova BOA: Framework for Automated Builds12 Implementation and Status First experience with Perl-written prototype while providing solid base for algorithmic part of the system, did not allow required flexibility in configuration. Object oriented model has been developed, base BOA classes and their responsibilities have been identified and implemented in Python. Base classes: Framework, Domain, Project, Version, Installation, Platform,… and their major subclasses are implemented.

25 March 2003N. Ratnikova BOA: Framework for Automated Builds13 Implementation and Status (Cont) Utilities module provides support for: Users command line interface with built-in help (based on standard python module cmd) Child-parent components architecture Persistency mechanisms (pickle) Abstract factory for support multiple types of components Logger with built-in timer Work on the algorithmic part and standard interfaces to the components is currently in progress.