Microsoft Solutions Framework MSF v 4 Rafal Lukawiecki

  • Slides: 38
Download presentation
Microsoft Solutions Framework – MSF v 4 • Rafal Lukawiecki • • • Strategic

Microsoft Solutions Framework – MSF v 4 • Rafal Lukawiecki • • • Strategic Consultant rafal@projectbotticelli. co. uk Project Botticelli Ltd This presentation is based on work by Microsoft Tech. Net, MSDN and various Microsoft authors including, with TEŽAVNOST: special 200 thanks: Ramprabhu Rathnam, Tony Northrup, and Austin Wilson

2 Objectives • Convince you that non-technical reasons impact project success a lot •

2 Objectives • Convince you that non-technical reasons impact project success a lot • Show you an approach to product management that has proven to be very successful • Explain the recent developments TEŽAVNOST: 200

3 Agenda • Introduction to Frameworks • Components of MSF v 3 and v

3 Agenda • Introduction to Frameworks • Components of MSF v 3 and v 4 • Future TEŽAVNOST: 200

4 Introduction: Why Projects Fail? What are Frameworks? TEŽAVNOST: 200

4 Introduction: Why Projects Fail? What are Frameworks? TEŽAVNOST: 200

5 MSF • Microsoft Solutions Framework – Established in 1991, made public in 1993

5 MSF • Microsoft Solutions Framework – Established in 1991, made public in 1993 (v 1), fully revised in 1998 (v 2), January 2003 (v 3) and now in March 2006 (v 4) – Product development framework for creating software and infrastructure deployment • Related to MOF, Microsoft Operational Framework – Which concentrates on the management of IT infrastructure TEŽAVNOST: 200

6 IT Lifecycle Plan Microsoft Solutions Framework Ope rate Dep loy Buil d Microsoft

6 IT Lifecycle Plan Microsoft Solutions Framework Ope rate Dep loy Buil d Microsoft Operations Framework TEŽAVNOST: 200

7 Does it Work? • Yes, as long as you chose the right bits

7 Does it Work? • Yes, as long as you chose the right bits of MSF for your project • High-profile projects that used MSF – www. nasdaq. com and www. marriott. com (Aris Corp, now Ciber, www. ciber. co. uk) – UK Government Gateway (e. Gov) – Visual Studio, Windows 2003, Windows XP TEŽAVNOST: 200

8 What’s a Framework? • Unlike a methodology, a framework is a set of

8 What’s a Framework? • Unlike a methodology, a framework is a set of conceptual tools and best practices • However, in many ways MSF v 4 is closer to a methodology than v 3 TEŽAVNOST: 200

9 Root Causes of Failure • Separation of goal and function • Separation of

9 Root Causes of Failure • Separation of goal and function • Separation of business and technology • Lack of common language and process • Failure to communicate and act as a team • Processes that are inflexible to change • Solution? – A good and tested framework! TEŽAVNOST: 200 “When projects fail, it’s rarely technical. ” Jim Johnson, The Standish Group Average cost overrun: 45% Time overrun: 63% Functionality delivered on average: 67% Standish Group

10 Evolution from MSF v 3 to v 4 TEŽAVNOST: 200

10 Evolution from MSF v 3 to v 4 TEŽAVNOST: 200

11 MSF Partner Council Who Advised v 4 TEŽAVNOST: 200

11 MSF Partner Council Who Advised v 4 TEŽAVNOST: 200

12 Evolution to MSF v 4 TEŽAVNOST: 200

12 Evolution to MSF v 4 TEŽAVNOST: 200

13 Status • MSF v 3 is fully released and available – Study course

13 Status • MSF v 3 is fully released and available – Study course MOC #1846 • MSF v 4 for Application Development (both Agile and CMMI) have just shipped on 29 March 2006 – Download guidance from www. microsoft. com/msf • MSF v 4 for Infrastructure Deployment and other “flavours” (Solutions, Consulting, etc. ) are under development at present – This is news! Good news. TEŽAVNOST: 200

14 Agility • Agility of the development process is the key to being able

