praktische softwaretechnik · 2018-04-05 · • product owner is always available to answer...

36
Winter Semester 2009/2010 Lecture ∙ Agile and Open Source Software Development Copyright © 2009 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich-Alexander-University of Erlangen-Nuremberg Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich-Alexander-University of Erlangen-Nürnberg Praktische Softwaretechnik Prof. Dr. Dirk Riehle Lecture 23/30 of 20.01.2010

Upload: others

Post on 26-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

Winter Semester 2009/2010 Lecture ∙ Agile and Open Source Software DevelopmentCopyright © 2009 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nuremberg

Winter Semester 2009/2010 Lecture ∙ Praktische SoftwaretechnikCopyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Praktische Softwaretechnik

Prof. Dr. Dirk Riehle

Lecture 23/30 of 20.01.2010

Page 2: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

2Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Table of Contents

# Content

1 Process Frameworks

2 Plan­Driven Software Development

3 Agile Methods (Scrum + Extreme Programming)

4 Open Source Software Development

5 Comparison of Frameworks

6

Page 3: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

3Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

The Three Main Process Frameworks

Plan­Driven

Agile Methods

Open Source

Page 4: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

4Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Plan­Driven Software Development

• Linear, phase­oriented process− Main goal is to minimize risk through careful upfront planning

− Equates phases with activities

− No iterations, just one pass

analysis designimple­

   mentationstart end

time

Page 5: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

5Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

An Illustration of Plan­Driven Development

Picture credit: From http://www.megawoosh.com

Page 6: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

6Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Example Phases in Plan­Driven Development

• Project negotiations

• Requirements analysis

• Contract definition

• System analysis

• Software architecture design

• System design

• User interface design

• Implementation

• System test

• Acceptance test

• Handover

• Actual use

• Lawsuit

no feedbackuntil afterdelivery

Page 7: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

7Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Agile Methods

P E RP E R P E R... ...

time

• Agile methods is the name of a class of process frameworks− Extreme Programming, SCRUM, DSDM, Adaptive Software Development, Crystal, 

Feature­Driven Development, Pragmatic Programming, etc.

− Unified by the recognition of a common philosophical base and joined in their rejection of the traditional life­cycle model

Page 8: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

8Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Agile Philosophy and Agile Manifesto

• Core agile method values− Individuals and interactions over processes and tools

− Working software over comprehensive documentation

− Customer collaboration over contract negotiation

− Responding to change over following a plan

• Codified (and marketed) as the Agile Manifesto− See http://www.agilemanifesto.org

Page 9: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

9Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Two Example Agile Methods

Scrum(mostly as process framework)

Extreme Programming (XP)(mostly for development practices)

Page 10: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

10Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Process and Programming Practices

User StoriesFeature Prioritization

Release Planning

Sprint PlanningSprint Review

...

Test FirstPair Programming

Continuous Integration

Daily ReleaseRefactoring

...

Page 11: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

11Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Scrum's Development Process

• Succession of equal­length sprints (= short iterations)

• Intervention points are during planning and review

• Product owner is always available to answer questions

P = planning ­ E = engineering ­ R = review (or release or retrospective)

P E RP E R P E R... ...

time

sprint n+1sprint n­1 sprint n

1­4 weeks 1­4 weeks1­4 weeks

}}}

Page 12: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

12Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

The Significance of (Short) Iterations

• Short iterations lead to focus on high­value features first

• User feedback helps team steer product to meeting needs right

• Quality feedback helps team deliver high­quality software

• Feedback loop ensures problems and hence risk surfaces early

• Iterations help recognize and realize new innovative features

• Established well­worn rhythm is sustainable, avoids burnout

• Even with missed deadlines, partial functionality is better than none

Establishes shortest economically feasible feedback loop

Page 13: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

13Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Structure of an Exemplary Sprint

day 5Wednesday

day 1Thursday

day 3Monday

day 2Friday

product backlog development

software development

product backlog development

software development

product backlog development

software development

product backlog development

software development

...

noonstart end

daily

 scr

umda

