29
© 2011 Intland Software 1 Overcoming Geographical and Cultural Distribution: Distributed Software Development with Scrum and Social Coding 12.07.2011 Michael Lukas, Janos Koppany

Distributed Software Development with Scrum and Social Coding

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Distributed Software Development with Scrum and Social Coding

© 2011 Intland Software 1

Overcoming Geographical and Cultural Distribution:Distributed Software Development

with Scrum and Social Coding

12.07.2011

Michael Lukas, Janos Koppany

Page 2: Distributed Software Development with Scrum and Social Coding

Agenda

• Distributed Software Development @Intland

• Live Demo

• V-Model and Waterfall

• Scrum & Kanban

• Social Coding

• Live Demo

• Questions and Answers

© 2011 Intland Software 2

Page 3: Distributed Software Development with Scrum and Social Coding

3© 2011I ntland Software 3

Intland's History

• 2002 - CodeBeamer 1.0 – for early adopters

• 2003 – Collaboration extensions

• 2008 – codeBeamer, Jolt Award, Sun, 100.000 users

• 2011 – Cloud support (USDA)

codeBeam

er

Source Code Engineering Features

CollaborativeTool Extensions

IntegrationsSCMs, IDEs

Prof. Services

ALM+Collaboration

Page 4: Distributed Software Development with Scrum and Social Coding

Intland’s Distributed Development

© 2011 Intland Software 4

Page 5: Distributed Software Development with Scrum and Social Coding

What is “codeBeamer”?

• … an Application Lifecycle Management platform, supporting

development teams to manage their processes from requirements

to release.

• … increases productivity, provides full traceability, improves and

reduces costs by centralized management of processes, users and

projects.

• … offers collaboration and supports users to achieve an increase in

efficiency of up to 50%.

• … in practical use: a great collaboration solution!

© 2011 Intland Software 5

Page 6: Distributed Software Development with Scrum and Social Coding

Process Support

© 2011 Intland Software 6

Scrum, Kanban Waterfall, V-Process, Hybrid

Page 7: Distributed Software Development with Scrum and Social Coding

• Project & Process Management

• Requirements Management

• Change Management

• Knowledge Management

• ITIL, SLA Management

© 2011 Intland Software 7

• Distributed Software

Development

• Issue Tracking

• Ticketing System

• Business Process

Monitoring

codeBeamer’s Operational Areas

Page 8: Distributed Software Development with Scrum and Social Coding

V-Model

V-Model

© 2011 Intland Software 8

Page 9: Distributed Software Development with Scrum and Social Coding

V-Model

Key Elements:

• Process Modules

• Validation and Tracebility

• Dependences between Modules

• Tasks that have to be executed

• Iteration Steps

© 2010 Intland Software 9

Page 10: Distributed Software Development with Scrum and Social Coding

Waterfall or V-Process in codeBeamer

© 2011 Intland Software 10

Code

ComponentSpec.

ComponentTest

SW Design Spec.

SW Integration

SW Requirements Specification

SW ValidationcB WIKI and documents

cB CMDB +Tracker

cB Projects

cB SCMGIT, eGIT, Gerrit, SVN

cB Releases, WIKI, Baselines

cB Reporting, cBRelease

Integrated tools: HP QC,Hudson, build tools

Page 11: Distributed Software Development with Scrum and Social Coding

Scrum & Kanban

Scrum & Kanban

© 2011 Intland Software 11

Page 12: Distributed Software Development with Scrum and Social Coding

Scrum

Key Elements:

• User Stories

• Product Backlog

• Sprints

• Scrum Roles

(Scrum Master, Product Owner, Team)

© 2010 Intland Software 12

Page 13: Distributed Software Development with Scrum and Social Coding

Scrum Wizard

© 2011 Intland Software 13

Page 14: Distributed Software Development with Scrum and Social Coding

Scrum vs. V-Model

© 2010 Intland Software 14

Scrum V-Model

Advantages

• Light weighted process/ project management

• Short iteration cycles, Sprints

• Easy to learn

Advantages

• Clear definition of project phases