14 Agility • Agility of the development process is the key to being able to cope with inevitable changes (spec, environment, business) or planning errors • The price of it is a certain unpredictability of the process – Finish date, final cost, feature set… • Generally, agility is great for small and medium projects in existing and tested dev environments TEŽAVNOST: 200

15 CMMI • Capability-Maturity Model Integration describes 5 (or 6) levels of process-based predictability

15 CMMI • Capability-Maturity Model Integration describes 5 (or 6) levels of process-based predictability of an organisation (or department) in terms of their ability to produce quality software • Level 5 is best. Most companies are 0 or 1. MSF v 4 can help you work at level 3 or more. • Moving towards higher levels is done by adopting highly predictable (but not so agile) processes • Great for larger or more formal projects, especially in more critical environments • By the way, MSF and CMMI are not strangers: KPMG published a paper on how MSF v 1 could help you with CMM already in 1995! TEŽAVNOST: 200

16 Observation • MSF v 3 seems more “formal” than MSF for Agile Software

16 Observation • MSF v 3 seems more “formal” than MSF for Agile Software Development – We lose some of the structure and modelling from v 3 and replace them with a more integrated agile process • MSF v 3 seems less “formal” than MSF for CMMI Process Improvement – Structures from v 3 are becoming more process-improvement oriented TEŽAVNOST: 200

17 What About Extreme Programming? • Extreme Programming (XP), which was created after MSF,

17 What About Extreme Programming? • Extreme Programming (XP), which was created after MSF, has similarities – Similarities regarding the Zero Defect Mindset and Daily Builds • XP is less predictable than necessary for more formal projects – But great for very agile projects • MSF for Agile Software Development seems more predictable, controllable and even more agile than XP • MSF CMMI Process Improvement, naturally, is less agile than XP, but seems the most predictable TEŽAVNOST: 200

18 Key Components of MSF TEŽAVNOST: 200

18 Key Components of MSF TEŽAVNOST: 200

19 A Team of Peers (v 4 Agile) TEŽAVNOST: 200

19 A Team of Peers (v 4 Agile) TEŽAVNOST: 200

20 Scaling the Team Model • Feature & Function Teams Technique • Example: TEŽAVNOST:

20 Scaling the Team Model • Feature & Function Teams Technique • Example: TEŽAVNOST: 200

21 Designing Software within MSF • UML (Unified Modelling Language) has a great tradition,

21 Designing Software within MSF • UML (Unified Modelling Language) has a great tradition, though we may need to evolve towards a service-oriented approach – UML 2? Perhaps, but it’s possible to be more direct in design. • Domain Specific Languages! – Great conceptual integration both with MSF and with the tools (VSTS) – Further, possible, integration with SDM and TEŽAVNOST: 200 DSI

22 Project Management in v 4 • One of the most powerful features of

22 Project Management in v 4 • One of the most powerful features of Visual Studio Team System is its automation of project management – Workstreams, Work Items, and Roles concepts – Uses Team Foundation Server – Relies on Microsoft Project-style planning documents TEŽAVNOST: 200

23 MSF Process Model v 3 Deployment Complete Release Readiness Approved Vision/Scope Approved MSF

23 MSF Process Model v 3 Deployment Complete Release Readiness Approved Vision/Scope Approved MSF TEŽAVNOST: 200 Scope Complete Project Plans Approved

24 Deploy Envision Release 1 Stabilize Plan Build TEŽAVNOST: 200

24 Deploy Envision Release 1 Stabilize Plan Build TEŽAVNOST: 200

25 Process Modelling in v 4 • MSF v 4 introduces a new model

25 Process Modelling in v 4 • MSF v 4 introduces a new model of Governance and Enactment which replace the traditional process model • This caters for different types of processes, which are now defined at the level of methodology, rather than the framework • This makes MSF v 4 much more suited to work in teams both very small and very big, as opposed to what v 3 could have ever catered for TEŽAVNOST: 200

27 Iterations • Achievement of a pre-determined level of quality • Based on planning

27 Iterations • Achievement of a pre-determined level of quality • Based on planning of feature-sets • Mechanism to correct project plan deviations TEŽAVNOST: 200