ily s

crum

daily

 scr

umda

ily s

crum

release

sprintplanning

retrospectivereview

next sprintpreparation

Page 14: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

14Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Test­Driven Development

• Test­driven development (abbrev. TDD)− Is a core process for programming activities

− Promises minimal fluctuations in development speed

− Takes the stress out of refactoring your code base

− Considered a high­end practice (requires too much discipline for many)

− Requires significant experience with ancillary tools and techniques

• First described by Kent Beck in [Beck 2003]

Page 15: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

15Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

TDD Follows the XP Mantra

Make it run

Make it right

Make it fast

Page 16: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

16Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

The Smallest Possible (Believable) Process

Description n Implementation nTest Suite n

...

Description n+2

Description n+1

Description n­1

Description n­2

Test Suite n­1

Test Suite n­2

Implementation n­1

Implementation n­2

... ...

...

enhance test suite

on to next feature

Page 17: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

17Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

The Promise of Test Driven Development

• You can release after every feature implementation

• The likelihood of failure or bugs is as minimal as possible

• The product grows incrementally and steadily

• The code is of pristine (and lean) quality

• TDD promises minimal fluctuations in development speed

Page 18: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

18Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

TDD Subprocesses

1. Translate description into test suite

2. Implement feature to fulfill (“green­bar”) test suite

3. Revise test suite from new domain and implementation insights

4. Refactor test suite to keep code healthy

5. Refactor implementation to keep design and code healthy

6. Exit when test suite is complete and all tests succeed

4

Description ImplementationTest Suite1 2

3 6

5

Page 19: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

19Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

TDD is a Complex Adaptive System

Two simple rules

only write new code when a test fails

eliminate waste

clean code that works

deliver

Page 20: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

20Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Definition of Open Source (Abbreviated)

• Open source software is software that is− available in source code form

− can be freely used and modified

− can be freely redistributed

− cf. four freedoms of software

• The open source initiative− maintains the definition and trademark

− approves open source licenses

8.1Open Source 

Definition and History

Page 21: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

21Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Some Open Source Projects

Page 22: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

22Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Free/Libre/Open Source Software

• The free software movement− Initiated (and still led) by Richard 

Stallman (MIT) in the 1980 to free software (from being closed)

− Free software philosophy summarized as “free as in 'free speech' not as in 'free beer'” 

• Free Software Foundation− http://www.fsf.org

− U.S. 501(c) non­profit organization

• The open source movement− Eric Raymond: “Cathedral and the 

Bazaar” ­­­ describes open source as development method

− Formalized 1998 to address perceived anti­commerce bias of “free software”

• Open Source Initiative− http://www.opensource.org

− U.S. 501(c) non­profit organization

FLOSS = Free/Libre/Open Source Software

Page 23: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

23Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Economic Impact of Open Source

• Commercial use− Gartner: “By 2012, more than 90 percent of enterprises will use open source [...]” [1]

− By and large, open source has gone mainstream, is just a product like any other

− Today, formal open source adoption strategy elusive and TCO gains unclear

− Open source dominates software­as­a­service and in startups

• Packaged software market− In 2006, open source held $1.8B / $235B = 0.8% of market revenue [2] [3]

− IDC: Open source revenue will reach $5.8B by 2011 (26% CAGR 2006­11) [2]

[1] Gartner Inc. “The State of Open Source 2008.”[2] IDC. “Worldwide Open Source Software Business Models 2007–2011 Forecast: A Preliminary View.”[3] Software & Information Industry Association. “Packaged Software Industry Revenue and Growth, 2006.”

8.2

Economic Impact

Page 24: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

24Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Current and Projected Growth Pattern

[1] Deshpande, Riehle. “The Total Growth of Open Source.” In Proceedings of OSS 2008.

2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 20260

50

100

150

200

250

300

350

[1]

total market (growth)

(This is a guesstimate;not drawn to scale)

open source end­game

Page 25: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

25Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Community Open Source

(e.g. Linux, TikiWiki)

CommercialDistribution

(e.g. RHEL, SLES)

