280 likes | 494 Views
MSF: Microsoft Solutions Framework Past and present. Peter Williams, Microsoft Ltd. Agenda. A Brief History of MSF MSF Core MSF and Visual Studio Team system MSF for Agile Software Development MSF for CMMI® Process Improvement Real World Experiences. ‘Dynamics’. MSF v3. MSF v4. MSF v2.
E N D
MSF: Microsoft Solutions FrameworkPast and present Peter Williams, Microsoft Ltd.
Agenda • A Brief History of MSF • MSF Core • MSF and Visual Studio Team system • MSF for Agile Software Development • MSF for CMMI® Process Improvement • Real World Experiences
‘Dynamics’ MSF v3 MSF v4 MSF v2 MSF v2.5 SolutionsDevDiscipline(SDD) Principles of …App Dev (PAD)Infra Deploy (PID)Ent Arch (PEA)Comp Des (PCD) Essentials+ Exam CoreAgileCMMI… 21 Rules MSF v1 A Brief History of MSF MSF Offering 1994 1995 1997 1999 2002 2005-06
MSF Core: What It’s Not • MSF Core is not a methodology • It’s a framework • It requires instantiation for the specific solution domain • Not a magic sauce • Not specific to software development • Although Visual Studio Team System provides two instantiations which are specific to software development • MSF for Agile Software Development • MSF for CMMI® Process Improvement
MSF Core • A collection of best practices gathered from the product groups and the field • Key elements • Mindsets (key concepts) • Foundational Principles • Models • Disciplines • Proven practices • Recommendations
MSF Core Mindsets • Team of Peers • Quality is everyone’s business every day • Pride of workmanship • Deliver on your commitments • Focus on business value • Solution mindset • Design for qualities of service • Trusting mindset • Continual learning mindset • Reuse and extend
MSF Core Foundational Principles • Foster open communications • Work towards a shared vision • Empower team members • Establish clear accountability and shared responsibility • Incremental delivery of value • Stay agile, expect and adapt to change • Invest in quality • Learn from all experiences • Partner with customers • Early and frequent deployments • Design early with specific examples
MSF Core Models • Team model • Based on advocacy creating natural checks and balances • Governance & Enactment (Process) model • Appropriate level of governance • Iterative, versioned releases, etc. • Risk management model • Proactive risk management
Program Management Architecture ProductManagement Development Solution Delivery Solution Design UserExperience Test Solution Definition Solution Construction / Verification ReleaseManagement Solution Usability and User readiness Solution Validation Solution Deployment MSF Core Team Model Advocacy Groups Natural Checks and balances
Product Management User Experience Test Program Management Development MSF Core Advocacy Business Focus Users Operations Support Customer Project Team Project Sponsor Solutions Architects Release / Operations Operations Architecture Technology Architects Technology Focus
Scaling Down: Combining Advocacy Groups Possible Unlikely Not recommended
UserExperience ProgramManagement Program Management ProgramManagement Development Development Development Catalog Fulfillment Site Engine & Design UserExperience Test Test ReleaseManagement UserExperience Test Scaling Up: Feature Teams
MSF Version 4 Governance & Enactment Model • Enactment Tracks • Envision • Plan • Build • Stabilise • Deploy • Governance Track • Checkpoint-based Deploy Stabilise Enactment Envision Build Plan Governance
Governance Examples • MSF for Agile Software Development implements a very lightweight governance model
Governance Examples • MSF for CMMI® Process Improvement implements a more rigorous governance model
MSF Core Risk Management Model • Proactive Management • Identify • Analyse and Prioritise • Plan and Schedule • Track and Report Status • Control Risks • Learn from Risks
MSF and Visual Studio Team System enacts Visual Studio 2005 Team System Microsoft Solutions Framework guides
MSFv4 ‘Core’ Discipline Application Development Infrastructure Family MSF for Agile Software Development MSF for CMMI® Process Improvement Product Enacting MSF
MSF v4 MSF v3 Enacting MSF CMMI Infrastructure Agile
Real World Usage • Globally within Microsoft • Used by Microsoft Services since 1994 • Used by Microsoft Internal operations • Based on product group principles and best practices • Closer to home within Microsoft • Used by the UK Solution Development Group to deliver large-scale enterprise solutions • Use by other external organisations
UK Enterprise Solutions built with MSF Tax Credits Online NBP digital curriculum
Personal Experiences • Core principles and approach very similar to the product group approach. Some differences due to the nature of solution development. • A very good success rate on very challenging projects.
Favourite aspects of MSF • Team model • Common goal • Two-way advocacy not just ‘gathering’ requirements • Platform for trade offs • All disciplines represented from the start • All disciplines participate in the design • Small multi-disciplinary teams • Co-location • Motivational
Favourite aspects of MSF • Envisioning track • Forming a vision • Opening up possibilities never before imagined • User experience as a first-class citizen • An area often neglected in other approaches • Base line early and freeze late • Expecting change • Iterative development • Rehearsal for go-live
Favourite Aspects of MSF • Ship every day • Build is not enough • A team exercise • Build hand-off • Repeatable platform builds • Triage • One representative per discipline • ‘Quaker’ consensus