General
About CSC
Organisation

People
Process for CSC hosting
School Models
Role of Local Organisers
Other Roles

Participants
Past Schools

2004 2005 2006 2007 2008 2009 2010 2011

Diploma at CSC
Sport at CSC
Inverted CSCs

iCSC05 iCSC06 iCSC08 iCSC10 iCSC11

Special schools

School@chep06

Inverted School 2005

CSC 2005

CSC2005 Overview

Practical Information

Programme

Schedule

Lecturers

Participants

Organisers

 
Examination results
 
Grants from EU -FP6

Eligibility Conditions

Level of grant support

How to apply
CSC-Live
New  Lecture videos
New  Photo-Contest
New  Updated news
New  Social activities

CSC-Live

     

inverted CERN School of Computing 2005 23-25 February 2005, CERN

Programme Overview

Data Management and Data Bases

Advanced Software Development Engineering

Web Services
in Distributed Computing

Schedule

Lecturers

Lecturer Bios

Printable Version

Change Control: Iterative Development /  Advanced CVS

     

Thursday 24 February

 
14:00 - 14:55 Integration Block
 

Lecture 4

 

 

 

Change Control: Iterative Development /  Advanced CVS
 

Brice Copy

Sebastian Lopienski

This lecture is formed of two parts. In the first one, Brice Copy presents the principles of  Iterative Development, why it was introduced, where it is used and what the various components are. In the second part, Sebastian Lopienski, after a setting the scene, presents the latest development of CVS, advices about common problems and pitfalls, suggest ways to use it and compare it to other similar tools.

Part 1 by Brice Copy

What Is Iterative Development ?
As opposed to monolithic approaches (cascade model)
Perform full, fast and complete development cycles (spec, code, build, integrate, test and back again)
In line with modern risk management techniques
Enables you to cope with changing requirements
 
Why Iterative Development Was Introduced
Cascade development too cumbersome
Full development cycles lets your team members (Dev, QA, System) work in parallel
 
Where Is It Used
Microsoft
Oracle
CERN
 
Ingredients List
Source control management (SCM) system
Somebody to write requirement and design specifications
An eager team of developers ready to work in parallel
Quality Assurance people
An integrated build tool (your Swiss army knife)
 
Integrated Build Tool
Code generation
 
Metadata attributes
 
Remote invocations stubs (Web services, RMI etc...)
 
ORM mapping files
SCM integration (CVS, Perforce, SourceSafe? etc...)
Code compilation (from various sources to various targets)
Functional and regression testing
Packaging
 
ZIP/RPM
 
JAR/WAR/EAR files
 
Integrated Build Tool (2)
Deployment as a named deliverable
 
Web Application Server
 
Middle tier server
 
Shared library repository
Integration testing
 
In Container testing
 
?
Documentation generation
 
Javadoc
 
Cross Referenced Code
 
UML Documentations
 
Specification in various formats (XDoc, PDF etc...)
Reporting
 
SCM activity
 
Coding standards
 
Testing coverage
 
Dependency convergence
 
Apache Ant
All of the above plus more
Not Java specific, but well err..
Easy to extend through Ant Tasks
Somewhat low level
 
Apache Maven
A layer wrapping Ant
Your project is seen as a high level object
 
Properties
 
Named dependencies
 
Deliverable
 
Deployment locations
 
Sub projects
Your project must follow a certain structure
Really aimed at Java projects
 
Automated Build Tools
Cruise Control
Damage Control

Part 2 by Sebastian Lopienski

Objectives of the presentation
 
Basic and not so basic but still useful functionality of CVS (including branching, merging, tagging, watching etc.)
Demystify the vocabulary (repository, revision, tag, attic, karma etc.)
Present available clients (command line clients, GUIs and IDE integrated clients) for both Unix-like and Windows platforms
Present others tool for CVS (Web interfaces etc.)
Show some good (and also bad) CVS users' habits
warn about some common problems and pitfalls
Discuss access control in CVS and security issues
Suggest ways to use CVS in build process
Mention other revision control systems like SourceSafe, Subversion etc.
Collect and present links to books, tutorials etc.
Prepare some exercises to be downloaded and run for further studies.

 

iCSC
All on iCSCs
News
Registration

Post-reg.

Handouts
Forum
Programme

Data Theme

Lecture1

Lecture2

Lecture3

Lecture4

Lecture5

All lectures

Soft Theme

Lecture1

Lecture2

Lecture3

Lecture4

Lecture5

Lecture6

All lectures

WS Theme

Lecture1

Lecture2

Lecture3

All lectures

Exercises New
FAQ
Social Events

 

Feedback: Computing (dot) School (at) cern (dot) ch
Last update: Thursday, 14. November 2013 11:48

Copyright CERN