Internet-speed development: Difference between revisions

Content deleted Content added
wikify template
Changing short description from "An agile software development method" to "Agile software development method"
 
(46 intermediate revisions by 34 users not shown)
Line 1:
{{Short description|Agile software development method}}
{{wikify}}
'''Internet-Speed development''' is an [[Agile Software Development]] development method using a combined [[spiral model]]/[[waterfall model]] with daily builds aimed at developing a product with high speed.
==What is Internet-Speed Development==
'''Internet-Speed Development''' is an [[Agile Software Development]] development method using a combined [[spiral model]]/[[waterfall model]] with daily builds aimed at developing a product with high speed.
 
It was developed in the late nineties because software development changeswas changing greatlyrapidly. Companies were having problems delivering products with the correct requirements within the time scheduled for the project and as such were changing to more agile software development methods. More details about how the internet-speed method was developed can be seen in the evolutionary map in the paper of Abrahamsson.<ref>Pekka [4]Abrahamsson, Juhani Warsta, Mikko T. Siponen, Jussi Ronkainen 2003</ref>
 
===Main ideas behind Internet-Speed Development===
Often one of the biggest problems in software engineering is that the requirements change quickly and the internet-speed development method was created to adapt to this situation. The idea is to combine two main standards in software engineering models namely the spiral model and the waterfall model into a new model and base a new software engineering method on this new model. The main disadvantage of the waterfall model was that isit was very rigid and not very flexible when it comes to changes in requirements, while the disadvantage of the spiral model was that isit was not very structured. The idea behind internet-speed development is that the combination of these models will result in a method which does not have these disadvantages and is a better method to use in situations where requirements can change rapidly, but the project has to be executed in a structured way.
 
===Goal of the method===
The goal of the internet-speed development method is to allow software developers to perform a project in a structured way, but still be able to adapt to the needs of the customer. It aims to deliver a software product in a short time through intensive development. The method provides a means to deliver a fully implemented system and also has ways to determine progress in a project through the use of milestones. One of the main versions of this method is created by Microsoft and is called the Microsoft Solutions Framework.
 
The goal of the internet-speed development method is to allow software developers to perform a project in a structured way, but still be able to adapt to the needs of the customer. It aims to deliver a software product in a short time through intensive development. The method provides a means to deliver a fully implemented system and also has ways to determine progress in a project through the use of milestones. One of the main versions of this method is created by Microsoft and is called the [[Microsoft Solutions Framework]].
 
==The concepts behind Internet-speed development method==
The first concept that is very important to internet-speed development is the creation of a vision and [[scope (project management)]]. What this means is that in the beginning of the project a global definition of the system is created which explains what the system aims to be and what is within the scope and what is not. This is one of the fundamental steps as it gives the developers some guidelines as to what the system will be without freezing any requirements. The scope can be documented in a [[vision statement]].
 
Another very important concept within this method is scope management. The scope needs to be managed throughout the project to prevent scope creeping which results in delays. The scope will be determined early and changes to the scope (like adding additional features which were at first considered beyond the scope of the project) will be evaluated and either accepted or rejected. Changes in the scope can be made but this will always be affected by trade offs between features, resources and time.
Another very important concept within this method is scope management. The scope needs to be managed throughout the project to prevent [[scope creep]]ing which results in delays. The scope will be determined early and changes to the scope (like adding additional features which were at first considered beyond the scope of the project) will be evaluated and either accepted or rejected. Changes in the scope can be made but this will always be affected by trade offs between features, resources and time.
 
The internet-speed development method is very different from the traditional methods and therefore uses Agile method principles. It focuses on adaptation to requirements and as such is based on the basic principles of Agile software development.
Internet-speed development also focuses on using one fixed framework architecture from which the product is build and relies heavily on tools to increase the development speed.
Another basic concept of internet-speed development is that it also focuses on using small teams. The idea is that all projects can be divided into smaller activities which often can be done parallel. Smaller teams can often be more focused on their task and it is easier to determine accountability and monitor progress within the project.
The last concept discussed in this entry of internet-speed development is the concept of parallel development. This concept basically means that all the software development is done in parallel as often as possible. This will allow very quick development and it allows the smaller teams to focus on their own feature as much as possible which has a good result on quality. To ensure that the smaller teams do work together to create the final system it is however needed to synchronize their development frequently. This can be done using [[daily build]]s which means that all the developers check their code in at the end of the day after which a build is created which can then be evaluated and tested to monitor progress. After a feature is completed in the build in needs to be tested and refined which is sometimes called the synch-and-stabilize process. The developed features are synchronized with the build and tested. After these tests any bugs will be corrected and the feature can be refined to work better (which is the stabilization part).
 
Internet-speed development also focuses on using one fixed framework architecture from which the product is built and relies heavily on tools to increase the development speed.
Internet-speed development is based on the agile principles and as such it has a lot of similarities with [[Extreme Programming]], [[RUP]], [[DSDM]] and [[Feature Driven Development]]. Internet-speed development is different however from these methods as it also incorporates a more extensive risk-management planning and has quality as a very important objective of a project (as shown in the paper of Zuser, Heil and Grechening [3]). The development phase of Internet-speed development also shows some similarities with the [[open-source software]] development model because many different developers around the globe can be part of the development process because of communication through the Internet and the use of repositories for storing the code and documentation.
 
Another basic concept of internet-speed development is that it also focuses on using small teams. The idea is that all projects can be divided into smaller activities which often can be done parallel. Smaller teams can often be more focused on their task and it is easier to determine accountability and monitor progress within the project.
==The phases of Internet-Speed Development ==
The model behind this method looks like this:
 