CommunityDistribution

(e.g. Debian)

CommercialOpen Source

(e.g. MySQL, Jasper)

Multi­productassembly (“stack”)

Single productor product line

Community­owned Single or dominant proprietor

Types of Open Source Projects

Page 26: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

26Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Time­line of Open Source

1991: Linux project started

1999: Apache Software Foundation founded

2004: Eclipse Foundation founded

1995: MySQL AB founded

1998: Open Source Initiative founded

2001: MySQL AB funded

Single Vendor (“Commercial”) Open Source

Managed Community Open Source

Traditional Community Open Source

Page 27: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

27Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Open Collaboration [1]

Egalitarian

Meritocratic

Self­organizing

[1] Dirk Riehle et al. “Open Collaboration.” IEEE Software vol. 26, no. 2 (March/April 2009).

Page 28: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

28Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Traditional vs. Open Collaboration

• Hierarchical− Closed and hidden silos

− Assigned to project

• Status­driven− Public and private discussions

− Hierarchical status decides

• Assigned tasks− Prescribed process

− Prescribed jobs

• Egalitarian− Open for contribution

− Everyone can contribute

• Meritocratic− Public discussion process

− Decisions based on merit

• Self­organizing− People find their own process

− People find their best project

Open CollaborationTraditional Work

Page 29: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

29Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Roles in Traditional Processes

...

ProductManagement

Research andDevelopment

QualityAssurance

TesterDevelopmentManager

DeveloperDeveloper

ProductManager

Page 30: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

30Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Artifacts in Traditional Processes

PM R&D QA

TesterDevelopmentManager

Developer

Developer

ProductManager

RequirementsDocument

Reports andTest Code

ProgramCode

Time Table

Page 31: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

31Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Committers, Contributors, Community

• Committers− Main developers

− With access rights

• Contributors− Casual developers

− Submit patches

• (User) community− Provide bug reports

− Provide feedback

(User) community(100­100.000)

Contributors(10­100)

Committers(1­10)

Page 32: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

32Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

PostgreSQL Product Management

• Who defines features? [1]− Patches

− Scratching one's itch

− Individual developer initiatives

− Company­driven contributions

− User polls on project home page

• Product management practices− Leadership by core team

− Maintenance of a todo list [2]

− No prioritization: “Pick your feature”

[1] http://www.postgresql.org/developer/roadmap[2] http://wiki.postgresql.org/wiki/Todo

Page 33: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

33Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

PostgreSQL Development

[1] http://www.postgresql.org/community/contributors/

Command Prompt

Product

0+3

EnterpriseDB

Product

2+1

ACME

Product

0/1+0/1...

Core Team [1]Major Contributors

PostgreSQLOfficial releasesVersions 8.x, 7.4

S

Some Fix

Anon B.Coder

Page 34: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

34Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

PostgreSQL Quality Assurance

Anon B. Company

Product

Developer

Core Team

Major Contributors

PostgreSQLOfficial releasesVersions 8.x, 7.4

Anon B. Customer

Project

Developer

CommitFest

Patch Review

Round Robin

Anon B. Coder

Project

Developer

Page 35: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

35Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik

Copyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Comparison of Process Frameworksla

rge 

proj

ect

noye

snew application domain

yesno

cxccplan­driven

agile methodsopen source

agile methods

open source

agile methodsopen source

plan­drivenopen source

Page 36: Praktische Softwaretechnik · 2018-04-05 · • Product owner is always available to answer questions P ... Winter Semester 2009/2010 Lecture ∙ Praktische Softwaretechnik ... Product

Winter Semester 2009/2010 Lecture ∙ Agile and Open Source Software DevelopmentCopyright © 2009 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nuremberg

Winter Semester 2009/2010 Lecture ∙ Praktische SoftwaretechnikCopyright © 2010 Dirk Riehle ∙ Open Source Research Group ∙ Friedrich­Alexander­University of Erlangen­Nürnberg

Questions? Feedback!

http://dirkriehle.com ­ [email protected] ­ @dirkriehle