Microsoft Solutions Framework
   HOME

TheInfoList



OR:

Microsoft Solutions Framework (MSF) is a set of principles, models, disciplines, concepts, and guidelines for delivering
information technology Information technology (IT) is the use of computers to create, process, store, retrieve, and exchange all kinds of data . and information. IT forms part of information and communications technology (ICT). An information technology system (I ...
services from
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washing ...
. MSF is not limited to developing applications only; it is also applicable to other IT projects like deployment, networking or infrastructure projects. MSF does not force the developer to use a specific
methodology In its most common sense, methodology is the study of research methods. However, the term can also refer to the methods themselves or to the philosophical discussion of associated background assumptions. A method is a structured procedure for bri ...
(such as the
waterfall model The waterfall model is a breakdown of project activities into linear sequential phases, meaning they are passed down onto each other, where each phase depends on the deliverables of the previous one and corresponds to a specialization of tasks. ...
or
agile software development In software development, agile (sometimes written Agile) practices include requirements discovery and solutions improvement through the collaborative effort of self-organizing and cross-functional teams with their customer(s)/ end user(s), ad ...
).


History

MSF was first introduced by Microsoft as version 1.0 in 1993, and a version 2.0 was released in 1997. In 2002, MSF version 3.0 was released. It modified version 2.0 in the following ways: * Combined previously separate models into unified Team and Process models designed for application across a variety of project types including deployment, enterprise software integration, and development projects. * Folded the Application Development and Infrastructure Deployment models into a single Process Model consisting of five phases. * Added Project Management and Readiness Management Disciplines. * Made changes to the Risk Management Discipline. * Added links between MSF and the Microsoft Operations Framework (MOF). * Added an MSF Practitioner Program designed to train individuals to lead or participate in MSF projects. MSF version 4.0 was released in 2005. The release was a major refresh of the Process Model (now called the Governance Model) and the Team Model. MSF 4.0 included techniques for two separate methodologies: MSF for
Agile Software Development In software development, agile (sometimes written Agile) practices include requirements discovery and solutions improvement through the collaborative effort of self-organizing and cross-functional teams with their customer(s)/ end user(s), ad ...
(MSF Agile) and MSF for CMMI Process Improvement (MSF4CMMI).


Components

MSF 4.0 is a combination of a metamodel which can be used as a base for prescriptive software engineering processes, and two customizable and scalable software engineering processes. The MSF metamodel consists of foundational principles, a team model and cycles and iterations. MSF 4.0 provides a higher-level framework of guidance and principles which can be mapped to a variety of prescriptive process templates. It is structured in both descriptive and prescriptive
methodologies In its most common sense, methodology is the study of research methods. However, the term can also refer to the methods themselves or to the philosophical discussion of associated background assumptions. A method is a structured procedure for bri ...
. The descriptive component is called the MSF 4.0
metamodel A metamodel or surrogate model is a model of a model, and metamodeling is the process of generating such metamodels. Thus metamodeling or meta-modeling is the analysis, construction and development of the frames, rules, constraints, models and ...
, which is a theoretical description of the SDLC best practices for creating SDLC methodologies. Microsoft is of the opinion that organizations have diverging dynamics and contrary priorities during their
software development Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components. Software development invol ...
; some organizations need a responsive and adaptable software development environment, while others need a standardized, repeatable and more controlled environment. To fulfill these needs, Microsoft represents the metamodel of MSF 4.0 in two prescriptive methodology templates that provide specific process guidance, for agile software development (MSF4ASD) and for the
Capability Maturity Model The Capability Maturity Model (CMM) is a development model created in 1986 after a study of data collected from organizations that contracted with the U.S. Department of Defense, who funded the research. The term "maturity" relates to the degree of ...
(MSF4CMMI). These software engineering processes can be modified and customized to the preferences of organization, customer and project team. The MSF philosophy holds that there is no single structure or process that optimally applies to the requirements and environments for all sorts of projects. Therefore, MSF supports multiple process approaches, so it can be adapted to support any project, regardless of size or complexity. This flexibility means that it can support a wide degree of variation in the implementation of software engineering processes while retaining a set of core principles and mindsets. The MSF process model consists of series of short development cycles and iterations. This model embraces rapid
iterative development Iterative and incremental development is any combination of both iterative design or iterative method and incremental build model for development. Usage of the term began in software development, with a long-standing combination of the two terms ' ...
with continuous learning and refinement, due to progressive understanding of the business and project of the stakeholders. Identifying requirements, product development, and testing occur in overlapping iterations resulting in incremental completion to ensure a flow of value of the project. Each iteration has a different focus and result in a stable portion of the overall system.


References

{{reflist


External links


Microsoft Solution Framework home pageMicrosoft Solution Framework in Visual Studio 2005 Team SystemMSF Essentials book
Solutions Framework, Microsoft