The last concept discussed in this entry of internet-speed development is the concept of parallel development. This concept basically means that all the software development is done in parallel as often as possible. This will allow very quick development and it allows the smaller teams to focus on their own feature as much as possible which has a good result on quality. To ensure that the smaller teams do work together to create the final system it is however needed to synchronize their development frequently. This can be done using [[daily build]]s which means that all the developers check their code in at the end of the day after which a build is created which can then be evaluated and tested to monitor progress. After a feature is completed in the build it needs to be tested and refined which is sometimes called the synch-and-stabilize process. The developed features are synchronized with the build and tested. After these tests any bugs will be corrected and the feature can be refined to work better (which is the stabilization part).
[[Image:PhaseModel.jpg]]
 
Internet-speed development is based on the agile principles and as such it has a lot of similarities with [[Extreme Programming]], [[Rational Unified Process]], [[Dynamic systems development method|DSDM]] and [[Feature Driven Development]]. Internet-speed development is different however from these methods as it also incorporates a more extensive risk-management planning and has quality as a very important objective of a project.<ref>As shown in the paper of Zuser, Heil and Grechening.</ref> The development phase of Internet-speed development also shows some similarities with the [[open-source software]] development model because many developers around the globe can be part of the development process because of communication through the Internet and the use of repositories for storing the code and documentation.
''Figure 1: Phase model''
 
==The phases of Internet-Speed Development==
The model behind this method looks like this:
[[File:PhaseModel.jpg]]
''Figure 1: Phase model''
This model shows the five basic phases of the method. These phases will be explained in the following sections of this entry. The phases are: Envisioning, Planning, Developing, Stabilizing and Deploying. After this cycle has been completed a version of the system is ready and a new cycle begins to create a new version. The phases are explained in the following sections and are shown through a [[meta-modeling]] technique. More details about multiplicities and concepts in a project context can be seen in the overall data model later on.
 
===Envisioning phase===
The envisioning phase can be modeled as followedfollows:
[[File:Envisioning.jpg]]
 
[[Image:Envisioning.jpg]]
 
''Figure 2: Envisioning phase process/data model''
{| class="wikitable"
 
|-
<TABLE WIDTH=581 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
! Activity
<TR VALIGN=TOP>
! Definition (source)
<TD WIDTH=194>
|-
<P>Activity</P>
|Analyze requirements
</TD>
|During the envisioning phase, business requirements must be identified and analyzed.
<TD WIDTH=357>
“These are refined more rigorously during the planning phase.”
<P>Definition (source)</P>
(MSF Process model)<ref name="ReferenceA">Microsoft Solutions White Paper June 2002</ref>
</TD>
|-
</TR>
| Define Goals and Constraints
<TR VALIGN=TOP>
|“Envisioning, by creating a high-level view of the project’s goals and constraints.”
<TD WIDTH=194>
(MSF Process model)<ref name="ReferenceA"/>
<P STYLE="margin-bottom: 0cm">Analyze requirements</P>
|-
<P><BR>
|Form Team
</P>
| Formation of the core team.
</TD>
|-
<TD WIDTH=357>
| Create Vision/scope
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">During
| “The preparation and delivery of a vision/scope document.”
the envisioning phase, business requirements must be identified
(MSF Process model)<ref name="ReferenceA"/>
and analyzed.</FONT></FONT></FONT></SPAN></P>
|-
<P STYLE="margin-bottom: 0cm">These are refined more rigorously
| Create Risk assessment
during the planning phase.”</P>
| “During the envisioning phase, the team prepares a risk document and presents the top risks.”
<P>(MSF Process model[1])</P>
(MSF Process model)<ref name="ReferenceA"/>
</TD>
|}
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Define Goals and Constraints</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Envisioning,
by creating a high-level view of the project’s goals and
constraints.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>Form Team</P>
</TD>
<TD WIDTH=357>
<P>Formation of the core team.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>Create Vision/scope</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">The
preparation and delivery of a vision/scope document.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>Create Risk assessment</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">During
the envisioning phase, the team prepares a risk document and
presents the top risks.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
</TABLE>
''Table 1: Envisioning activities''
 
