• Definitions of Continuous Integration components.

    The bottom of certain sections contains a line to additional information on the particular CI component. ESP believes it is important to be familiar with some of the terminology before spending a good amount of time reading about it.



    Continuous Integration (CI)
    Continuous Integration (CI) is the strategy of making sure that changes to the project’s code base are built, tested, reported on, and rapidly made available to all parties after they are introduced. This framework frees up developers from having to constantly create new builds for the Test and QA groups. Each subsequent build is established and promoted, then downloaded automatically for testing.

    Ref: http://www.theserverside.net/articles/showarticle.tss?id=ContinuousIntegration



    Visual Source Safe (VSS)
    Microsoft’s Visual Source Safe (VSS) helps to manage projects regardless of the file type - (e.g. text files, graphics files, binary files, sound files, or video files) by saving them to a database. When a file is added to VSS, the file is backed up on the database, made available to other people, and changes that have been made to the file are saved so old versions can be recovered an at any time. Members of the team can see the latest version of any file, make changes, and save a new version in the database.



    Source Off Site (SOS)
    Source Off Site (SOS) provides a collaboration environment for users of Microsoft Visual SourceSafe 6.0 (VSS). SOS Collab combines source code control and bug tracking tool together with collaboration tools such as chat, discussion groups, and notifications.

    The SOS Collab Servers directory does not contain any project data. All information is stored in the SQL database, located in the SQL installation folder.

    SOS servers need to have VSS database on same machine or same LAN as the SOS Collab Server and VSS 6.0 APIs (installed with VSS 6.0 Client) on the same machine.



    Successful Build
    An aggressive goal for a successful build would include:
    - All the latest sources are checked out of the configuration management system.

    - Every file is compiled from scratch.
    - The resulting object files are linked and deployed for execution.
    - The system is started and a suite of tests is run against the system.
    - If all of the above execute without error or human intervention and every test passes, that is a successful build.
    Ref: http://www.martinfowler.com/articles/continuousIntegration.html



    Build Promotion
    Promoting a build means copying it to the target server. The build must not be rebuilt but rather moved. Therefore there is the need to identify and archive builds in a build promotion process (Section 6.0 Build Promotion Process) as builds are created.

    Ref: http://www.15seconds.com/issue/040810.htm



    Web Development Models (under VSS)
    This defines Microsoft’s suggested approach Web Application development in a team environment. It is strongly advised to adopt the “Isolated” development model shown in Figure 1 for team developments because it offers a number of significant advantages, for instance, each individual can continue working on a Web Application without the worry of another developer making a change conflicting with their own.

    With the Isolated model, development (edit, debug and run) is in complete isolation on the developer’s workstation using a local Web server (http://localhost). Access to the master source files is controlled via a Microsoft Visual SourceSafe (VSS) database located on a network file share.

    Ref: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/tdlg_ch2.asp



    NAnt
    NAnt is an open source .NET build tool used to compile .NET applications.



    NAntContrib
    NAntContrib is the Project application for tasks and tools for NAnt. It provides extra tasks and tools that are not present in NAnt.



    Draco.NET
    Draco.NET is a Windows Service Application designed to facilitate Continuous Integration. Draco.NET monitors the source code repository, automatically rebuilds a project when changes are detected and then emails the build result along with a list of changes since the last build.
    Draco.NET version 1.5 supports builds using NAnt build tool or via Visual Studio .NET 2002/2003 solution files.



    NDoc
    NDoc generates class library documentation from .NET assemblies and the XML doc files generated by the C# compiler (or with an add-on tool for VB.NET). It is used by NAnt build tool to automatically generate library documentation.



    NUnit
    A Unit-testing framework for all .NET languages. NUnit is built within NAnt and exposed as a NAnt task.



    NUnitForms
    NUnitForms is a tool extended from NUnit for automatically testing Windows Forms applications written on .NET.



    FxCop
    FxCop is a code analysis tool that checks .NET managed code assemblies for conformance to the Microsoft .NET Framework Design Guidelines. It uses reflection, MSIL parsing, and calls graph analysis to inspect assemblies for more than 200 defects in the following areas: Library design, Localization, Naming conventions, Performance, and Security.

    FxCop includes both GUI and command line versions of the tool, as well as a SDK to create custom rules.



    CruiseControl.NET
    CruiseControl.NET is similar to Draco.NET that can monitor the source code repository and automatically rebuilds a project when changes are detected. It has several extra features when compared to Draco.NET.

    Ref: http://confluence.public.thoughtworks.org/display/CCNET/What+is+CruiseControl.NET

    Source of Information : Enterprise Solution Providers, Inc. 2005 – v1.0


0 comments:

Leave a Reply