Top Banner
Work Agile with Scrum and Visual Studio Online 2013 Moataz Nabil Senior QC Engineer | Cequens | Egypt MCSD - MCTS - ISTQB Certified @moatazeldebsy | www.moataznabil.com Egyptian Automation Testers
55

Working Agile with Scrum and TFS 2013

Jan 08, 2017

Download

Technology

Moataz Nabil
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Working Agile with Scrum and TFS 2013

Work Agile with Scrum and Visual Studio Online 2013Moataz NabilSenior QC Engineer | Cequens | EgyptMCSD - MCTS - ISTQB Certified@moatazeldebsy | www.moataznabil.com

Egyptian Automation Testers

Page 2: Working Agile with Scrum and TFS 2013

Part 1

Introduction to Agile

Page 3: Working Agile with Scrum and TFS 2013

Project Management Methodologies

Page 4: Working Agile with Scrum and TFS 2013

Waterfall Model

Requirement Analysis

System Design

Implementation

Testing

Deployment

Maintenance

Page 5: Working Agile with Scrum and TFS 2013

Every Project Story

The customer knows nothing

The developer thinks about new technologies

The PM thinks about the deadline

The analyst thinks he knows everything

He got “everything” from the customer, who knows “nothing” ;-)

Page 6: Working Agile with Scrum and TFS 2013

Every Project Story

The developer: “I can do it in 3 months”

The PM: “You’ll do it in 2 months”

The project takes 4-5 month

Page 7: Working Agile with Scrum and TFS 2013

Every Project Story

1st Month: Everybody is happy

2nd Month: Customer sees “something”

3rd Month: Customer makes tons of changes

The developer screams

The project manager blames …. ???

Last Month: Everybody is at office till 8-10 PMEvery DAY:

The PM: Developer, you’re not done yet? LOSER!!

Page 8: Working Agile with Scrum and TFS 2013

Why does it happen?

Requirements are not fully understood at the beginning of the process.

Requirements change during the process.

The process becomes unpredictable when new tools and technologies are used.

Page 9: Working Agile with Scrum and TFS 2013

Other Methodologies

CMMI

Agile

Page 10: Working Agile with Scrum and TFS 2013

AgileWho’s this ???

Page 11: Working Agile with Scrum and TFS 2013

Agile Manifesto

Individuals and interactions

Over processes and tools

Working software

Over comprehensive documentation

Customer collaboration

Over contract negotiation

Responding to change

Over following a plan

Page 12: Working Agile with Scrum and TFS 2013

Agile Methodologies

eXtreme Programming (XP)

Pair Programming

Test Driven Development

Continuous Integration

Refactoring, Coding Standards, etc…

Scrum

Page 13: Working Agile with Scrum and TFS 2013

Scrum??

Page 14: Working Agile with Scrum and TFS 2013

Prerequisites

Small Team

Good People

Common Sense

Page 15: Working Agile with Scrum and TFS 2013

SCRUM provide a structure of

ScrumRoles

ScrumProcess

Artifacts

Page 16: Working Agile with Scrum and TFS 2013
Page 17: Working Agile with Scrum and TFS 2013

Roles

Product Owner

Scrum Master

Scrum Team

Page 18: Working Agile with Scrum and TFS 2013

Scrum Roles: Product Owner

Possibly a Product Manager or Project Sponsor

That’s what we call an “analyst”

Marketing

Internal Customer

etc.

Not a technical guy, BUT ….

Page 19: Working Agile with Scrum and TFS 2013

Scrum Roles: Scrum Master

Responsible for enacting Scrum values and practices

Manages the sprint meeting

Does the sprint reporting

Typically a Project Manager or Team Leader

Page 20: Working Agile with Scrum and TFS 2013

Scrum Roles: Scrum Team

Cross-functional

QA

Developers

UI Designers

Architect

etc

5-10 members

Page 21: Working Agile with Scrum and TFS 2013

Scrum Process

All Scrum Meetings are facilitated by the ScrumMaster, who has nodecision-making authority at these meetings.

Backlog Refinement Sprint

Sprint Retrospective

Sprint Planning

Daily Scrums

Sprint Review

Page 22: Working Agile with Scrum and TFS 2013

Backlog Refinement Meeting

Most Product Backlog Items (PBIs) initially need refinement because they are too large and poorly understood. Teams have found it useful to take a little time out of Sprint Execution — every Sprint — to help prepare the Product Backlog for the next Sprint Planning Meeting.