The basic activities performed in the envisioning phase are analyzing the requirements, forming the team for the project, determining the risks and the scope of the project. From the requirements and the goals of the project a Vision/Scope document is created. This document describes what the product is to be when it is delivered. It does not contain very detailed functionalities of the product.
{| class="wikitable"
From the requirements and the goals of the project a Vision/Scope document is created. This document describes what the product is to be when it is delivered. It does not contain very detailed functionalities of the product.
|-
! Concept
! Definition (source)
|-
| VISION/SCOPE DOCUMENT
| “Document defining the Vision and Scope.”
 
(MSF Process model)<ref name="ReferenceA"/>
<TABLE WIDTH=579 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
|-
<TR VALIGN=TOP>
| VISION
<TD WIDTH=220>
| “''Vision''is an unbounded view of what a solution may be.”
<P>Concept</P>
 
</TD>
(MSF Process model)<ref name="ReferenceA"/>
<TD WIDTH=329>
|-
<P>Definition (source)</P>
| SCOPE
</TD>
| “''Scope'' identifies the part(s) of the vision can be accomplished within the project constraints.”
</TR>
 
<TR VALIGN=TOP>
(MSF Process model)<ref name="ReferenceA"/>
<TD WIDTH=220>
|-
<P>VISION/SCOPE DOCUMENT</P>
| RISK ASSESSMENT DOCUMENT
</TD>
| “Standardized document for Risk Assessment”
<TD WIDTH=329>
 
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Document
(MSF Risk Management Discipline)<ref name="ReferenceB">Microsoft Risk Management Discipline White Paper</ref>
defining the Vision and Scope.”</FONT></FONT></FONT></SPAN></P>
|-
<P>(MSF Process model[1])</P>
| PRIORITIZED RISK LIST
</TD>
| “Detailed risk information including project condition, context, root cause, and the metrics used for prioritization (probability, impact, exposure) are often recorded for each risk in the risk statement form.”
</TR>
 
<TR VALIGN=TOP>
(MSF Risk Management Discipline)<ref name="ReferenceB"/>
<TD WIDTH=220>
|-
<P>VISION</P>
| RISK PLANNING
</TD>
| “Translation of the prioritized risk list into action plans.”
<TD WIDTH=329>
 
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif"><I>Vision
(MSF Risk Management Discipline)<ref name="ReferenceB"/>
</I>is an unbounded view of what a solution may be.“</FONT></FONT></FONT></SPAN></P>
|-
<P>(MSF Process model[1])</P>
| PROJECT STRUCTURE DOCUMENT
</TD>
| “The project structure document includes information on how the team is organized and who plays which roles and has specific responsibilities. The project structure document also clarifies the chain of accountability to the customer and designated points of contact that the project team has with the customer. These can vary depending on the circumstances of the project.”
</TR>
 
<TR VALIGN=TOP>
(MSF Process model)<ref name="ReferenceA"/>
<TD WIDTH=220>
|-
<P>SCOPE</P>
| TEAM ORGANIZATION
</TD>
| “Information on how the team is organized.”
<TD WIDTH=329>
 
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif"><I>Scope
(MSF Process model)<ref name="ReferenceA"/>
</I>identifies the part(s) of the vision can be</FONT></FONT></FONT></SPAN></P>
|-
<P STYLE="margin-bottom: 0cm">accomplished within the project
| CONTACT POINTS
constraints.”
| “Designated points of contact that the project team has with the customer.”
</P>
 
<P>(MSF Process model[1])</P>
(MSF Process model)<ref name="ReferenceA"/>
</TD>
|-
</TR>
| TEAM ROLES
<TR VALIGN=TOP>
| “Definition of who plays which roles and has specific responsibilities.”
<TD WIDTH=220>
 
<P>RISK ASSESSMENT DOCUMENT</P>
(MSF Process model)<ref name="ReferenceA"/>
</TD>
|}
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Standardized
document for Risk Assessment“</FONT></FONT></FONT></SPAN></P>
<P>(MSF Risk Management Discipline [2])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=220>
<P>PRIORITIZED RISK LIST</P>
</TD>
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Detailed
risk information including project condition, context, root cause,
and the metrics used for prioritization (probability, impact,
exposure) are often recorded for each risk in the risk statement
form.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Risk Management Discipline [2])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=220>
<P>RISK PLANNING</P>
</TD>
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Translation
of the prioritized risk list into action</FONT></FONT></FONT></SPAN></P>
<P STYLE="margin-bottom: 0cm">plans.”</P>
<P>(MSF Risk Management Discipline [2])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=220>
<P>PROJECT STRUCTURE DOCUMENT</P>
</TD>
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">The
project structure document includes information on how the team is
organized and who plays which roles and has specific
responsibilities. The project structure document also clarifies
the chain of accountability to the customer and designated points
of contact that the project team has with the customer. These can
vary depending on the circumstances of the project.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=220>
<P>TEAM ORGANIZATION</P>
</TD>
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Information
on how the team is organized.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=220>
<P>CONTACT POINTS</P>
</TD>
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Designated
points of contact that the project team has with the customer.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=220>
<P>TEAM ROLES</P>
</TD>
<TD WIDTH=329>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Definition
of who plays which roles and has specific responsibilities.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
</TABLE>
''Table 2: Concepts in the envisioning phase''
 
===Planning Phase===
[[File:Internet-speed development planning phase.jpg]]
[[Image:Planning.jpg]]
 
