Software Development/Engineering .NET/ASP.NET/.NETCF/C#/C++/Xamarin

Framework (cadre de travail) Microsoft

Microsoft solution framework (MSF) has many core benefits.

* Provides friction free process guidance integrated with development lifecycle toolset
* Ships with 1st class quick start process instances – MSF for Agile Software Development and MSF for CMMI Process Improvement
* MSF enables flow of customer value across the development lifecycle
* MSF drives quality of service mindset • Tailors process guidance for every team role
* Stretches to fit every project scenario needs. MSF’s flexible framework can be extended, adapted and customized to meet the needs of any project size or complexity.

When would one choose MSF for CMMI® Process Improvement over MSF for Agile Software Development process?
You should choose MSF for CMMI Process Improvement if your organization seeks to build an organization wide environment and culture of quality assurance and continuous improvement. MSF for Agile Software Development is a scenario-driven, context-based, agile software development process for software teams.
MSF harvests process guidance in and outside of Microsoft.

How so?

A consortium of leading global system integrators (Unisys, EDS, Capgemini, Fujitsu, Accenture, Avanade, and Infosys) and partners have provided their real experience and input towards defining Microsoft Solutions Framework integrated with Visual Studio Team System. Many leading global system integrators and partners (Borland, Osellus, and Brightwork) plan to customize and extend their own process methods based on MSF to deliver real business value to customers.

The following are the eight foundational principles, which form the backbone for the other models and disciplines of MSF:

1. Foster open communication
2. Work towards a shared vision
3. Empower team members
4. Establish clear accountability and shared responsibility
5. Focus on delivering business value
6. Stay agile, expect change
7. Invest in quality
8. Learn from all experiences

MSF consists of two models:

1. MSF Team Model. This describes the role of various team members in a software development project. The members of this team would be:

* Product Management: Mainly deals with customers and define project requirements, also ensures customer expectations are met.
* Program Management: Maintains project development and delivery to the customer
* Development: Develops according to the specifications.
* Testing: Tests and assures product quality
* Release Management: Ensures smooth deployment and operations of the software
* User Experience: Supports issues of the users.

One person may be assigned to perform multiple roles. MSF also has suggestion on how to combine responsibilities such as the developer should not be assigned to any other role.

2. MSF Process Model. This describes the different stages in processing for a project. The MSF Process Model has attributes of the both waterfall model and spiral model. MSF uses the milestone approach from waterfall model and iterative approach from spiral model. MSF defines some milestones (steps), go all the way and again come back like the spiral model to improve and modify.

* Envisioning
* Planning
* Developing
* Stabilizing
* Deploying

MSF Project Management Process

* Integrate planning and conduct change control
* Define and manage the scope of the project
* Prepare a budget and manage costs
* Prepare and track schedules
* Ensure that right resources are allocated to the project
* Manage contracts and vendors and procure project resources
* Facilitate team and external communications
* Facilitate the risk management process
* Document and monitor the team's quality management process