In the Backlog Refinement Meeting, the team estimates the amount of effort they would expend to complete items in the Product Backlog and provides other technical information to help the Product Owner prioritize them.

Page 23: Working Agile with Scrum and TFS 2013

SprintA certain period of time with specific deliverables

Lasts for 2-4 weeks – NO MORE NO LESS

Page 24: Working Agile with Scrum and TFS 2013

Sprint

Before Start: Sprint Planning

Starts with Sprint BacklogChoose highest priority items remaining in product backlog

Ends with Deliverables

New Features Developed / Old Bugs Fixed

Sprint Zero and Sprint One might deliver documents!Architecture Documents

UI Prototype

After End: Sprint Review Product Demonstration

Product Owner declares what’s done

(Optional) Measure velocity

Stakeholder feedback

Page 25: Working Agile with Scrum and TFS 2013

Sprint Daily Meetings

What did you do Yesterday ?

What will you do today ?

Do you have any problems ?

Page 26: Working Agile with Scrum and TFS 2013

Sprint Daily Meetings

Stand up Meetings

15 Minutes Max.

Well, don’t exceed 30 minutes at least

Entire Team + Scrum Master

Page 27: Working Agile with Scrum and TFS 2013

Sprint Review Meeting

After Sprint execution, the team holds a Sprint Review Meeting to demonstrate a working product increment to the Product Owner and everyone else who is interested.

The meeting should feature a live demonstration, not a report. After the demonstration, the Product Owner reviews the commitments made at the Sprint Planning Meeting and declares which items he now considers done.

Page 28: Working Agile with Scrum and TFS 2013

Sprint Retrospective Meeting

Each Sprint ends with a retrospective. At this meeting, the team reflectson its own process. They inspect their behavior and take action to adaptit for future Sprints.

Page 29: Working Agile with Scrum and TFS 2013

Time-Boxes

The Time-Boxes in Scrum are the:

Release Planning Meeting

Sprint

– 2 – 4 weeks

Sprint Planning Meeting

– What and how, each 4 hours for one month sprints

Daily Scrum

– 15 minutes Stand up

Sprint Review

– 4 hours for one month sprints

Sprint Retrospective

3 hours

Page 30: Working Agile with Scrum and TFS 2013

Artifacts

Product backlog

Sprint backlog

Burndown Chart

Page 31: Working Agile with Scrum and TFS 2013

Product BacklogList of work items during the entire project

Page 32: Working Agile with Scrum and TFS 2013

The Product Backlog represents everything necessary to develop and launch a successful product.

It is a list of all features, functions, technologies, enhancements, and bug fixes that constitute the changes that will be made to the product for future releases.

Page 33: Working Agile with Scrum and TFS 2013

Product backlog item

IndependentNegotiable

Valuable

Estimable

Small

Testable

Workflow & Characteristics

Page 34: Working Agile with Scrum and TFS 2013

Sprint backlog

Page 35: Working Agile with Scrum and TFS 2013

• At the beginning of each Sprint, the Product Owner and team hold a Sprint Planning Meeting to negotiate which Product Backlog Items they will attempt to convert to working product during the Sprint.

• The Product Owner is responsible for declaring which items are the most important to the business. The team is responsible for selecting the amount of work they feel they can implement without accruing technical debt. The team “pulls” work from the Product Backlog to the Sprint Backlog.

Sprint backlog

Page 36: Working Agile with Scrum and TFS 2013

Definition of Done

Designed

Refactored

Coded

Code review

Design review

Unit tested

Functional tested

Unit test harness Integration tested

Regression tested

Performance tested

Security tested

User Acceptance tested

Page 37: Working Agile with Scrum and TFS 2013

Task Dashboard

Page 38: Working Agile with Scrum and TFS 2013

Burndown Chart

Page 39: Working Agile with Scrum and TFS 2013

Practices

Test early and often

Build and deploy continuously

Acceptance Test Driven Development

Emergent Architectures

Refactor

Test Driven Development

Agile Database Development

Pair Programming

Page 40: Working Agile with Scrum and TFS 2013

Business Analyst Gather Requirements Analyze Requirements Create Product Backlog

Project Manager Work Breakdown Monitor Tasks Task Control Decisions Report Project Status

Architect Conceptual Design Logical Design Physical Design

