220 likes | 441 Views
APT Configuration Management. Jesse Doggett. Outline for the Talk. What Is Configuration Management? APT Development Challenges APT CM Techniques Conclusion. Configuration Management. ANSI/EIA-649
E N D
APT Configuration Management Jesse Doggett APT Configuration Management May 25th, 2004
Outline for the Talk • What Is Configuration Management? • APT Development Challenges • APT CM Techniques • Conclusion APT Configuration Management May 25th, 2004
Configuration Management • ANSI/EIA-649 • "A management process for establishing and maintaining consistency of a product's performance, functional and physical attributes with its requirements, design and operational information throughout its life."(http://www.pdmic.com/cmic/introtoCM.shtml) • Susan Dart • "The goals of using CM are to ensure the integrity of a product and to make its evolution more manageable.”(http://www.loria.fr/~molli/cm-index.html) APT Configuration Management May 25th, 2004
Tracking and Controlling Changed • A Little to a Lot • None for My Web Page • Extreme Tactics for All Aspects of Project Management APT Configuration Management May 25th, 2004
APT Development Challenges • Code Integrity (Design, Implementation) • Multiple Developers (Implementation) • Build Availability (build, testing) • Release Requirements (release) APT Configuration Management May 25th, 2004
More Challenges • Multiple Classes of Users (requiements, release) • Multiple Platforms (implement, build, test, release) • Concurrent Release Development (implement, build, test) APT Configuration Management May 25th, 2004
APT CM Practices • Good Design (design) • Uniform Build System (implement, build) • Source Code Control (implement, build) • Automated Builds (build, test) APT Configuration Management May 25th, 2004
More CM Practices • InstallAnywhere Installers Generator • Alpha/Beta/Candidate Versioning • Regularly Scheduled Releases • Documented Release Procedures APT Configuration Management May 25th, 2004
APT Organization • Document Browser • Hierarchical Model for Documents • Generic Form & SpreadSheet Editors • Plug-and-Play Editor Tools APT Configuration Management May 25th, 2004
ANT Build System. • ANT is a Java Based Make-Like Utility • Incorporates Many File System Commands • Platform Independent • XML Build Files APT Configuration Management May 25th, 2004
Simple ANT Buld File <project name=“myproject” default=“build” basedir=“.”> <property name=“classes” value=“${basedir}/classes”/> <target name=“build” depends=“init”> <java srcdir=“${basedir}” destdir=“${classes}”/> </target> <target name=“init”> <mkdir dir=“${classes}”/> </target> </project> APT Configuration Management May 25th, 2004
CVS Source Code Control • CVS Allows Source Code Sharing • Branch Tags for Each Release • Isolate Code • Quick Fixes APT Configuration Management May 25th, 2004
InstallerAnywhere • InstallAnywhere Automatically Builds Installers • Supports Multiple Platform Installers • Has a Graphical Interface to Define Projects • Installers Are Customizable • Batches Modes Available APT Configuration Management May 25th, 2004
Nightly Builds. • Nightly Builds • Archived Weekly Builds • Develop and Delivery Branch Builds • JavaDoc API Documentation APT Configuration Management May 25th, 2004
APT Release Scheme • α Alpha Releases • ß Beta Releases • Candidate Releases • Bi-Monthly Operational Releases • Phase I, Phase II, Calibration, Hot APT Configuration Management May 25th, 2004
Delivery APT • Documented Delivery Procedures a Must • Archiving • Quick Fixes • Patching: APTPatches.jar APT Configuration Management May 25th, 2004
Main Strengths and Weaknesses • The latest develop version is always available. • Code for each release is isolated. • We are very robust to supporting multiple platforms. • We don’t have a good way to safely manage long term projects (> 2 months). APT Configuration Management May 25th, 2004
Lessons Learned • Automate as much as possible. • Use existing proven tools Communicate as much as possible. APT Configuration Management May 25th, 2004
Conclusion: Top Practices • CVS Source Control • Nightly Builds • 3rd Party Installer Generator www.stsci.edu/~doggett/cmtalk.html APT Configuration Management May 25th, 2004