Microsoft Solution Framework (MSF) are Microsoft developed and adopted principles of successful project management. MSF has emerged as a product of the best practice in the various projects that Microsoft has worked on since the mid-eighties and which, since 1994., appears under the name of MSF. Microsoft has formulated MSF as an system that offers solutions on how to organize people and project in order to successfully plan, build and put into use a variety of IT solutions. MSF is a set of well-tested practices and solutions in the team organization and project planning in the IT industry.
MSF is based on several key assumptions. These assumptions include a clear assignment of tasks within the team, but also a shared responsibility. It is necessary to encourage open communication, to work towards a common vision and focus on delivering business value to the user. Also, we should be ready to changes and accepting them in any of the phases of the projects. To make it as easy as possible to achieve, it is good to have open communication channels developed.
It is very important to build a knowledge base and learn from all the experiences so the problems are more easily and efficiently handled. Last but not least, there is the need for constant investment in quality.
MSF Team Model organizes the people working on the project and ensure the fulfillment of the project objectives by linking each role in a team with specific responsibility within the team. It consists of six major roles that correspond to the main objectives of the project and have a responsibility towards them. It is important to say that the structure of this model is not hierarchical but circular. This emphasizes the equality of individual roles and the importance of equality for all to contribute to the project.
Although some of the roles of the different phases of the project are more active than others, not one cannot and must not be left out. Communication connects all of the roles. Effective communication is supported by the model, but it is also very necessary for model the work.
MSF Team Model consists of Program, Product, Release Management, Development, Test, and User Experience.
Program management is responsible for the development of the project and its design. The project will be considered successful if it meets some general conditions and characteristics that determine program management.
Development is a group of people working on the solution development based on earlier project specification decision.
The test is in charge of testing and thorough examination of the stability of solutions and its characteristics. Test and Development must have an extremely high-quality communication since the Development can improve solution on the basis of feedback from the test.
Relese management ensures that only the totally completed solution with no major bugs and instability enters the market.
User experience plays a role where project is adapted to the market and the users themselves. This group must make the product beautiful and functional so the users will like to use it.
Product management is a team that takes care of the marketing, sales channels and user satisfaction.
It is particularly important to emphasize the role of communication between the individual roles in this model. Without effective and open communication, the project will not develop in a predictable way.
MSF process model organizes the process itself which is necessary for solution to be carried out and set to work. This model is divided into five phases, of which each stage consists of several tasks. The transition from the individual phases can be performed only after the fulfillment of several milestones which are characteristic for each phase.
The first phase is called the envisioning, and during it there is established idea and purpose of the project. Team, customer and sponsor agree and establish the project at this stage. During this phase, an input are collected and the core/initial team organizes, than design solutions organization and ways to communicate are created. After initialization of project documentation and its acceptance, it is possible to move to the next phase.
The second phase is called the planning. During this phase the team and the customer define the specific characteristics of the project – which, when and how it will be built. Phase is characterized by development of functional specifications and major project documentation. The transition to the next stage is possible after approval of the plan.
Development is the third stage. During the execution phase of this team is developing and testing the solution. Reviews and improvements are made inside measures adopted within the project documentation. Specifically code, the infrastructure and the documentation that accompanies development and testing are developed.
In the phase of stabilization new features in the program are no longer added. Program now has to contain all that is defined in documentation. We are coming to new reported bugs and issuing so-called release candidates.
In the final phase, deploying phase, solution is placed in its functional state. With this, the project process closed circuit is finished and the solution is placed in the user environment.
All the knowledge and experience gained during the work is stored in the knowledge base. Learning experience and their subsequent usage are one of the main characteristics of MSF.