Team System and Microsoft Solutions Framework Team collaboration tools Process authoring Process Guidance MSF-Agile & MSF-CMMI Software Factories Future developments
Work Item Guidance
Who uses “Bug” and how?
Roles
Process Guidance A brief overview of the activityThe steps to perform the activity
Cycles for Application Development Cycles describe the frequency with which activities are performed or work products produced and updated Cycles are about the execution of the project and its tasks
Roles and Advocacies
MSF-Agile vs. MSF-CMMI MSF for CMMI Process Improvement Approvals Change Requests Formal Reviews Process Improvement Activities Requirements Analysis MSF for Agile Software Development Iteration Planning Shadow Architecture Functional/Exploratory Testing Test Driven Development Context-Driven Test
When to use each methodology Choose MSF for CMMI Process Improvement over MSF for Agile Software Development, if –Your project has a longer life cycle and requires a record of decisions made –Your organization is undertaking a broad quality assurance and process improvement initiative –Your team needs the assistance of explicit process guidance rather than relying on tacit knowledge and experience
Manifesto for Agile Software Development We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. Kent BeckJames GrenningRobert C. Martin Mike BeedleJim HighsmithSteve Mellor Arie van BennekumAndrew HuntKen Schwaber Alistair CockburnRon JeffriesJeff Sutherland Ward CunninghamJon KernDave Thomas Martin FowlerBrian Marick © 2001, the above authors this declaration may be freely copied in any form, but only in its entirety through this notice.
Team System and Microsoft Solutions Framework Team collaboration tools Process authoring Process Guidance MSF-Agile & MSF-CMMI Software Factories Future developments
Software Factory All the kit you need for working within a particular development context –E.g. telecoms, financial; web services, databases Initial solution and project structure and content Domain Specific Languages For example: Miscellaneous tools Recipes (= context- specific tools in VS) Add Service Run on server Add Service Run on server
Team Software Factory All the kit you need for working within a particular development context –Including process support Miscellaneous tools Initial solution and project structure and content Domain Specific Languages Recipes (= context- specific tools in VS) Add Service Run on server Add Service Run on server Team Foundation Server Miscellaneous tools Initial solution and project structure and content Domain Specific Languages Recipes (= context- specific tools in VS) Add Service Run on server Add Service Run on server Process Template for this domain
Team Software Factory Contents Work Item Definition Types, Fields, States, Transitions, Layout, Initial Project Work Items Work Product Definition & Examples Documents & Plans Queries & Reports Project Portal Definition Permission Group Definition Iteration Definition Narrative Description Roles (Developer) Work Streams (Fix a bug) Activities (Create a Unit Test) Views (By Discipline, Project Management) Specific Methodology Concepts Recipes DSLs Other Tools Guidance on all those
Process Components Current – big blocks: Future – composable components: MSF-Agile MSF-CMMI SCRUM Agile Bug tracking Issue Tracking XP Tasks Change Request tracking Select EUP XP Tasks Agile Bug tracking Strict Checkin rules Burndown reports Issue Tracking
Process control panel pages
Concept – Process Control Panel Features Custom set…. Code coverage that must be obtained before check in is allowed Authors of FxCop rules score them by strength This slider selects the ones that get applied. Or you can select a “Custom set”. Selects from a variety of alternatives in the narrative guidance, and enables / disables check boxes in some work items
Process Development Model Process users author the Process Template as experience is gained Process Template Guidance in all forms Pass to next projects Reuse it ourselves Create with experience Guru helps generalize
Stiffening Process gets less malleable as time goes on Guidance in all forms Pass to next projects Reuse it ourselves Create with experience Review, triage Project 1Project 2Project n…
Mature factory Well-developed process can be passed around Process template Coaching From development
Adding local guidance Who?
Software Factory = packaged tools for a purpose Published factories may come with process support included Or use combinations of publised factories You can author factories –Including authoring guidance while in use
© 2006 Microsoft Corporation. All rights reserved.