28 Governance • Process mapped onto specific iterations TEŽAVNOST: 200

28 Governance • Process mapped onto specific iterations TEŽAVNOST: 200

29 Cycles • The foundation of every day’s co-ordinated work of the team TEŽAVNOST:

29 Cycles • The foundation of every day’s co-ordinated work of the team TEŽAVNOST: 200

30 Daily (Nightly) Building the product in a deployable form on a daily basis

30 Daily (Nightly) Building the product in a deployable form on a daily basis • A daily build is – – A strong indicator that a team is functional Guarantee against component integration problems A way to make the product and its progress visible The heartbeat of the development process • A key function of VSTF (see later) TEŽAVNOST: 200

32 Quality Criteria Knowing When You Can Ship • MSF v 4 defines: –

32 Quality Criteria Knowing When You Can Ship • MSF v 4 defines: – Minimum Acceptance Level (Scenarios) • Relates to “Core Functionality Set” – Test Thresholds • Code Coverage for Unit Tests • Other, context-driven (bugs per developer) • VSTS manages tracking and reporting of these quality criteria during all phases of the project TEŽAVNOST: 200

33 Work Items • Activities and Workstreams manage the concept of a work item,

33 Work Items • Activities and Workstreams manage the concept of a work item, which describes an assignable, individual piece of effort that needs to be done: – Bug – Quality of Service Requirement – Scenario – Risk (not yet in the beta of VSTS, but soon) – Task TEŽAVNOST: 200

34 Process Model TEŽAVNOST: 200

34 Process Model TEŽAVNOST: 200

35 Team System • Ingenious: tool that implements MSF! – As soon as you

35 Team System • Ingenious: tool that implements MSF! – As soon as you create a new project in VSTS you get to chose which version of MSF v 4 you want to use! • VS 2005 TS manages the flow of work items between team members, as well as overlooks their progress • Individual versions for – Developer – Architect – Tester • Reporting and management tools for project manager and other team members – Includes Outlook, Excel and Project Support TEŽAVNOST: 200

36 Future TEŽAVNOST: 200

36 Future TEŽAVNOST: 200

37 MSF and Software Development • Without a doubt, the emphasis of MSF v

37 MSF and Software Development • Without a doubt, the emphasis of MSF v 4 is on software development – The MSF team is now firmly a part of the Visual Studio group within Microsoft • Tying the framework to the tools (VSTS) was the masterstroke that gave MSF a very prosperous future – And vice-versa: the method adds value to the tools, beyond what any Microsoft competitor could offer today TEŽAVNOST: 200

38 MSF for Infrastructure Deployment • While initially there was a little confusion, it

38 MSF for Infrastructure Deployment • While initially there was a little confusion, it has now been confirmed that MSF v 4 will cater for Infrastructure Deployment too • While the detail is being finalised, please consider using MSF v 3 or MOF for purely infrastructure deployment oriented projects – Consider using the more flexible process approaches from v 3 – Soft skills, whichever version, like all good ideas, age only like wine, anyway TEŽAVNOST: 200

39 Summary • Projects fail for non-technical reasons • A framework such as MSF

39 Summary • Projects fail for non-technical reasons • A framework such as MSF fixes those problem • You don’t have to use all of MSF at once • If you use some bits you increase your chance of succeeding • Visual Studio Team System is a marvellous implementation of MSF principles TEŽAVNOST: 200

40 Resources • www. microsoft. com/msf • MSF for Agile Software Development: – lab.

40 Resources • www. microsoft. com/msf • MSF for Agile Software Development: – lab. msdn. microsoft. com/teamsystem/workshop/msfagile/defau lt. aspx • MSF for CMMI Process Improvement: – lab. msdn. microsoft. com/teamsystem/workshop/msfcmmi/defa ult. aspx • MSF v 3: – msdn. microsoft. com/vstudio/enterprise/msf/ • MSF Forum: – forums. microsoft. com/msdn/Show. Forum. aspx? Forum. ID=63 • MOF: – www. microsoft. com/mof TEŽAVNOST: 200