http://www.microsoft.com/msf/cool Interesting. Thanks to whomever added this link. Here is a snippet from the cool page: ''The Microsoft® Solutions Framework (MSF) is a flexible, interrelated series of concepts, models, and best practices that lays the foundation for planning, building, and managing technology projects... Research and customer feedback has contributed to the improvement of the MSF models, principles and best practices as well as the evolution of the MSF course offerings.'' ---- '''News and developments''' Mid 05 a new version of MSF is out, and mentioned in an upcoming book from MS. I have not looked at it yet, but noted that they have now included a SoftwareArchitect role in their framework. Another noteworthy aspect about the new version is that the framework has extended from a previously "purely descriptive" nature, into including two "prescriptive" models. These are: * MSF for AgileDevelopment * MSF for CapabilityMaturityModelIntegration See more introductory material from a ?ProgramManager at http://www.echoes.com/msf/ ---- MSF is divided into three parts: * Team Model * Process Model * Risk Management Discipline ''Team Model for Application Development'' The MSF team model for application development advocates a small team of peers working in interdependent multidisciplinary roles. It is designed so that its six team roles map directly to the six quality goals MSF considers necessary for project success. The team model is specifically designed to overcome the communication issues typically experienced by more traditional hierarchical teams. The six roles and their responsibilities are * Product Management - customer advocate, overall vision * Program Management - meet budget/schedule/resource constraints * Development * Testing * User Experience - UI design, documentation, training, user support * Deployment - installation, logistics, configuration, operations support Small teams are recommended. ''Process Model for Application Development'' The MSF process model for application development is a flexible approach to project management that improves project control, minimizes risk, and improves product quality, while increasing development speed. It is based on five milestones, which are review and synchronization points that allow the project team to adjust the scope of the project to reflect changing customer requirements or to react to risks that may materialize during the course of the project. The process model is an iterative SpiralModel with five defined phases for each iteration: 1 Envisioning - establish clear vision, evaluate feasibility and risks 2 Planning - requirements gathering, functional specification, conceptual/logical/physical design, work plans, cost estimates, schedules 3 Developing - build solution and infrastructure components 4 Stabilizing - triage and resolution of bugs, preparation for release, pilot release 5 Deploying - deploy components to production environment, stabilize the deployment, transition responsibilities to operations and support staff, obtain final customer approval A multi-release plan with short cycles is recommended. ''RiskManagement Discipline'' The MSF approach to proactive risk management, the risk management discipline, is a five-step process. This process enables MSF based project teams to identify risks and to than assess the risks continuously. ProjectRiskManagement is used in the decision-making in all phases of the project. Using the risk management process, project teams carry the risks forward and deal with them until they are resolved or until they turn into problems and are handled as such. A key concept with risk management is risk based scheduling - wherein you start risky activities early (and have a fall back plan if the risk trigger is raised). ---- It's been a little while since I took a look but at the time it seemed to me a reasonable combination of RationalUnifiedProcess, ExtremeProgramming and the soft stuff described by JimMcCarthy in DynamicsOfSoftwareDevelopment. ''Then I discovered the wonderful ExtremeUnifiedProcess.'' Of course, like all processes it's the mapping that matters. See ProgrammersStone. -- DanGreen ---- KeithRowe's blog entry describes MSF's split into formal and agile versions. * http://blogs.msdn.com/keithrowe/archive/2004/06/04/148641.aspx ''So by implication, an Agile process is informal? Also, who this guy mentioned, "We are very lucky to have hired RandyMiller, one of the big thinkers in the Agile movement, to help us design this version of MSF.". Gee, I wonder if any well-known important agile thinkers work for Microsoft? Naaaaaah....'' Actually, WardCunningham is now an architect with Microsoft. Randy Miller is also well-known in the community. ---- A bit of conspiracy theory: Microsoft have noticed XP, liked it and decided to privatize it. Standard policy. ''Nice try. I rather suspect the MSF predates XP. The Web Archive thinks the page has existed since 1998, for instance: http://web.archive.org/web/19980120150640/http://www.microsoft.com/msf/, and the team model and process model were in the 1999 version (the web archive doesn't seem to have the page from 1998)''. It was two-moves operation. The first move was to destroy the brand. It was easy, since the "Extreme" already sounds too extreme to buy, so they had only the "XP" to handle. They did. Now we keep repeating the "Don't confuse it with Windows XP" mantra but people do confuse. When one reads "XP" he assumes he knows what it is about and skips the rest. Brilliant move, isn't it? (BTW, the "agile" word is widely used by MS as well). The second move was to put their brand on the XP content. They took XP, added some stuff to it, just to make it different and are now selling it as their own methodology. Isn't MSF to XP like CSharp to Java? Now we would need to explain why not "Just use MSF". The third move would be to sue XP proponents for the breach of copyright :) -- SergeiKureda MSF predates ExtremeProgramming (noted by a previous commentator), and is therefore not comparable to the evolution of CsharpLanguage from JavaLanguage. ---- CategoryMethodology