NEESit Software Configuration Management Process
|
|
|
- Nathaniel Hines
- 10 years ago
- Views:
Transcription
1 NEESit Software Configuration Management Process 1 1 NEES Cyberinfrastructure Center, SDSC Last Modified: Version: 1.1 Acknowledgment: This work was supported by the George E. Brown, Jr. Network for Earthquake Engineering Simulation (NEES) Program of the National Science Foundation under Award Number CMS Visit for more information.
2 NEES Software Configuration Management Guidelines 2 of 12 Table of Contents Revision History...3 About This Document Introduction Configuration Items Revision Control CVS Commit Guidelines Change Management Fogbugz Change Management Guidelines Build Management Development Staging (Baseline) Fogbugz Updates Nightly Builds, Regression Tests, and QA Production Release Management Software Coding Practices...12 List of Figures Figure 1: Resolving Fogbugz Issues...11 List of Tables Table 1: Document CI's...4 Table 2: neespop CI's...5 Table 3: neesdaq, neestpm, and NTCP/MATLAB CI's...6 Table 4: NEEScentral CI's...6 Table 5: CVS Repositories and Modules...7 Table 6: Fogbugz Priority Levels...8
3 NEES Software Configuration Management Guidelines 3 of 12 Revision History Date Version Description Author(s) 9/7/ Initial version for inclusion in statement of work 1/29/ First release 2/9/ Extended section on build management. Other minor edits also included About This Document The purpose of this document is to provide a methodology for tracking and controlling change for releases of NEESgrid software and services. Software development efforts for NEESgrid are highly distributed, with code being developed by NEESit staff, their contractors (Michigan, Oregon State, and Berkeley), the System Integration team, equipment site staff, NEESR researchers, and international collaborators. Every line of code added to the software repository adds to the overall maintenance and increases costs. Therefore, this distributed development effort must to be carefully managed in order to produce a reliable, usable, and maintainable software distribution to meet the needs of the earthquake engineering community. The overhead involved with configuration management can be a cause of irritation for everyone involved. The objective of the processes defined in this document is to improve group productivity while minimizing the impact on individual productivity. Therefore, these processes try to straddle the thin line between chaos and stifling bureaucracy. This document focuses on issues related to configuration management. Refer to the NEESit Software Development Process (TR ) document for detailed information on NEESit software engineering practices. Suggestions, questions, and comments regarding these guidelines are encouraged. Please send to [email protected] or [email protected].
4 NEES Software Configuration Management Guidelines 4 of 12 1 Introduction The configuration management processes addressed in this document are as follows: configuration identification: identifying the objects which require tracking revision control: the process of tracking all objects (project plans, documentation, source code, test plans, etc) and keeping track of the changes to and versions of all of these objects over the course of their lifetime build management: the process of assembling all software components into a working system change management: the process of carefully tracking software deliverables to ensure that they match the current scope of work as well as the task of evaluating the addition of unplanned changes to the release release management: the process of putting a software release into production 2 Configuration Items Configuration items (CI s) are objects that are carefully tracked and managed throughout their lifetime. CI s for NEESit include those involving documentation (Table 1) and those involving software (Table 2, Table 3, and Table 4). Table 1: Document CI's Type CI Name/Description Software Management NEESit Software Development Process NEESit Configuration Management Process Documentation for Software Releases Software Project Plans Software Quality Plans, Test Plans, and Test Reports End-User Documentation All documents at
5 NEES Software Configuration Management Guidelines 5 of 12 Type NEESgrid specific source code/supporting files 3 rd Party Source Distributions Binary distributions Table 2: neespop CI's CI Name/Description DAQ components NEESgrid Account Management Tools NTCP CASA CHEF NFMS NMDS NEESport Simulation Portal SDSC-CA Client Tools Apache HTTPd Big Brother Creare DataTurbine (RBNB) Jakarta Jetspeed Jakarta Tomcat NMI Condor-G Globus Toolkit GPT GSI-OpenSSh MyProxy Network Weather Service neespop gzipped tar files from releases Coming soon
6 NEES Software Configuration Management Guidelines 6 of 12 Type neesdaq source/support files Table 3: neesdaq, neestpm, and NTCP/MATLAB CI's CI Name/Description Server daemon Client library Example code Testing code NTCP control code MiniMOST-1 control and DAQ programs neestpm distribution NJZTPM-<version>.tar 1 NTCP/MATLAB source/support files MATLAB MOST simulation programs NTCP/MATLAB plugin NTCP server NFMS UploadAgent NTCP/MATLAB support programs Security Files Source distributions Binary distributions neesdaq, neestpm, and NTCP/MATLAB gzipped tar files from releases Coming soon Type NEESit source/support COTS applications Table 4: NEEScentral CI's CI Name/Description Central Repository Authentication Services Fogbugz enhancements Fogbugz Perforce 3 Revision Control Revision control involves the use of tools which keep track of revision history of CI s, allowing changes to rapidly evolve. Such tools provide the ability to retrace changes made to CI s and are useful for keeping a backup of work in progress. NEESit s revision control system also requires the ability to manage a large team of distributed software developers. NEESit s current revision control system is CVS. Within the next year, NEESit will migrate to Perforce for internal management of the production source repository, which provides powerful interfaces for tracking changes to CI s. External collaborators will continue to use existing CVS repositories, with each repository kept in sync via automated tools created by the NEESit team. 1 NEESit stores the neestpm tar file in CVS but not the source code
7 NEES Software Configuration Management Guidelines 7 of 12 The NEESit software distribution currently consists of four CVS repositories accessible from cvs.nees.org. These four repositories were originally created to support the distributed development environment of the System Integration Team 2 / For anonymous access to the repository, the CVS_RSH and CVSROOT environment variables must be set. A template for accessing CVS via a Bourne shell environment is shown as follows: CVS_RSH=<path to ssh at your site> CVSROOT=:pserver:[email protected]:/${REPOSITORY_NAME} cvs co ${MODULE_NAME} Repository and module names currently supported are listed in Table 5. Note that many of the modules listed in this table are no longer of use. Repository Names CVS/neesgrid-chef CVS/neesgrid-matlab CVS/neesgrid-neespop disks/cvs/neesgrid Table 5: CVS Repositories and Modules Module Names casa-ogsi, chef, chefncsa2, dmd-dist, lib-gt3, libnees-dmd, nees-dmd, nees-dmd-archives, nees-java2, neespop-chef, neesport-common, neesport-services, nfms-ogsi, nmds-ogsi main amie, bb, chef, collab, daq, foundry, gpt, grid, httpd, main, mdist-p1, neesam, nfms, nmds, nsds, ntcp, patch, rbnb, rbnb-nees, tomcat, var AxisPTZ, dataq-194, dndtester, fake_daq, flog, foundry, GreenWork, grid, JavaServer, jcamera, jclient, jphoto, JunkModule, JunkModules, jusb, lv-examples, lv-programs, mdist-p1, modules, nclient, nees-adxl, nees-di, NEESTelepresence, nsds, nsdsdriver, nsds_info_providers, nsds-service, nsds-webservice, nsds-webservice-gt3f, nsds-webserviceold, nsds-webservice-src, ntcp, NTCP, ntcp_plugins, ogsa-pre-alpha2, orb2nsds, RBNBDataViewer, server16, turbine Anyone may access CVS anonymously but NEESit authorization is required to write to any CVS repository. To request this access, please [email protected]. Over the year, NEESit will merge the four CVS repositories into a single repository and will work on simplifying the directory structure. In addition, the modules listed in Table 5 which are no longer in use will be removed. 2 The SI is the team that developed NEESgrid for three years ending October 2004.
8 NEES Software Configuration Management Guidelines 8 of CVS Commit Guidelines Developers are encouraged to commit changes to the repository often. This gives the developer a backup of their work and a method for backing out changes. For large development efforts, developers are encouraged to tag their code with their own unique names to avoid side effects of other software development efforts. When committing a change to the repository, please include a brief but informative comment. Project management and QA staff will track all CVS commits. 4 Change Management Change management focuses on procedures used to track and evolve items over the course of time. NEESit uses a commercial product called Fogbugz to assist in this process. 4.1 Fogbugz Any issue or feature request communicated to user support via phone, ([email protected]), or is tracked by NEESit s Fogbugz issue tracking system. Fogbugz is also used to track issues identified by internal staff. When a new issue is submitted to Fogbugz, support staff determines if the issue is with the software and if so, assigns issue to software development management, who will assign a Fogbugz priority level (Table 6). If the issue is to be included in an upcoming release, it is assigned to a member of the software development team. Table 6: Fogbugz Priority Levels Priority Description 1 - severe Show stopper immediate patch to the software required Critical part of functionality does not work 2 critical Functionality significantly affected Workaround exists but is hard to use Must fix for the next patch 3 high Workaround exists Performance problems Usability issues Probable inclusion for the next patch 4 medium Feature will be required within the next year Feature is not currently needed as often Probable inclusion for the next major release 5 low Causes unease Minor disturbance 6 minute May not be worth fixing When the developer receives the assignment, the estimated amount of time required to fix/implement the issue (in days or hours) should be entered for the given issue. Refer to section for detailed information on how to resolve Fogbugz issues.
9 NEES Software Configuration Management Guidelines 9 of Change Management Guidelines Overall direction for reviewing and approving change requests will be obtained from the NEES Change Management Committee (to be formed). Refer to NEESit Software Development Process (TR ) for more detailed information. Until the NEES Change Management Committee has been formed, NEESit will follow the following general guidelines for managing change request: 1) For a change request to be approved, the features requested must be needed for year 1 NEESR, pre-neesr, or other user experiments unless directed otherwise by NEESinc. 2) All software development efforts must be in response to a bug/new feature request entered into NEESit s Fogbugz tracking system ( 3) The Fogbugz case must be assigned priority 1-3 to be included in the next release or patch 5 Build Management NEESit has three different build environments for releases: development, staging (or baseline), and production. Each build environment, which is supported on a different computer system, is described in this section. 5.1 Development Developers are encouraged to utilize this system for their own test and development efforts. The system simulates four different development machines (neesdev0, neesdev1, neesdev2, and neesdev3) via a commercial software package called VMWare. Each of the virtual machines communicates with each other as if they were on a real network. In addition, different operating systems and NEESgrid deployments may be installed on each machine. 5.2 Staging (Baseline) The staging baseline is the software produced for the next release that has been tested by the developer and is ready for QA to test. Software developers should make every effort to execute their own tests prior to moving their code to the staging baseline. The baseline is more tightly controlled and therefore is of higher integrity, enabling QA staff to run integration tests well before the release date. The baseline is defined within the repository by a tag. For example, code development for an upcoming 3.3 software release might be tagged r3.3_alpha1 for the first alpha release. The NEESit Builds and Packaging Engineer will communicate these baseline tag names during the alpha and beta stages of software development. Code that has the baseline tag will be built and deployed on the NEESit staging machine where QA and other developers may access it. Software developers should only tag new code with the baseline tag once it meets the following conditions: the latest baseline code has been checked out of CVS (cvs update) the new code builds to completion (make) the new code has passed the developer s unit tests (make test)
10 NEES Software Configuration Management Guidelines 10 of 12 all other components in the distribution (with the baseline tag) build to completion the builds and packaging engineer has been informed of any modifications that need to be changed in the deployment process If any of the above conditions cannot be met, then the developer should continue to work within their own private workspace on the development system. It is important to reiterate that all of the above conditions need to be met before applying the baseline tag. Failure to do so will lead to time wasted by other members of the development team Fogbugz Updates Once a baseline tag has been applied to new code, developers need to update any issues in Fogbugz which have been resolved. This will let QA know that the issue will be ready for testing on the staging system. The process for updating fogbugz is as follows: Click on the Resolve button for the issue (refer to Step 1 in Figure 1) Provide a detailed description for the issue (Step 2 in Figure 1) o Give information on what was implemented o Include details on how to test the new code o Include information on any changes required to the deployment process (otherwise QA will not be able to test) o If needed, give details on documentation updates Specify the amount of time spent on the issue Click on the OK button In the next screen, assign the issue to QA (Jinghong Gao) (Step 3 in Figure 1) Nightly Builds, Regression Tests, and QA Once tagged, the baseline code in the software distribution will be used in an automated nightly build (to be implemented) of the entire NEES distribution. Failures in the nightly build process will be communicated to development staff and must be resolved as soon as possible. If this is not possible, then the change will be rolled out of the nightly build. A regression test suite is in development for the NEES software distribution. When ready, these tests will be automatically executed after a successful nightly build. Regression test failures will be forwarded to the developers and need to be resolved in a timely fashion. Once the build is completed and regression tests pass successfully, the baseline distribution will be deployed to a staging area where QA will test bug fixes and new functionality. This staging area will be made available to the all software developers who want to run additional tests. 5.3 Production The NEESit production system is used to test release candidates prior to release. During other stages of the software development process, this system will have the last production software release deployed on it.
11 NEES Software Configuration Management Guidelines 11 of 12 Step 1 Step 2 Step 3 Figure 1: Resolving Fogbugz Issues
12 NEES Software Configuration Management Guidelines 12 of 12 6 Release Management To be written in a future version of this document 7 Software Coding Practices This section provides a list of best practices for NEESit software development. This section will be moved to its own document when the author gets a chance to do so. 1. Get familiar with the Gnu Coding Standards and use them in your development. (See 2. Don t reformat code. This is a really bad thing to do because it makes diffs hard to understand and apply. Real changes get hidden in the mass of reformatting. 3. Use the same coding style as the code you are editing. This is a corollary to the previous last guideline. It is easier for people reading the code if it uses consistent layout rules throughout, so when you are editing someone else's code the code you add should be in the same style. 4) If in doubt, lay down a tag. Tags are useful for pinning down a particular version of the code, e.g. one that is being run in service, or just before a big change or import. They are also used to identify branches. Tag names should be short and meaningful, like variable names. 5) Consider any upgradeability ramifications of your change. a) If you want to build a new and clean API consider deprecating the old procedure and making it invoke the new one. b) If you are changing the database you must provide an upgrade script 6) Comment code liberally. You may think your change is obviously but someone else might not agree four years from now. 7) Don t mix tabs. In fact, don t use tabs at all. NEESit is standardizing to 2 characters per virtual tab. Please use this if you can for all new development. 8) Keep it simple. There is no use in implementing an elegant solution if the person maintaining the code can t understand it. 9) Keep maintainability in mind at all times. 10) Use javadoc for all Java API s and pod for PERL. 11) Try to maintain 80 character lines for all UNIX code. 12) Never rush to commit something. Before committing double check with cvs diff what exactly you are committing. 13) Commit one cohesive bug fix or feature change at a time. Don't put a bunch of unrelated changes into one commit. 14) Keep code simple, adhere to conventions, and use comments liberally.
Software Configuration Management. Addendum zu Kapitel 13
Software Configuration Management Addendum zu Kapitel 13 Outline Purpose of Software Configuration Management (SCM) Motivation: Why software configuration management? Definition: What is software configuration
Configuration & Build Management
Object-Oriented Software Engineering Using UML, Patterns, and Java Configuration & Build Management Outline of the Lecture Purpose of Software Configuration Management (SCM) Some Terminology Software Configuration
Page 1. Outline of the Lecture. What is Software Configuration Management? Why Software Configuration Management?
Books: Software Configuration Management 1. B. Bruegge and A. H. Dutoit, Object-Oriented Software Engineering: Using UML, Patterns, and Java (Chapter 13) Outline of the Lecture Purpose of Software Configuration
Improving database development. Recommendations for solving development problems using Red Gate tools
Improving database development Recommendations for solving development problems using Red Gate tools Introduction At Red Gate, we believe in creating simple, usable tools that address the problems of software
WHITEPAPER. Improving database development
WHITEPAPER Improving database development Introduction At Redgate, we believe in creating simple, usable tools that address the problems of software developers and technology businesses. In considering
Continuous Integration. CSC 440: Software Engineering Slide #1
Continuous Integration CSC 440: Software Engineering Slide #1 Topics 1. Continuous integration 2. Configuration management 3. Types of version control 1. None 2. Lock-Modify-Unlock 3. Copy-Modify-Merge
Continuous Integration and Delivery at NSIDC
National Snow and Ice Data Center Supporting Cryospheric Research Since 1976 Continuous Integration and Delivery at NSIDC Julia Collins National Snow and Ice Data Center Cooperative Institute for Research
BlueJ Teamwork Tutorial
BlueJ Teamwork Tutorial Version 2.0 for BlueJ Version 2.5.0 (and 2.2.x) Bruce Quig, Davin McCall School of Engineering & IT, Deakin University Contents 1 OVERVIEW... 3 2 SETTING UP A REPOSITORY... 3 3
Chapter 13 Configuration Management
Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 13 Configuration Management Outline of the Lecture Purpose of Software Configuration Management (SCM)! Motivation: Why software
SOFTWARE DEVELOPMENT BASICS SED
SOFTWARE DEVELOPMENT BASICS SED Centre de recherche Lille Nord Europe 16 DÉCEMBRE 2011 SUMMARY 1. Inria Forge 2. Build Process of Software 3. Software Testing 4. Continuous Integration 16 DECEMBRE 2011-2
Advanced Service Design
vcloud Automation Center 6.0 This document supports the version of each product listed and supports all subsequent versions until the document is replaced by a new edition. To check for more recent editions
Using GitHub for Rally Apps (Mac Version)
Using GitHub for Rally Apps (Mac Version) SOURCE DOCUMENT (must have a rallydev.com email address to access and edit) Introduction Rally has a working relationship with GitHub to enable customer collaboration
Effective Release Management for HPOM Monitoring
Whitepaper Effective Release Management for HPOM Monitoring Implementing high-quality ITIL-compliant release management processes for HPOM-based monitoring Content Overview... 3 Release Management... 4
UForge 3.4 Release Notes
UForge 3.4 Release Notes This document is for users using and administrating UShareSoft UForge TM Platform v3.4. This document includes the release notes for: UForge TM Factory UForge TM Builder UI UForge
NEESgrid Requirements Traceability Matrix
Technical Report NEESgrid-2003-13 www.neesgrid.org (Whitepaper Version: 1.0) Last modified: June 24, 2003 NEESgrid Requirements Traceability Matrix Thomas A. Finholt, Dan Horn, Suzandeise Thomé 1 1 Collaboratory
Patch Management. Module 13. 2012 VMware Inc. All rights reserved
Patch Management Module 13 You Are Here Course Introduction Introduction to Virtualization Creating Virtual Machines VMware vcenter Server Configuring and Managing Virtual Networks Configuring and Managing
Leveraging Rational Team Concert's build capabilities for Continuous Integration
Leveraging Rational Team Concert's build capabilities for Continuous Integration Krishna Kishore Senior Engineer, RTC IBM [email protected] August 9-11, Bangalore August 11, Delhi Agenda What
Software Continuous Integration & Delivery
November 2013 Daitan White Paper Software Continuous Integration & Delivery INCREASING YOUR SOFTWARE DEVELOPMENT PROCESS AGILITY Highly Reliable Software Development Services http://www.daitangroup.com
TestOps: Continuous Integration when infrastructure is the product. Barry Jaspan Senior Architect, Acquia Inc.
TestOps: Continuous Integration when infrastructure is the product Barry Jaspan Senior Architect, Acquia Inc. This talk is about the hard parts. Rainbows and ponies have left the building. Intro to Continuous
Achieving Continuous Integration with Drupal
23 Au gu Achieving Continuous Integration with Drupal st 20 12 Achieving Continuous Integration with Drupal Drupalcon Munich 2012 Barry Jaspan [email protected] The Evolution of a Drupal Developer
LECTURES NOTES Organisational Aspects of Software Development
LECTURES NOTES Organisational Aspects of Software Development Pedro Contreras Department of Computer Science Royal Holloway, University of London Egham, Surrey TW20 0EX, UK [email protected] 1. Introduction
Installing (1.8.7) 9/2/2009. 1 Installing jgrasp
1 Installing jgrasp Among all of the jgrasp Tutorials, this one is expected to be the least read. Most users will download the jgrasp self-install file for their system, doubleclick the file, follow the
CISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011
CISC 275: Introduction to Software Engineering Lab 5: Introduction to Revision Control with Charlie Greenbacker University of Delaware Fall 2011 Overview Revision Control Systems in general Subversion
Software configuration management
Software Engineering Theory Software configuration management Lena Buffoni/ Kristian Sandahl Department of Computer and Information Science 2015-09-30 2 Maintenance Requirements System Design (Architecture,
Chapter 13 Configuration Management
Chapter 13 Configuration Management Using UML, Patterns, and Java Object-Oriented Software Engineering Outline of the Lecture Purpose of Software Configuration Management (SCM)! Motivation: Why software
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module June, 2015 WHITE PAPER Contents Advantages of IBM SoftLayer and RackWare Together... 4 Relationship between
"Code management in multi programmer environments."
Another installment in the 'Computing in high energy physics' series (16 02 2004). "Code management in multi programmer environments." Author: D. Hatton (DESY/Hamburg) Table of Contents: 1. Overview 2.
Deploying Dell OpenManage Server Administrator on VMware ESXi Using Dell Online Depot and VMware Update Manager
Deploying Dell OpenManage Server Administrator on VMware ESXi Using Dell Online Depot and VMware Update Manager July 2013 Deepti Madhu Krishnaprasad K Deploying Dell OpenManage Server Administrator on
GLOBAL CONSULTING SERVICES TOOLS FOR WEBMETHODS. 2015 Software AG. All rights reserved. For internal use only
GLOBAL CONSULTING SERVICES TOOLS FOR WEBMETHODS CONSULTING TOOLS VALUE CREATING ADD-ONS REDUCE manual effort time effort risk 6 READY-TO- USE TOOLS MORE COMING SOON SIMPLE PRICING & INSTALLATION INCREASE
Report of the LHC Computing Grid Project. Software Management Process RTAG CERN
Report of the LHC Computing Grid Project Software Management Process RTAG Marco Cattaneo, Gabriele Cosmo, Simon George, Fons Rademakers (chair), Stephan Wynhoff CERN 6 May 2002 Table of Contents 1 Chair
Software Construction
Software Construction Martin Kropp University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Learning Target You can explain the importance of continuous integration
Upping the game. Improving your software development process
Upping the game Improving your software development process John Ferguson Smart Principle Consultant Wakaleo Consulting Email: [email protected] Web: http://www.wakaleo.com Twitter: wakaleo Presentation
IBM WebSphere Application Server Version 7.0
IBM WebSphere Application Server Version 7.0 Centralized Installation Manager for IBM WebSphere Application Server Network Deployment Version 7.0 Note: Before using this information, be sure to read the
Version Control with Subversion
Version Control with Subversion Introduction Wouldn t you like to have a time machine? Software developers already have one! it is called version control Version control (aka Revision Control System or
Continuous Integration: Put it at the heart of your development
Continuous Integration: Put it at the heart of your development Susan Duncan Tools Product Manager, Oracle 1 Program Agenda What is CI? What Does It Mean To You? Make it Hudson Evolving Best Practice For
XSEDE Service Provider Software and Services Baseline. September 24, 2015 Version 1.2
XSEDE Service Provider Software and Services Baseline September 24, 2015 Version 1.2 i TABLE OF CONTENTS XSEDE Production Baseline: Service Provider Software and Services... i A. Document History... A-
Apache Jakarta Tomcat
Apache Jakarta Tomcat 20041058 Suh, Junho Road Map 1 Tomcat Overview What we need to make more dynamic web documents? Server that supports JSP, ASP, database etc We concentrates on Something that support
SOA-14: Continuous Integration in SOA Projects Andreas Gies
Distributed Team Building Principal Architect http://www.fusesource.com http://open-source-adventures.blogspot.com About the Author Principal Architect PROGRESS - Open Source Center of Competence Degree
CS108, Stanford Handout #33. CVS in Eclipse
CS108, Stanford Handout #33 Winter, 2006-07 Nick Parlante CVS in Eclipse Source Control Any modern software project of any size uses "source control" Store all past revisions - Can see old versions, see
Putting It All Together. Vagrant Drush Version Control
Putting It All Together Vagrant Drush Version Control Vagrant Most Drupal developers now work on OSX. The Vagarant provisioning scripts may not work on Windows without subtle changes. If supplied, read
Efficient Automated Build and Deployment Framework with Parallel Process
Efficient Automated Build and Deployment Framework with Parallel Process Prachee Kamboj 1, Lincy Mathews 2 Information Science and engineering Department, M. S. Ramaiah Institute of Technology, Bangalore,
using version control in system administration
LUKE KANIES using version control in system administration Luke Kanies runs Reductive Labs (http://reductivelabs.com), a startup producing OSS software for centralized, automated server administration.
MDSplus Automated Build and Distribution System
PSFC/JA-13-23 MDSplus Automated Build and Distribution System Fredian T.W., Stillerman J.A.*, Manduchi G.** * Plasma Science and Fusion Center, MIT ** Consorzio RFX, Euratom-ENEA Association, Padova,Italy
Delivering Quality Software with Continuous Integration
Delivering Quality Software with Continuous Integration 01 02 03 04 Unit Check- Test Review In 05 06 07 Build Deploy Test In the following pages we will discuss the approach and systems that together make
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module June, 2015 WHITE PAPER Contents Advantages of IBM SoftLayer and RackWare Together... 4 Relationship between
Database Services for Physics @ CERN
Database Services for Physics @ CERN Deployment and Monitoring Radovan Chytracek CERN IT Department Outline Database services for physics Status today How we do the services tomorrow? Performance tuning
Installing and Administering VMware vsphere Update Manager
Installing and Administering VMware vsphere Update Manager Update 1 vsphere Update Manager 5.1 This document supports the version of each product listed and supports all subsequent versions until the document
Continuous Integration
Continuous Integration Collaborative development issues Checkout of a shared version of software ( mainline ) Creation of personal working copies of developers Software development: modification of personal
OFBiz Addons goals, howto use, howto manage. Nicolas Malin, Nov. 2012
OFBiz Addons goals, howto use, howto manage Nicolas Malin, Nov. 2012 Agenda History of a birth Addons principle Addons and their environment (extensive program) Conclusion Once upon a time The history
StriderCD Book. Release 1.4. Niall O Higgins
StriderCD Book Release 1.4 Niall O Higgins August 22, 2015 Contents 1 Introduction 3 1.1 What Is Strider.............................................. 3 1.2 What Is Continuous Integration.....................................
Software Configuration Management and Continuous Integration
1 Chapter 1 Software Configuration Management and Continuous Integration Matthias Molitor, 1856389 Reaching and maintaining a high quality level is essential for each today s software project. To accomplish
TIME. Programming in the large. Lecture 22: Configuration Management. Agenda for today. About your Future. CM: The short version. CM: The long version
1 2 Last update: 17 June 2004 Programming in the large Bertrand Meyer Lecture 22: Configuration Management Bernd Schoeller [email protected] Agenda for today 3 About your Future 4 Motivation
Content. Development Tools 2(63)
Development Tools Content Project management and build, Maven Version control, Git Code coverage, JaCoCo Profiling, NetBeans Static Analyzer, NetBeans Continuous integration, Hudson Development Tools 2(63)
Beginners guide to continuous integration. Gilles QUERRET Riverside Software
Beginners guide to continuous integration Gilles QUERRET Riverside Software About the speaker Working with Progress and Java since 10 years Started Riverside Software 7 years ago Based in Lyon, France
Version Uncontrolled! : How to Manage Your Version Control
Version Uncontrolled! : How to Manage Your Version Control Harold Dost III, Raastech ABSTRACT Are you constantly wondering what is in your production environment? Do you have any doubts about what code
Introduction site management software
Web Testing Introduction Making a web site does not end with putting all the media and software together. Actually, web site work never ends. When all the design is done, you have to test the site first
Mastering Continuous Integration with Jenkins
1. Course Objectives Students will walk away with a solid understanding of how to implement a Continuous Integration (CI) environment with Jenkins, including: Setting up a production-grade instance of
Continuous integration End of the big bang integration era
Continuous integration End of the big bang integration era Patrick Laurent Partner Technology & Enterprise Applications Deloitte Mario Deserranno Manager Technology & Enterprise Applications Deloitte The
An Introduction to Software Development Process and Collaborative Work
Organisational Aspects of Software Development Pedro Contreras Department of Computer Science Royal Holloway, University of London January 29, 2008 Introduction Creating software is a complex task. Organising
Surround SCM Best Practices
Surround SCM Best Practices This document addresses some of the common activities in Surround SCM and offers best practices for each. These best practices are designed with Surround SCM users in mind,
Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI)
Sonatype CLM Enforcement Points - Continuous Integration (CI) i Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI) ii Contents 1
Managing Applications: How much money can you save with a Collaborative Workflow tool?
Managing Applications: How much money can you save with a Collaborative Workflow tool? Abstract In recent years the application has become king. For a business to remain competitive it needs to manage
Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation
Practicing Continuous Delivery using Hudson Winston Prakash Oracle Corporation Development Lifecycle Dev Dev QA Ops DevOps QA Ops Typical turn around time is 6 months to 1 year Sprint cycle is typically
Software Configuration Management
Software Configuration Management 1 Software Configuration Management Four aspects Version control Automated build Change control Release Supported by tools Requires expertise and oversight More important
Version Control. Luka Milovanov [email protected]
Version Control Luka Milovanov [email protected] Configuration Management Configuration management is the management of system change to software products Version management: consistent scheme of version
Software Configuration Management
Reto Bonderer [email protected] University of Applied Sciences Chur V 1.01 2002, R. Bonderer 1 Learning Goals The participant knows why configuration management is important knows what version,
The Benefits of Utilizing a Repository Manager
Sonatype Nexus TM Professional Whitepaper The Benefits of Utilizing a Repository Manager An Introduction to Sonatype Nexus TM Professional SONATYPE www.sonatype.com [email protected] +1 301-684-8080 12501
The Real Challenges of Configuration Management
The Real Challenges of Configuration Management McCabe & Associates Table of Contents The Real Challenges of CM 3 Introduction 3 Parallel Development 3 Maintaining Multiple Releases 3 Rapid Development
Documentation and Project Organization
Documentation and Project Organization Software Engineering Workshop, December 5-6, 2005 Jan Beutel ETH Zürich, Institut TIK December 5, 2005 Overview Project Organization Specification Bug tracking/milestones
My DevOps Journey by Billy Foss, Engineering Services Architect, CA Technologies
About the author My DevOps Journey by Billy Foss, Engineering Services Architect, CA Technologies I am going to take you through the journey that my team embarked on as we looked for ways to automate processes,
CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)
Today: Source code control CPSC 491 Source Code (Version) Control Exercise: 1. Pretend like you don t have a version control system (e. g., no git, subversion, cvs, etc.) 2. How would you manage your source
Siebel Installation Guide for UNIX. Siebel Innovation Pack 2013 Version 8.1/8.2, Rev. A April 2014
Siebel Installation Guide for UNIX Siebel Innovation Pack 2013 Version 8.1/8.2, Rev. A April 2014 Copyright 2005, 2014 Oracle and/or its affiliates. All rights reserved. This software and related documentation
Implementing Continuous Integration Testing Prepared by:
Implementing Continuous Integration Testing Prepared by: Mr Sandeep M Table of Contents 1. ABSTRACT... 2 2. INTRODUCTION TO CONTINUOUS INTEGRATION (CI)... 3 3. CI FOR AGILE METHODOLOGY... 4 4. WORK FLOW...
SOA REFERENCE ARCHITECTURE: WEB TIER
SOA REFERENCE ARCHITECTURE: WEB TIER SOA Blueprint A structured blog by Yogish Pai Web Application Tier The primary requirement for this tier is that all the business systems and solutions be accessible
ITIL A guide to service asset and configuration management
ITIL A guide to service asset and configuration management The goal of service asset and configuration management The goals of configuration management are to: Support many of the ITIL processes by providing
Best Overall Use of Technology. Jaspersoft
Best Overall Use of Technology Jaspersoft Kerstin Klein Manager, Engineering Processes/ Infrastructure, Jaspersoft From requirements to release QA centric development From Requirement to Release QA-Centric
November 12 th 13 th London: Mastering Continuous Integration with Jenkins
1. Course Objectives Students will walk away with a solid understanding of how to implement a Continuous Integration (CI) environment, including: Setting up a production-grade instance of a Jenkins server,
DATABASE VIRTUALIZATION AND INSTANT CLONING WHITE PAPER
DATABASE VIRTUALIZATION AND INSTANT CLONING TABLE OF CONTENTS Brief...3 Introduction...3 Solutions...4 Technologies....5 Database Virtualization...7 Database Virtualization Examples...9 Summary....9 Appendix...
<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style
Introducing Hudson Click to edit Master subtitle style Winston Prakash What is Hudson? Hudson is an open source continuous integration (CI) server. A CI server can do various tasks
SOE. managing change in system development projects: configuration management
SOE managing change in system development projects: configuration management 2 3 understanding the problem of change change is one of the most fundamental characteristics in any software development process
Scheduling in SAS 9.3
Scheduling in SAS 9.3 SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc 2011. Scheduling in SAS 9.3. Cary, NC: SAS Institute Inc. Scheduling in SAS 9.3
Liferay Portal 4.0 - User Guide. Joseph Shum Alexander Chow
Liferay Portal 4.0 - User Guide Joseph Shum Alexander Chow Liferay Portal 4.0 - User Guide Joseph Shum Alexander Chow Table of Contents Preface... viii User Administration... 1 Overview... 1 Administration
Continuous Integration Optimizing Your Release Management Process
Continuous Integration Optimizing Your Release Management Process Continuous Integration? Why should I care? What s in it for me? Continuous Integration? Why should I care? What s in it for me? The cost
Continuous Integration using Docker & Jenkins
Jenkins LinuxCon Europe 2014 October 13-15, 2014 Mattias Giese Solutions Architect [email protected] - Linux/Open Source Consulting, Training, Support & Development Introducing B1 Systems founded in
What's New In DITA CMS 4.0
What's New In DITA CMS 4.0 WWW.IXIASOFT.COM / DITACMS v. 4.0 / Copyright 2014 IXIASOFT Technologies. All rights reserved. Last revised: December 11, 2014 Table of contents 3 Table of contents Chapter
ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved
ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved 1 1. Update Before you start updating, please refer to 2. Important changes to check if there are any additional instructions
Embarcadero DB Change Manager 6.0 and DB Change Manager XE2
Product Documentation Embarcadero DB Change Manager 6.0 and DB Change Manager XE2 User Guide Versions 6.0, XE2 Last Revised April 15, 2011 2011 Embarcadero Technologies, Inc. Embarcadero, the Embarcadero
Continuous Integration: A case study
Continuous Integration: A case study Vaibhav Kothari Talentica Software (I) Pvt ltd 1 Abstract Developer s dilemma QA s dilemma Continuous Integration? Case study What is accomplished? Benefits of CI Recommended
NetBeans IDE Field Guide
NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting
Please see below open positions at Quality Assurance Department at Hyland, creator of OnBase.
Careers at Hyland Please see below open positions at Quality Assurance Department at Hyland, creator of OnBase. If you are interested in learning more about other open roles, please visit the following
CONTINUOUS INTEGRATION
CONTINUOUS INTEGRATION REALISING ROI IN SOFTWARE DEVELOPMENT PROJECTS In the following pages we will discuss the policies and systems that together make up the process called Continuous Integration. This