''Figure 3: Planning phase process/data model''
{| class="wikitable"
<TABLE WIDTH=581 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
|-
<TR VALIGN=TOP>
! colspan=2 | Activity
<TD COLSPAN=2 WIDTH=209>
! Definition (source)
<P>Activity</P>
|- VALIGN=TOP
</TD>
| colspan=2 | Define Requirements
<TD WIDTH=342>
| Early in the planning phase, the team analyzes and documents
<P>Definition (source)</P>
requirements in a list or tool. Requirements fall into four broad
</TD>
categories: business requirements, user requirements, operational
</TR>
requirements, and system requirements (those of the solution
<TR VALIGN=TOP>
itself).”
<TD COLSPAN=2 WIDTH=209>
 
<P STYLE="margin-bottom: 0cm">Define Requirements</P>
(MSF Process model)<ref name="ReferenceA"/>
<P STYLE="margin-bottom: 0cm"><BR>
|- VALIGN=TOP
</P>
| colspan=2 | Trace Requirements to Features
<P><BR>
| “As the team moves on to design the solution and create the functional specifications, it is important to maintain ''traceability'' between requirements and features. Traceability does not have to be on a one to one basis. Maintaining traceability serves as one way to check the correctness of design and to verify that the design meets the goals and requirements of the solution.”
</P>
 
</TD>
(MSF Process model<ref name="ReferenceA"/>
<TD WIDTH=342>
|- VALIGN=TOP
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">Early
| colspan=2 | Define Functional Specification
in the planning phase, the team analyzes and documents
| “The team prepares the functional specification.”
requirements in a list or tool. Requirements fall into four broad
 
categories: business requirements, user requirements, operational
(MSF Process model<ref name="ReferenceA"/>
requirements, and system requirements (those of the solution
|- VALIGN=TOP
itself).”</FONT></FONT></FONT></SPAN></P>
| rowspan=4 | Create Planning
<P>(MSF Process model[1])</P>
| Estimate Risks
</TD>
| Team creates a risk estimation.
</TR>
<TR|- VALIGN=TOP>
| Estimate Costs
<TD COLSPAN=2 WIDTH=209>
| Team creates a costs estimation.
<P STYLE="margin-bottom: 0cm">Trace Requirements to Features</P>
|- VALIGN=TOP
<P><BR>
| Create work plans
</P>
| Team creates work plans.
</TD>
|- VALIGN=TOP
<TD WIDTH=342>
|Create Schedules
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">As
|Team creates schedules.
the team moves on to design the solution and create the functional
|- VALIGN=TOP
specifications, it is important to maintain <I>traceability
| rowspan=5 | Create Design
</I>between requirements and features. Traceability does not have
|Create Use-Case Model
to be on a one to one basis. Maintaining traceability serves as
| “This begins with a systematic analysis of ''user profiles''
one way to check the correctness of design and to verify that the
(also called “personas”) which describe various types of
design meets the goals and requirements of the solution.”</FONT></FONT></FONT></SPAN></P>
users and their job functions (operations staff are users too).
<P>(MSF Process model[1])</P>
Much of this is often done during the envisioning phase. These are
</TD>
broken into a series of ''usage scenarios'', where a particular
</TR>
type of user is attempting to complete a type of activity, such as
<TR VALIGN=TOP>
front desk registration in a hotel or administering user passwords
<TD COLSPAN=2 WIDTH=209>
for a system administrator. Finally, each usage scenario is broken
<P STYLE="margin-bottom: 0cm">Define Functional Specification</P>
into a specific sequence of tasks, known as ''use cases'',
<P><BR>
which the user performs to complete that activity. This is called
</P>
“story-boarding.””
</TD>
 
<TD WIDTH=342>
(MSF Process model<ref name="ReferenceA"/>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">The
|- VALIGN=TOP
team prepares the functional specification.”</FONT></FONT></FONT></SPAN></P>
|Create Conceptual Design
<P>(MSF Process model[1])</P>
|Creation of a conceptual design.
</TD>
|- VALIGN=TOP
</TR>
|Create Logical Design
<TR VALIGN=TOP>
|Creation of a logical design.
<TD ROWSPAN=4 WIDTH=75>
|- VALIGN=TOP
<P STYLE="margin-bottom: 0cm"><BR>
|Create Physical Design
</P>
|Creation of a physical design.
<P STYLE="margin-bottom: 0cm"><BR>
|- VALIGN=TOP
</P>
<P>|Create Planning</P>Architecture
|Creation of the architecture for the product.
</TD>
|}
<TD WIDTH=120 HEIGHT=2>
<P>Estimate Risks</P>
</TD>
<TD WIDTH=342>
<P>Team creates a risk estimation.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120 HEIGHT=2>
<P>Estimate Costs</P>
</TD>
<TD WIDTH=342>
<P>Team creates a costs estimation.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120 HEIGHT=17>
<P>Create work plans</P>
</TD>
<TD WIDTH=342>
<P>Team creates work plans.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120>
<P>Create Schedules</P>
</TD>
<TD WIDTH=342>
<P>Team creates schedules.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD ROWSPAN=5 WIDTH=75>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P>Create Design</P>
</TD>
<TD WIDTH=120 HEIGHT=186>
<P>Create Use-Case Model</P>
</TD>
<TD WIDTH=342>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">This
begins with a systematic analysis of ''user profiles''</FONT></FONT></FONT></SPAN></P>
<P STYLE="margin-bottom: 0cm"><SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif"><FONT COLOR="#000000">(also
called “personas”) which describe various types of
users and their job functions (operations staff are users too).
Much of this is often done during the envisioning phase. These are
broken into a series of ''usage scenarios'', where a particular
type of user is attempting to complete a type of activity, such as
front desk registration in a hotel or administering user passwords
for a system administrator. Finally, each usage scenario is broken
into a specific sequence of tasks, known as ''use cases'',
which the user performs to complete that activity. This is called
“story-boarding.””</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120 HEIGHT=33>
<P>Create Conceptual Design</P>
</TD>
<TD WIDTH=342>
<P>Creation of a conceptual design.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120 HEIGHT=17>
<P>Create Logical Design</P>
</TD>
<TD WIDTH=342>
<P>Creation of a logical design.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120 HEIGHT=33>
<P>Create Physical Design</P>
</TD>
<TD WIDTH=342>
<P>Creation of a physical design.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=120>
<P>Create Architecture</P>
</TD>
<TD WIDTH=342>
<P>Creation of the architecture for the product.</P>
</TD>
</TR>
</TABLE>
''Table 3: Planning activities''
In the planning phase a functional specification is created from the requirements. Features selected are included in this specification (a [[MoSCoW Method]] is often used for the features so they can be prioritized more easily). Also, the basic design and planning are created in this phase. The design however is in this phase not frozen as changes may be made in the development phase.
{| class="wikitable"
|-
! Concept
! Definition (source)
|- VALIGN=TOP
| REQUIREMENTS LIST
| Documentation
of requirements in a list or tool.”
 
(MSF Process model<ref name="ReferenceA"/>
In the planning phase a functional specification is created from the requirements. Features selected are included in this specification (a [[MoSCoW Method]] is often used for the features so they can be prioritized more easily). Also the basic design and planning are created in this phase. The design however is in this phase not frozen as changes may be made in the development phase.
|- VALIGN=TOP
|
RISK MANAGEMENT PLAN
| Document
on how the team plans to implement the risk management process
within the context of the project.”
 
(MSF Risk Management Discipline<ref name="ReferenceB"/> )
<TABLE WIDTH=580 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
<TR|- VALIGN=TOP>
| MASTER PROJECT PLAN
<TD WIDTH=194>
| All
<P>Concept</P>
plans are synchronized and presented together as the master
</TD>
project plan.”
<TD WIDTH=356>
 
<P>Definition (source)</P>
(MSF Process model<ref name="ReferenceA"/>
</TD>
|- VALIGN=TOP
</TR>
| WORKPLANS
<TR VALIGN=TOP>
| A plan or plans for the deliverables that pertain to the role and
<TD WIDTH=194>
participates in team planning sessions.”
<P>REQUIREMENTS LIST</P>
 
</TD>
(MSF Process model<ref name="ReferenceA"/>
<TD WIDTH=356>
|- VALIGN=TOP
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Documentation
| COST ESTIMATES
of requirements in a list or tool.”</FONT></FONT></FONT></SPAN></P>
| An estimation of the costs of the project.
<P>(MSF Process model[1])</P>
|- VALIGN=TOP
</TD>
| SCHEDULES
</TR>
| Time estimates and schedules for Deliverables.”
<TR VALIGN=TOP>
 
<TD WIDTH=194>
(MSF Process model<ref name="ReferenceA"/>
<P>RISK MANAGEMENT PLAN</P>
|- VALIGN=TOP
</TD>
| MASTER PROJECT SCHEDULE
<TD WIDTH=356>
| The
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Document
various schedules are then synchronized and integrated into a
on how the team plans to implement the risk management process
master project schedule.”
within the context of the project.”</FONT></FONT></FONT></SPAN></P>
 
<P>(MSF Risk Management Discipline [2])</P>
(MSF Process model<ref name="ReferenceA"/>
</TD>
|- VALIGN=TOP
</TR>
| FUNCTIONAL SPECIFICATION
<TR VALIGN=TOP>
| The
<TD WIDTH=194>
functional specification describes in detail how each feature is
<P>MASTER PROJECT PLAN</P>
to look and behave. It also describes the architecture and the
</TD>
design for all the features.”
<TD WIDTH=356>
 
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">All
(MSF Process model<ref name="ReferenceA"/>
plans are synchronized and presented together as the master
|}
project plan.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>WORKPLANS</P>
</TD>
<TD WIDTH=356>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">A
plan or plans for the deliverables that pertain to the role and
participates in team planning sessions.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>COST ESTIMATES</P>
</TD>
<TD WIDTH=356>
<P>An estimation of the costs of the project.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>SCHEDULES</P>
</TD>
<TD WIDTH=356>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Time
estimates and schedules for Deliverables.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>MASTER PROJECT SCHEDULE</P>
</TD>
<TD WIDTH=356>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">The
various schedules are then synchronized and integrated into a
master project schedule.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>FUNCTIONAL SPECIFICATION</P>
</TD>
<TD WIDTH=356>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">The
functional specification describes in detail how each feature is
to look and behave. It also describes the architecture and the
design for all the features.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
</TABLE>
''Table 4: Concepts in the planning phase''
 
===Development phase===
[[ImageFile:Developing.jpg]]
 
''Figure 4: Developing phase process/data model''
{| class="wikitable"
<TABLE WIDTH=581 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
|-
<TR VALIGN=TOP>
! Activity
<TD WIDTH=194>
! Definition (source)
<P>Activity</P>
|-
</TD>
| Develop Features
<TD WIDTH=357>
| Building of solution components (documentation as well as code).”
<P>Definition (source)</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Develop Features</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Building
of solution components (documentation as well as code).”</FONT></FONT></FONT></SPAN></P>
<P STYLE="margin-bottom: 0cm">(MSF Process model[1])</P>
<P>Also includes testing after the daily build, bug fixing and
evaluating the features.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Create Daily Build</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P>Creation of a build after a workday.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Finalize Scope</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">At
this milestone, all features are complete and the solution is
ready for external testing and stabilization.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Develop Infrastructure</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">The
infrastructure is developed.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
</TABLE>
''Table 5: Developing activities''
 
(MSF Process model)<ref name="ReferenceA"/>
Also includes testing after the daily build, bug fixing and evaluating the features.
|-
| Create Daily Build
| Creation of a build after a workday.
|-
| Finalize Scope
| At this milestone, all features are complete and the solution is ready for external testing and stabilization.”
 
(MSF Process model)<ref name="ReferenceA"/>
|-
| Develop Infrastructure
| The infrastructure is developed.”
 
(MSF Process model)<ref name="ReferenceA"/>
|}
''Table 5: Developing activities''
The most important activity in the developing phase is the development of the features. Besides the implementation of these features the scope is also finalized in this phase. During development new features may be added to the product, but once the scope is finalized the features become frozen and ready for testing and stabilizing. The infrastructure is also developed in this phase which means that network structures are identified and servers like for example a database server are defined.
{| class="wikitable"
<TABLE WIDTH=580 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
|-
<TR VALIGN=TOP>
! Concept
<TD WIDTH=194>
! Definition (source)
<P>Concept</P>
|-
</TD>
| INSTALLATION SCRIPTS AND CONFIGURATION SETTINGS FOR DEPLOYMENT
<TD WIDTH=356>
| A collection of scripts and settings needed for the product to install/run.
<P>Definition (source)</P>
|-
</TD>
| INSTALLATION SCRIPTS
</TR>
| The scripts needed to install the product.
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
<P>INSTALLATION SCRIPTS AND| CONFIGURATION SETTINGS FOR DEPLOYMENT</P>
|
</TD>
The configuration properties of the product.
<TD WIDTH=356>
|-
<P>A collection of scripts and settings needed for the product to
| PERFORMANCE SUPPORT ELEMENTS
install/run.</P>
| Elements that support the performance of the product (extra databases, servers etc.).
</TD>
|-
</TR>
| TEST SPECIFICATIONS AND TEST CASES
<TR VALIGN=TOP>
| Specification of the tests and test cases used to validate the product.
<TD WIDTH=194>
|-
<P>INSTALLATION SCRIPTS</P>
| FUNCTIONAL SPECIFICATION
</TD>
| The functional specification describes in detail how each feature is to look and behave. It also describes the architecture and the design for all the features.”
<TD WIDTH=356>
(MSF Process model)<ref name="ReferenceA"/>
<P>The scripts needed to install the product.</P>
|-
</TD>
| SOURCE CODE AND EXECUTABLES
</TR>
| The source code/executables combination.
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
| SOURCE CODE
<P>CONFIGURATION SETTINGS</P>
| The source code of the product.
</TD>
|-
<TD WIDTH=356>
| EXECUTABLE
<P>The configuration properties of the product.</P>
| The executable created by source code.
</TD>
|}
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>PERFORMANCE SUPPORT ELEMENTS</P>
</TD>
<TD WIDTH=356>
<P>Elements that support the performance of the product (extra
databases, servers etc.).</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>TEST SPECIFICATIONS AND TEST CASES</P>
</TD>
<TD WIDTH=356>
<P>Specification of the tests and test cases used to validate the
product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>FUNCTIONAL SPECIFICATION</P>
</TD>
<TD WIDTH=356>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2><FONT FACE="Arial, sans-serif">The
functional specification describes in detail how each feature is
to look and behave. It also describes the architecture and the
design for all the features.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>SOURCE CODE AND EXECUTABLES</P>
</TD>
<TD WIDTH=356>
<P>The source code/executables combination.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>SOURCE CODE</P>
</TD>
<TD WIDTH=356>
<P>The source code of the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>EXECUTABLE</P>
</TD>
<TD WIDTH=356>
<P>The executable created by source code.</P>
</TD>
</TR>
</TABLE>
''Table 5: Concepts in the developing phase''
 
===stabilization phase===
[[ImageFile:Stabilizing.jpg]]
 
''Figure 5: Stabilization phase process/data model''
{| class="wikitable"
<TABLE WIDTH=581 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0 STYLE="page-break-before: always">
|-
<TR VALIGN=TOP>
! Activity
<TD WIDTH=194>
! Definition (source)
<P>Activity</P>
|-
</TD>
| Testing
<TD WIDTH=357>
| Testing during this phase emphasizes usage and operation under realistic environmental conditions.“
<P>Definition (source)</P>
(MSF Process model)<ref name="ReferenceA"/>
</TD>
|-
</TR>
| Resolve Bugs
<TR VALIGN=TOP>
| The team focuses on resolving and triaging (prioritizing) bugs and preparing the solution for release.”
<TD WIDTH=194>
(MSF Process model)<ref name="ReferenceA"/>
<P STYLE="margin-bottom: 0cm">Testing</P>
|-
<P><BR>
| Deploy Pilot
</P>
| Once a build has been deemed stable enough to be a release candidate, the solution is deployed to a pilot group.”
</TD>
(MSF Process model)<ref name="ReferenceA"/>
<TD WIDTH=357>
|-
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Testing
| Review
during this phase emphasizes usage and operation under realistic
| Once reviewed and approved, the solution is ready for full deployment to the live production environment.”
environmental conditions.“</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])<ref name="ReferenceA"/P>
|}
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Resolve Bugs</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">The
team focuses on resolving and triaging (prioritizing) bugs and
preparing the solution for release.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Deploy Pilot</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Once
a build has been deemed stable enough to be a release candidate,
the solution is deployed to a pilot group.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Review</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">Once
reviewed and approved, the solution is ready for full deployment
to the live production environment.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
</TABLE>
''Table 6: Stabilization activities''
 
The main activities are the testing and resolving of bugs. Once a build version is considered stable enough for a pilot a pilot version is created and deployed. From this pilot it will either go back into the testing/stabilizing loop or it will be approved and reviewed.
{| class="wikitable"
<TABLE WIDTH=580 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
|-
<TR VALIGN=TOP>
! Concept
<TD WIDTH=194>
! Definition (source)
<P>Concept</P>
|-
</TD>
| TEST RESULTS AND TESTING TOOLS
<TD WIDTH=356>
| Collection of test results and tools used for testing.
<P>Definition (source)</P>
|-
</TD>
| TEST RESULTS
</TR>
| Results of executed tests.
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
<P>TEST RESULTS AND| TESTING TOOLS</P>
| Tools used for testing.
</TD>
|-
<TD WIDTH=356>
| GOLDEN RELEASE
<P>Collection of test results and tools used for testing.</P>
| The version used for the final reviewing.
</TD>
|-
</TR>
| RELEASE NOTES
<TR VALIGN=TOP>
| Notes for a release version.
<TD WIDTH=194>
|-
<P>TEST RESULTS</P>
| SOURCE CODE AND EXECUTABLE
</TD>
| The source code/executables combination.
<TD WIDTH=356>
|-
<P>Results of executed tests.</P>
| SOURCE CODE
</TD>
| The source code of the product.
</TR>
|-
<TR VALIGN=TOP>
| EXECUTABLE
<TD WIDTH=194>
| The executable created by source code.
<P>TESTING TOOLS</P>
|-
</TD>
| MILESTONE REVIEW
<TD WIDTH=356>
| Review of the final version and the project documents.
<P>Tools used for testing.</P>
|-
</TD>
| PROJECT DOCUMENTS
</TR>
| Collection of all the project documents.
<TR VALIGN=TOP>
|}
<TD WIDTH=194>
<P>GOLDEN RELEASE</P>
</TD>
<TD WIDTH=356>
<P>The version used for the final reviewing.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>RELEASE NOTES</P>
</TD>
<TD WIDTH=356>
<P>Notes for a release version.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>SOURCE CODE AND EXECUTABLE</P>
</TD>
<TD WIDTH=356>
<P>The source code/executables combination.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>SOURCE CODE</P>
</TD>
<TD WIDTH=356>
<P>The source code of the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>EXECUTABLE</P>
</TD>
<TD WIDTH=356>
<P>The executable created by source code.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>MILESTONE REVIEW</P>
</TD>
<TD WIDTH=356>
<P>Review of the final version and the project documents.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>PROJECT DOCUMENTS</P>
</TD>
<TD WIDTH=356>
<P>Collection of all the project documents.</P>
</TD>
</TR>
</TABLE>
''Table 7: Concepts in Stabilization phase''
 
===deployment phase===
[[File:Deploying.jpg]]
 
[[Image:Deploying.jpg]]
 
''Figure 6: Deployment phase process/data model''
{| class="wikitable"
<TABLE WIDTH=581 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0 STYLE="page-break-before: always">
|-
<TR VALIGN=TOP>
! Activity
<TD WIDTH=194>
! Definition (source)
<P>Activity</P>
|-
</TD>
| Deploy the Core Components
<TD WIDTH=357>
| Deployment of all components needed by the product (such as database servers, mail servers etc.)
<P>Definition (source)</P>
|-
</TD>
| Deploy the solution on site
</TR>
| For tailor-made systems deployment of the product occurs here (can be skipped for software products).
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
| Stabilize the deployment
<P STYLE="margin-bottom: 0cm">Deploy the Core Components
| Tacking, monitoring and improving the deployed components.
</P>
|-
<P><BR>
| Transfer the project to operations and support
</P>
| Transferring all documents and code to the operations and support team.
</TD>
|-
<TD WIDTH=357>
| Obtain final approval from customer
<P>Deployment of all components needed by the product (such as
| The customer must agree that the team has met its objectives before it can declare the solution to be in production and close out the project. This requires a stable solution, as well as clearly stated success criteria. In order for the solution to be considered stable, appropriate operations and support systems must be in place.”
database servers, mail servers etc.)</P>
 
</TD>
(MSF Process model)<ref name="ReferenceA"/>
</TR>
|-
<TR VALIGN=TOP>
| Review the project
<TD WIDTH=194>
| Final review of the project.
<P STYLE="margin-bottom: 0cm">Deploy the solution on site</P>
|}
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P>For tailor-made systems deployment of the product occurs here
(can be skipped for software products).</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Stabilize the deployment</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P>Tacking, monitoring and improving the deployed components.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Transfer the project to operations
and support</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P>Transferring all documents and code to the operations and
support team.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Obtain final approval from customer</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P STYLE="margin-bottom: 0cm"><FONT COLOR="#000000">“<SPAN LANG="en-US"><FONT SIZE=2 STYLE="font-size: 10pt"><FONT FACE="Arial, sans-serif">The
customer must agree that the team has met its objectives before it
can declare the solution to be in production and close out the
project. This requires a stable solution, as well as clearly
stated success criteria. In order for the solution to be
considered stable, appropriate operations and support systems must
be in place.”</FONT></FONT></FONT></SPAN></P>
<P>(MSF Process model[1])</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P STYLE="margin-bottom: 0cm">Review the project</P>
<P><BR>
</P>
</TD>
<TD WIDTH=357>
<P>Final review of the project.</P>
</TD>
</TR>
</TABLE>
''Table 8: Deploying activities''
The main activity in the deploying phase is the installation of the infrastructure needed to run the product (deployment of servers etc.). Also, the documents are finalized and transferred to the operations and support department, a knowledge base is created and the product and project are reviewed by the customer (if applicable) and the project team.
 
{| class="wikitable"
The main activity in the deploying phase is the installation of the infrastructure needed to run the product (deployment of servers etc.). Also the documents are finalized and transferred to the operations and support department, a knowledge base is created and the product and project are reviewed by the customer (if applicable) and the project team.
|-
<TABLE WIDTH=579 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=7 CELLSPACING=0>
! Concept
<TR VALIGN=TOP>
! Definition (source)
<TD WIDTH=194>
|-
<P>Concept</P>
| PROCEDURES AND PROCESSES
</TD>
| Collection of procedures and processes.
<TD WIDTH=356>
|-
<P>Definition (source)</P>
| PROCEDURES
</TD>
| Collection of procedures to be used for installation and operation of the product.
</TR>
|-
<TR VALIGN=TOP>
| PROCESSES
<TD WIDTH=194>
| Collection of processes to be used for installation and operation of the product.
<P>PROCEDURES AND PROCESSES</P>
|-
</TD>
| KNOWLEDGE BASE, REPORTS, LOGBOOKS
<TD WIDTH=356>
<P>| Collection of proceduresthe knowledge base, reports and processeslogbooks.</P>
|-
</TD>
| KNOWLEDGE BASE
</TR>
| The knowledge base associated with the product.
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
| REPORTS
<P>PROCEDURES</P>
| The reports associated with the product.
</TD>
|-
<TD WIDTH=356>
| LOGBOOKS
<P>Collection of procedures to be used for installation and
operation| ofLogbooks associated with the product.</P>
|-
</TD>
| DOCUMENT REPOSITORY
</TR>
| A repository of all documents.
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
| FINAL VERSIONS OF ALL PROJECT DOCUMENTS
<P>PROCESSES</P>
| The final versions of the project documents.
</TD>
|-
<TD WIDTH=356>
| OPERATION AND SUPPORT INFORMATION SYSTEMS
<P>Collection of processes to be used for installation and
| Systems used by the operation ofand support teams associated with the product.</P>
|-
</TD>
| CUSTOMER/USER SATISFACTION DATA
</TR>
| Collection of data from the customer/user about his satisfaction with the product.
<TR VALIGN=TOP>
|-
<TD WIDTH=194>
| DEFINITION OF NEXT STEPS
<P>KNOWLEDGE BASE, REPORTS, LOGBOOKS</P>
| Description of next steps to take for evolving the product.
</TD>
|-
<TD WIDTH=356>
| PROJECT CLOSE-OUT REPORT
<P>Collection of the knowledge base, reports and logbooks.</P>
|
</TD>
Final report on the product, project and the transfer to operations and support.
</TR>
|}
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>KNOWLEDGE BASE</P>
</TD>
<TD WIDTH=356>
<P>The knowledge base associated with the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>REPORTS</P>
</TD>
<TD WIDTH=356>
<P>The reports associated with the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>LOGBOOKS</P>
</TD>
<TD WIDTH=356>
<P>Logbooks associated with the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>DOCUMENT REPOSITORY</P>
</TD>
<TD WIDTH=356>
<P>A repository of all documents.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>FINAL VERSIONS OF ALL PROJECT DOCUMENTS</P>
</TD>
<TD WIDTH=356>
<P>The final versions of the project documents.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>OPERATION AND SUPPORT INFORMATION SYSTEMS</P>
</TD>
<TD WIDTH=356>
<P>Systems used by the operation and support teams associated with
the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>CUSTOMER/USER SATISFACTION DATA</P>
</TD>
<TD WIDTH=356>
<P>Collection of data from the customer/user about his
satisfaction with the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>DEFINITION OF NEXT STEPS</P>
</TD>
<TD WIDTH=356>
<P>Description of next steps to take for evolving the product.</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD WIDTH=194>
<P>PROJECT CLOSE-OUT REPORT</P>
</TD>
<TD WIDTH=356>
<P>Final report on the product, project and the transfer to
operations and support.</P>
</TD>
</TR>
</TABLE>
''Table 9: Concepts in Deploying phase''
 
===Overall data model===
[[ImageFile:Datamodel.jpg]]
 
''Figure 7: Overall data model''
 
This data model shows all the concepts with multiplicities and relations in a full project context.
 
==Tools for use with Internet-Speed Development==
* Drawing tools (examples: Microsoft Visio, Rational Rose, [[Dia (software)|Dia]]) For making diagrams.
* Word processors (examples: Microsoft Word, OpenOffice.org Writer, [[AbiWord]], [[Calligra Words]]) For making text documents like a vision statement or scope document.
* Spreadsheets (examples: Microsoft Excel, OpenOffice.org Calc, [[Gnumeric]], [[Calligra Sheets]]) For making prioritized risk lists and making cost calculations.
* Project tools (examples: Microsoft Project, [[OpenProj]], Gnome Planner, [[Calligra Plan]]) For planning project activities.
* Database and database management tools (examples: MS SQL Server, [[MySQL]], Oracle, [[PostgreSQL]]) For making knowledge bases.
* Automated testing tools (examples: Test scripts) For executing tests after each daily build.
 
==See also==
* [[Agile software development]]
* [[Incremental and iterative development]]
* [[Microsoft Solutions Framework]]
* [[Dynamic systems development method]] (DSDM)
* [[DSDM]]
* [[MoSCoW Method]]
 
==Notes==
<references/>
 
==References==
* [1] Microsoft June 2002 Microsoft Solutions Framework (White Paper) Microsoft Press
* [2] Microsoft June 2002 MSF Risk Management Discipline v.1.1 (White Paper) Microsoft Press
* [3] Wolfgang Zuser, Stefan Heil, Thomas Grechenig 2005 Software Quality Development and Assurance in RUP, MSF and XP - A Comparative Study Proceedings of the 2005 workshop on Software quality
* [4] Pekka Abrahamsson, Juhani Warsta, Mikko T. Siponen, Jussi Ronkainen 2003 New Directions on Agile Methods: A Comparative Analysis ICSE
* [5] Michael A. Cusumano, David B. Yoffie 1999 Software Development on Internet Time 32 IEEE
* [6] Balasubramaniam Ramesh, Jan Pries-Heje 2002 Internet Software Engineering: A Different Class of Processes Annals of Software Engineering 14 169–195
 
[[Category:Metaphors]]
[[Category:Software architecture]]