Scrum Project Management with Jira as showcase

35
Project and Issue Management Using JIRA Javad Chamanara Fusion Group University of Jena, Germany SWEP Course May 2017

Transcript of Scrum Project Management with Jira as showcase

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?