Scrum Project Management with Jira as showcase

Post on 16-Mar-2018

134 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

Transcript

Project and Issue ManagementUsing JIRA

Javad ChamanaraFusion Group

University of Jena, GermanySWEP Course

May 2017

The concepts

Product

Developer Team Stakeholders

Project

What is a Product?

• A (mainly) software program that satisfies a set of requirements, operates in an environment, and is offered for use (paid or free)

• If the product is not shipped, it can be categorized as a service.

What is a Project?

“a temporary endeavor undertaken to create a unique product, service or result.”

• Limited Duration

• Limited Resources

• Limited Cost

Take a look at PMBOK

Who is a Stakeholder?

• Anyone who could impact or be impacted by the project– decisions– outcomes– activities

• For example– Customers– Users– Developers– Marketers– Regulatory entities

How to Run a Project?

• Use Project Management

– Methods

– Tools

– Art

• To deliver quality product under constraints

– Cost (resources)

– Time

– Product scope

Different PM Paradigms

• Waterfall

• Iterative

• Agile

• Special Purpose

– Industry 4

– CMM

Agile Methods

• Agile Unified Process

• Dynamic Systems Development Method

• Essential Unified Process

• Extreme Programming

• Feature Driven Development

• Scrum

Scrum

• Agile

• Simple

• Low Overhead

• Iterative

• Delivery Oriented

• Feedback Driven

Product Backlog

Product

Item 10 Item 11 Item 12 Item 13

Item 1 Item 2 Item 3

Item 14

Item 4 Item 5 Item 6 Item 7

Item 8 Item 9

Product Backlog Item

• A package of “what” will be built.

– User story, use-case, user scenario, feature, etc.

– Requested by stakeholders

– Has/delivers a business value

• Has importance and effort attributes

• The backlog is prioritized by importance

Work Estimation

• Complexity: – Business complexity– Technical complexity– Testing complexity

• Effort: – the capabilities/ skillset of developers– Architectural (lack of) support– Technological factors

• Duration: – Inter-dependency– Resource availability

Work Item Estimation

• By effort needed to realize it

• By complexity of the item

• By virtual points (you decide)

– Sizes: S, M, L, XL

– Powers of 2: 1, 2, 4, 8, 16

– …

Estimated Work Items

Product

Item 10

Item 7 Item 8

Item 12

Item 1 Item 2 Item 3

Item 13Item 11

Item 14

Item 4 Item 5

Item 6

Item 9

Planning

• Define Milestones

– Times to deliver functioning product

• Divide the product backlog

– smaller chunks “Sprints”

• Define, schedule, and assign tasks

• Monitor progress

• Take corrective actions if needed

Product

Sprint

• Is an iteration• Works on a subset of the backlog items• Usually those who deliver the highest values

• Delivers a functioning product• An increment to the previous one• The delivery is measurable

• Has a duration• Usually 2-4 weeks• Depends upon team, architecture, change frequency, product

stability

• It’s a time box• Has an explicit and sharp start and end date• No change is introduced during the sprint

Sprint Backlog

Product

Item 10

Item 7

Item 8

Item 12

Item 1 Item 2Item 3

Item 13

Item 11

Item 14

Item 4 Item 5

Item 6

Item 9

SP1

SP2

SP3

SP4

Sprint Monitoring

Backlog Items, revisited!

• Defects– Lack of expected functionality– Wrong functionality– Defective interaction

• Change Requests– New Items– More detailed use-cases– Alteration of the existing ones

• Technological/Architectural difficulties– Performance– Security– Design and Refactoring

Who Introduces Change?

Product

Project

Stakeholders

Testers

Developers

Embrace the Changes!

CR Planning

• CRs are of high priority

• Assign them to the nearest sprint

• But avoid “Tachycardia”

• Conduct especial “CR sprints”– To fix issues

– To stabilize product

• To reduce “issue to feature ratio”

• Perform alpha testing

Tasks and assignments

• Breakdown items to tasks– Various disciplines: design, implement, test,

document, …

– Varying granularity: Few hours to one day• Setting an upper bound is useful

– Force the team to understand and plan

• Setting a lower bound is also useful– Cost of over-specification and over-planning

• Notice effort Vs. duration

– Task estimation and re-estimation• According to sprint meeting intervals

• Management and monitoring needs

• Overhead of re-estimation

Sprint Board

JIRA

• A project and issue mgmt. tool

• SaaS and on premise deployment

• Free and paid plans

• Web and mobile based

• Integrated with other tools

– Collaboration

– Source Control

– Wiki

Jira Concepts

• Project• Milestone• Component• Item• Sprint• Board• Version• Bug• Workflow

Jira Live

• Show case

– https://javadch.atlassian.net

• Introductory video

– https://youtu.be/8KPoZ5g8NqU

So Now?

• Features are described

• Tasks are assigned

• Developers are ready

Start Producing Artifacts

Where to put the Artifacts?

• SCM: Software Configuration Management

• VCS: Version control system

– Revision Control System

But Why?

• Isolation– Keep some artifacts private– Isolate your changes– Isolate from others’ changes

• Integration– Receive others’ changes– Share your changes

• Identification– Versions– Releases

• Maintenance– Archive– Time travel

• Automation

Convinced?

Hmmm!?

• If you have ever:

– Made a change to code and realized it was a mistake

– Lost code or had a backup that was too old

– Had to maintain multiple versions of a product

– Wanted to see the difference between two versions of your code

– Wanted to prove that a particular change broke or fixed a piece of code

Hmmm!?

• If you have ever:– Wanted to review the history of some code

– Wanted to submit a change to someone else's code

– Wanted to share your code, or let other people work on your code

– Wanted to see what has been done, where, when, and by whom

– Wanted to experiment with a new feature without interfering with working code

OK, OK! What tools are there?

• Depends– Central Vs. Distributed– Hosted Vs. On Premise– Vendor Specific Vs. Open– Integrated Vs. Standalone– Access Control?– Price!

• Some Names– CVS– SVN– Git– TFS

Which one should I use?

• Kob and Marcel introduce GIT

Thank you

Questions?

top related