a. aimar - ep/sft lcg - software process & infrastructure1 software process panel spi gridpp 7...
TRANSCRIPT
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 1
Software Process panelSPI
GRIDPP 7th Collaboration Meeting 30 June – 2 July 2003
A.Aimar - CERN
LCG Software Process & Infrastructure
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 2
Project context of LCG SPI
LCG Application Area
LCG Infrastructure•Common services
•Similar ways of working (process)
•Tools, templates, training
•General QA, tests, integration, release
LCG Application Area software projects
•POOL: Persistency
•SEAL: Core common software
•PI: Physics Interfaces
•SIMU: Simulation
• …etc…
LHC grid software applications
(LHC experiments, projects, etc)
LCG SPI project
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 3
Project context of the LCG SPI
• “Software Management Process RTAG”• General recommendations
- All LCG projects must adopt the same set of tools, standards and procedures
- Adopt commonly used open-source or commercial software when easily available
- Avoid “do it yourself solutions”- Avoid commercial software, if may give licensing
problems
• If each project needs an infrastructure, many projects need it even more…
- Tools, standards and procedures- Try to avoid complexity
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 4
Infrastructure Software Development
• Keep it “simple and modular”a. Provide general services needed by each project
- CVS repository, Web Site, Software Library- Mailing Lists, Bug Reports, Collaborative Facilities
b. Provide solutions specific to the software phases- Tools, Templates, Training, Examples, etc.
CodingAnalysis and Design
Development
Release
SpecificationsTesting
…..Deployment and
Installation…..
Planning
General Services
Software Development
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 5
Purpose, scope, objectives
• The goal of the project is to provide • basic environment for physics SW development • general scientific libraries class libraries for PP
applications • software development tools • documentation tools and document templates
• and define the support • activity necessary to ensure that a common
grid-enabled environment is available
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 6
Project guidelines
• No specific software development• The project should avoid
any new development, and future maintenance, of any specific software package needed for the LCG software infrastructure.
• Use HEP or free software• All software used should be
already available, or become available, in the HEP community or in the free software community
• The goal of the project is to define an infrastructure and later a simple process• Future maintenance will
need separate planning and resources.
• Everything is done in collaboration• LCG and LCG projects • IT division and LHC
experiments• Big projects (G4, Root, etc)
• Using as the existing IT services• The project should use all
existing IT services• Make sure they match the
LCG needs
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 7
Process for later…
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 8
Break-down the infrastructure
• Break the project in “components”- Each is a sub-project- A responsible person in the LCG SPI - Understand and learn the subject- Know/find who knows about the subject - Provide practical solutions, usable independently
User Requirements
Analysis and Design
Development Release
DistributionTesting
Documentation
Deployment and Installation
Validation
…..…..Planning
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 9
Component development
• Each component of the infrastructure has:• A responsible person in the project• Similar SIMPLE approach
- Define the goal of the component- Standard procedures and documentation
• Standard procedure• Survey of possible/existing solutions in HEP and free
software• Meet the people expert and responsible of the component in
real projects (LCG or experiments or big projects) • Discuss and agree/decide/verify a solution• Present the solution• Implement the solutions and make it available
• Use in the LCG SPI project itself• Use it in a real project (LCG or experiment or big project)
A. Aimar - EP/SFT LCG - Software Process & Infrastructure 10
Suggestions / Hints
• When a solution looks quite accepted just do it (and then fix it)
• Keep it simple and modular • Never use words like “process, ISO, plan, strategy”: speak
the language of the users and developers• Start with something the developers can use right away• Know and talk to the skeptical people not to those
(few ;-) )that agree with you• The users must be convinced that they are taken into
account, you must know them and they must know you• Ask help to the users to work with you• An homogenous solution has a value in itself. Even if it is not
a process, it helps to share things and improve all together