Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
-
Upload
spiffy -
Category
Technology
-
view
1.286 -
download
1
description
Transcript of Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
The Real World Agile Roadshow – Getting started with Agile Application Lifecycle Management
Agile in Action – Act 1:Setup, Requirements and Architecture
Presented by:Colin NahBiz-Era.Net Pte LtdSilver Microsoft ALM Partner
| 2
Deployment
End of Life
Operations
Development
Idea
Governance
Illustrating ALM
The ALM Cycle
OperationsManagement
SolutionDeployment
RequirementsManagement
QualityAssurance and
Testing
Development
SolutionArchitecture
ApplicationLifecycle
Business Analysts
Requirements Management
QoS Management
Requirements Analysis
Architects
Architecture Modeling
Analysis and Design
Design for Deployment
Project Managers
Project Planning
Task Assignment
Bug Tracking
Visual Studio ALM Features
Plan and track your project Adopt Agile processes to help turn requirements into software Design and develop functionality Develop, unit test, debug, analyse and profile the application Use source code version control Build/compile the application Test the application by running manual or automated tests Manage testing systematically Deploy into virtual or physical environments
Team Foundation Server
Agile Development Using TFS
Complete ‘out-of-the-box’ Agile tooling Provides process enactment – supports your variation of Agile Supports traceability through work item tracking Provides stakeholder visibility via SharePoint portal Supports Windows security/group management Fully integrated with Office clients for non-developer roles Planning tools and reports integrated in Team Projects Customizable and extensible
TFS Process Templates
Variety of Agile process templates available MSF for Agile Software Development 5.0
Visual Studio SCRUM 1.0
Scrum for Team System 3.0
…
A process template defines: Work item types, templates, categories and links
Portal structure
Reports and documents
Groups and permissions
Version control settings
All templates can be modified/extended to suit your process
The free TFS Power Tools include a visual editor to easily modify process template settings
Introducing our Sample Project: MicroFinance HD
Demo
| 10
| 11
| 12
| 13
Setting Up an Agile Projectwith Visual Studio 2010
Demo
Requirements Gathering
Purpose: Detailed analysis and collection of business and technical requirements in the requirements specification, taking account of possibly conflicting requirements of various stakeholders such as users.
Includes: Stakeholder Analysis: who has requirements for our system?
Requirements Analysis: Identify duplicate requirements, consolidate and prioritize requirements, categorize requirements.
The Requirements specification document forms the basis for release planning.
How Visual Studio Helps
Requirements must be documented, actionable, measurable, testable, traceable, related to business needs or opportunities, and defined to a level of detail sufficient for system design. Requirements can be architectural, structural, behavioral, functional, and non-functional.
Requirements Gathering through Modeling
Visual Studio Ultimate provides UML modeling tools: Use case diagrams
Link directly to TFS as work items
Have acceptance tests linked to Microsoft Test Manager
Sequence diagrams Provide details of message interchange in the system
Component diagrams Describe the physical structure of the software
Activity diagrams Describe business processes and software algorithms
Class diagrams Focus on logical data types and their relationships
Requirements Gatheringwith Visual Studio 2010
Demo
SCRUM: An Agile Methodology
Scrum is a process skeleton that contains sets of practices (in the form of meetings) and predefined roles. Sprint (Iteration)
A sprint is the basic unit of development in Scrum. Sprints tend to last between one week and one month and are a time-boxed (i.e. restricted to a specific duration) effort of a constant length.
Each sprint is preceded by a planning meeting, where the tasks for the sprint are identified and an estimated commitment for the sprint goal is made.
During each sprint, the team creates a potentially deliverable product increment (for example, working and tested software). The set of features that go into a sprint come from a product backlog, which is a prioritized set of high level requirements of work to be done.
Meetings Daily Scrum - Each day during the sprint, a project status meeting occurs. This is called a
daily scrum, or the daily standup. Progress since the last meeting is reviewed and issues are discussed.
Sprint Planning Meeting - At the beginning of the sprint cycle (every 7–30 days), a Sprint Planning Meeting is held. Work is identified and the backlog is created.
Sprint Review Meeting – After completion of an individual Sprint cycle, the progress and work is reviewed and the working product is demo‘ed to stakeholders.
Sprint Retrospective – After a Sprint, team members reflect on the Sprint and define potential weaknesses and process improvements.
Agile Planning Tools in Visual Studio 2010
Long range planning tool: Product backlog (holds user stories in MSF Agile 5.0)
Release and iteration planning: Iteration backlog (holds user stories and tasks in MSF Agile 5.0)
Agile Planning Tools in Visual Studio 2010
Planning workbooks Integrated with TFS using work item queries
Product backlog Defines the requirements of the application
Provides an estimated ‘cost’ of the requirements
Iteration backlog Defines the scope of the iteration
Provides capacity planning capabilities
Reports Burndown and Velocity
Remaining Work
Agile Planning Tools in Visual Studio 2010
Product backlog workbook:
Iteration backlog workbook:
Agile Planning Tools in Visual Studio 2010
Iteration backlog workbook – capacity planning:
Agile Planning Tools in Visual Studio 2010
Remaining work report:
Using VS 2010 Agile planning tools and
workbooks
Demo
Architecture Blueprints: Patterns & Practices
Patterns & Practices Windows Azure Architecture Guidance - Part 1: Moving applications to the cloud http://msdn.microsoft.com/en-us/library/ff728592.aspx
Patterns & Practices Windows Azure Architecture Guidance - Part 2: Developing Applications for the cloud on the Windows Azure Platform http://msdn.microsoft.com/en-us/library/ff966499.aspx
Project Silk: Client-Side Web Development for Modern Browsers http://msdn.microsoft.com/en-us/library/hh396380.aspx
Windows Phone 7 Developer Guide http://msdn.microsoft.com/en-us/library/gg490765.aspx