• Complete overview of the whole process

• Industries proven

Disadvantages

• No overview of the whole process

• High communication effort (daily Scrum)

• Less architectural overview

Disadvantages

• Less flexibility• No clear resource disposition

• Long iteration cycles

Page 15: Distributed Software Development with Scrum and Social Coding

Combination of Scrum and V-Model in codeBeamer

• In codeBeamer, the artecfacts of both methods are combined - in

one project allowing to use the roles for Scrum and the defined

roles in V-Model.

© 2010 Intland Software 15

Requirements, Tasks, Test SCM,

Builds, Project Overview

User Stories,Product Backlog, Sprint Plan,

Kanban,

CBRelease

In the release, all artifacts are combined, allowing a complete overview of Scrum working items as well as V-Model items.

ScrumV-Model

Page 16: Distributed Software Development with Scrum and Social Coding

Social Coding

Social Coding

© 2011 Intland Software 16

Page 17: Distributed Software Development with Scrum and Social Coding

Centralized Work with Subversion, CVS, …

© 2011 Intland Software 17

Centralrepository

Page 18: Distributed Software Development with Scrum and Social Coding

DVCS Central Shared Repository

© 2011 Intland Software 18

sharedrepository

•Offline Work•Merge•Speed

A Developer local

B Developerlocal

C Developerlocal

Page 19: Distributed Software Development with Scrum and Social Coding

DVCS Central Shared + Private Repository

© 2011 Intland Software 19

sharedrepository

•Offline Work•Merge•Speed

A Developer local

B Developerlocal

C Developerlocal

repository

Page 20: Distributed Software Development with Scrum and Social Coding

DVCS Fork/Pull-Request Workflow Example

© 2011 Intland Software 20

Blessedrepository

Page 21: Distributed Software Development with Scrum and Social Coding

DVCS Fork/Pull-Request Workflow Example

© 2011 Intland Software 21

Blessedrepository

A Developer public

B Developer public

Forkcreation

Page 22: Distributed Software Development with Scrum and Social Coding

DVCS Fork/Pull-Request Workflow Example

© 2011 Intland Software 22

Blessedrepository

A Developer public

B Developer public

A Developer local

B Developerlocal

IntegrationManager(s)

Creating a local clone

Page 23: Distributed Software Development with Scrum and Social Coding

DVCS Fork/Pull-Request Workflow Example

© 2011 Intland Software 23

Blessedrepository

A Developer public

B Developer public

A Developer local

B Developerlocal

IntegrationManager(s)

Starting a Pull-request

Checkin changes Pull-request

Page 24: Distributed Software Development with Scrum and Social Coding

DVCS Fork/Pull-Request Workflow Example

© 2011 Intland Software 24

Blessedrepository

A Developer public

B Developer public

A Developer local

B Developerlocal

IntegrationManager(s)

Merging changes in blessed repositoriy

Merge

Page 25: Distributed Software Development with Scrum and Social Coding

DVCS Fork/Pull-Request Workflow Example

© 2011 Intland Software 25

Blessedrepository

A Developer public

B Developer public

A Developer local

B Developerlocal

IntegrationManager

Share changeswith the team

Page 26: Distributed Software Development with Scrum and Social Coding

GIT Workflow with Forks and Pull Request

© 2011 Intland Software 26

Bob DeveloperLocal Repository

Integrationmanager

Bob DeveloperRemote Repository

BlessRepository

ForkPull Request

Fetch Push

codeBeamer Server

Page 27: Distributed Software Development with Scrum and Social Coding

Live Demo

© 2011 Intland Software 27

Live Demo

Page 28: Distributed Software Development with Scrum and Social Coding

Questions & Answers

© 2011 Intland Software 28

Questions and Answers

Page 29: Distributed Software Development with Scrum and Social Coding

Thank you!

Thank you for your attention!

If you wish to have further information

please visit our homepage:

www.intland.com

www.javaforge.com

HgEclipse: http://www.javaforge.com/project/HGE

codeBeamer Eclipse Studio: http://www.javaforge.com/project/CBES

© 2010 Intland Software 29