SCMWise.com

Agile Continuous Integration


Definition

Agile Continuous Integration is the software build processes and procedures that support the Agile Development Methodology.

Continuous Integration, CI, is the process of building your application on every new source code check-in.

Although, considered a relatively new idea, the concept behind CI has been around for as long as development teams have been writing code.


The Problem

The long standing problem for software development teams have been the integration of the new code and the stability of the application.

The integration would be so painful that many development teams would put off integration until they thought they were code complete.

The problem with that particular idea was no one could accurately predict how long it would take to complete the integration. In some cases, the integration could take as long as the coding for a new release.



Continuous Integration Benefits

  • Instant build feedback
  • Increased code stability
  • Efficient and fast bug detection
  • Increased development speed


Agile Links

Agile Software

Agile SCM

Agile Source Code

Agile Continuous Integration


Software Development Life Cycle Methodologies

There are several different Software Development Life Cycle Methods.

Some have been around for years and years and some are relatively new.

For more information about Software Development Life Cycles Models


Software Development Process

Software Development Processes are standards that a Software Development Team uses to help manage, control and report on their software development.

Here are some very typical SDP Steps:

  • Plan
  • Define
  • Construct
  • Test
  • Deploy

For more information about Software Development Processes


Software Engineering Best Practices

There are many Software Engineering Best Practices.

Here are some of the more commonly used SE Best Practices

  • Iteratively Develop Software
  • Actively Manage Specifications and Requirements
  • Develop and Leverage Component-based Software
  • Continuously Review and Improve your Software Development Practices
  • Verify and Quantify Software Quality
  • Manage Software Change

For more information about Software Engineering Best Practices


Software Engineering

The IEEE Computer Society defines Software Engineering as the application of a systematic, disciplined and quantifiable approach to the development, maintenance and operation of software.

For more information about Software Engineering



Software Build Table of Contents

Software Build Build automation is the process of combining all the steps necessary to compile the source code into build artifacts into a one step process. This can include many different types of tasks depending on the technologies involved.

Agile Continuous Integration Agile Continuous Integration naturally supports the Agile Development process of small and frequent releases. Continuous Integration, CI, is the process of building your application on every new source code check-in. Although, considered a relatively new idea, the concept behind CI has been around for as long as development teams have been writing code.

Automated Builds Automated Build Process - Automating your software build process is a fundamental step in maturing your software development process. The only way to accurately predict build results, ensure build reproducibility and guarantee minimal development down time due to build issues is to fully automate the build process.

Build Automation Build Automation is the key to implementing a successful Agile development methodology. In its basic form The Build is the conversion of source code into binaries. However, there is much more to building software than just compiling code.

Build Management Build Management is the process of assembling all the components of a software application into an installable software product. For development teams looking to increase efficiencies and improve quality of their software, one of the most important places focus is the software build process.

Continuous Integration Continuous Integration, CI, is the process of building your application on every new source code check in. Although, considered a relatively new idea, the concept behind CI has been around for as long as development teams have been writing code. CI is an integral part of Software Configuration Management, SCM.

CruiseControl CruiseControl is an open source tool setup specifically to perform continuous integration software builds. This page is high level overview of CC and its functionality and benefits. Software build tools like CC are an integral part of your Software Configuration Management System.

CruiseControl.Net CruiseControl.Net is an open source tool that facilitates the integration of software builds. This page is an overview of the CC.Net Tool and Process.

Maven Maven is a tool that can now be used for building and managing any Java-based project.

Software Build Best Practices Software Build Best Practices are the procedures and processes that ensure software build integrity, repeatability and reproducibility. Best Practices are practices and techniques that are the most effective way of ensuring repeatability of a process. Build Best Practices are an integral part of Software Configuration Management, SCM.



SCMWise Configuration Spec



© Copyright 2007 - 2016
Powered by Site Build It!
Page copy protected against web site content infringement by Copyscape SCMWise.com's Privacy Policy
ADD TO YOUR SOCIAL BOOKMARKS: add to BlinkBlink add to Del.icio.usDel.icio.us add to DiggDigg
add to FurlFurl add to GoogleGoogle add to SimpySimpy add to SpurlSpurl Bookmark at TechnoratiTechnorati add to YahooY! MyWeb