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 (MSF4CMMI).
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.
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.
This model embraces rapid iterative development 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.