Developer Generate Code Write Custom Code Analyze and Review Code Check-in

Tester Create Test Cases Run Tests File Bugs Verify Bug Fixes

Practices

Page 41: Working Agile with Scrum and TFS 2013

Part 2

ALM With Visual Studio Online

Page 42: Working Agile with Scrum and TFS 2013

REQUIREMENTS

PRODUCTBACKLOG

OPSBACKLOG

MonitorImplement

WORKING SOFTWARESHARED ARTIFACTS

DefineIdeation

DevelopIdea to working software

OperateWorking software in productionValue realization

Application Lifecycle Management Removing the impediments to continuous value delivery

Users/Stakeholders

Development & testing

Operations

ACTIONABLE LEARNING

Continuous value delivery

Page 43: Working Agile with Scrum and TFS 2013

TFS enables Visual Studio ALMTeam Foundation ServerFull lifecycle control for mission critical IT projects

Define

• Agile planning tools for stakeholder engagement

• Backlog management and capacity planning

Develop

• Developer productivity enhancements

• Continuous stakeholder feedback

Operate

• Automated build-deploy-test

• Detailed Reporting and Metrics

• Strong integration with Microsoft on-premises offerings

REQUIREMENTS

PRODUCTBACKLOG

OPSBACKLOG

MonitorImplement

WORKING SOFTWARE

Page 44: Working Agile with Scrum and TFS 2013
Page 45: Working Agile with Scrum and TFS 2013

Visual Studio Online 2013Cloud-hosted application lifecycle management

Managing the Lifecycle

Page 46: Working Agile with Scrum and TFS 2013

What is Visual Studio Online?Team

Foundation Service

Planning Source Repos Work Item Tracking Continuous

Delivery (Azure) Build Automation Test Case and Feedback

Management

Page 47: Working Agile with Scrum and TFS 2013

Plan details and subscriber benefitsIncluded for eligible MSDN subscribers:

Free Plan for up to 5 users

Unlimited number of projects Version control Work item tracking Agile planning tools Build (limits apply) Cloud Load Testing (limits apply)

Additional information at http://tfs.visualstudio.com

Page 48: Working Agile with Scrum and TFS 2013

Accessible from anywhere

• Source code and work items are accessible from any modern web browser

• Integrates with Visual Studio and Eclipse, includes command-line client for Xcode / other developer tools

Get started quickly, with no infrastructure to manage

• Create an account in minutes, set up continuous integration in a few easy steps

• Data is stored in the cloud, making server configuration a thing of the past

• Request and manage stakeholder feedback from anyone with a Live ID/Microsoft account

All languages and platforms welcome

• From C# to Python, from Windows to Android, developers can use a variety of languages and target a variety of platforms

• Use the tools your development teams are familiar with today – Team Foundation Service helps developers focus on what they do best: building great applications

Team Foundation Service

Page 49: Working Agile with Scrum and TFS 2013

Cloud-based source code & work item management

• Store and version control code in any language

• Integrates with Visual Studio and Eclipse, includes command-line client for Xcode / other developer tools

• Connectors to sync with Git repositories

Team collaboration and agile planning tools

• Work item and bug tracking

• Backlog management and capacity planning - Scrum, Agile, and CMMI project templates

• Kanban board and task boards

• Request and manage stakeholder feedback from anyone with a Live ID/Microsoft account

Build, continuous integration, continuous deployment

• Build services will build and run unit tests in the cloud (depends on project type)

• Supports deployment of web sites and web / worker roles directly to Azure as part of build

Team Foundation Service capabilities

Page 50: Working Agile with Scrum and TFS 2013

A consistent experience for developersUsing Visual Studio Using Eclipse

Page 51: Working Agile with Scrum and TFS 2013

Check In

Once your developer tool is connected to Team Foundation Service, uploading code is easy.

Gated check-in and code merging are also supported.

Uploading code is simple

Page 52: Working Agile with Scrum and TFS 2013

Consistent web UIHome shows a Burndown chart, task tracking and notifications

Page 53: Working Agile with Scrum and TFS 2013

DemoWorking with Agile and VS Online 2013

Page 54: Working Agile with Scrum and TFS 2013

Contact

@moatazeldebsy

moataznabil.com/blog

Egyptian Automation Testers

Page 55: Working Agile with Scrum and TFS 2013

Thank you ;)