lightweight tools for agile methods -...

12
Desktop Technology Program 1 Lightweight Tools for Agile Methods Frank Maurer University of Calgary Computer Science e-Business Engineering Group (ebe) [email protected] http://ebe.cpsc.ucalgary.ca/Frank.Maurer/ This presentation reports on joined work with Harpreet Bajwa, Lawrence Liu, Chris Mann, Grigori Melnik, Wenliang Xiong & Carmen Zannier 3-Feb-06 ebe Research 2 Copyright © 2005 Frank Maurer. All Rights Reserved. Overview Principles of agile methods ebe Research Overview

Upload: others

Post on 28-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 1

Lightweight Tools for Agile Methods

Frank MaurerUniversity of CalgaryComputer Science

e-Business Engineering Group (ebe)[email protected]

http://ebe.cpsc.ucalgary.ca/Frank.Maurer/

This presentation reports on joined work with Harpreet Bajwa, Lawrence Liu, Chris Mann, Grigori Melnik,

Wenliang Xiong & Carmen Zannier

3-Feb-06 ebe Research 2

Copyright © 2005 Frank Maurer. All Rights Reserved.

Overview

• Principles of agile methods• ebe Research Overview

Page 2: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 2

3-Feb-06 ebe Research 3

Copyright © 2005 Frank Maurer. All Rights Reserved.

Why Agile Methods?

• CHAOS Report, Standish Group– 66% of projects

failed or are challenged in 2002

– Large projects are failing more often than small projects

– Only 52% of features make it into product

http://www.standishgroup.com/sample_research/chaos_1994_1.phphttp://www.standishgroup.com/sample_research/PDFpages/chaos1998.pdf

16%

27%

26%

28%

34%

31%

40%

28%

23%

15%

53%

33%

46%

49%

51%

1994

1996

1998

2000

2002

Succeded Failed Challenged

3-Feb-06 ebe Research 4

Copyright © 2005 Frank Maurer. All Rights Reserved.

http://agilemanifesto.org/

Manifesto for Agile Software Development

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

• Individuals and interactions over processes and tools

• Working software over comprehensive documentation

• Customer collaboration over contract negotiation

• Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Kent Beck - Mike Beedle - Arie van Bennekum - Alistair Cockburn - Ward Cunningham - Martin Fowler - James Grenning - Jim Highsmith - Andrew Hunt - Ron Jeffries - Jon Kern - Brian Marick - Robert C. Martin - Steve Mellor - Ken Schwaber - Jeff Sutherland - Dave Thomas

Page 3: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 3

3-Feb-06 ebe Research 6

Copyright © 2005 Frank Maurer. All Rights Reserved.

How Everything Fits Together

Ken Beck. Extreme Programming Explained: Embrace Change, Addison-Wesley, 1999, p. 70

Scrum Flow (Sutherland, Schwaber and Beedle)

Ken Schwaber, Agile Project Management with Scrum, Microsoft Press: 2004.

Scrum: 15 min daily meetingsTeam members respond to basics:-What did you do since last Scrum?-Do you have any obstacles?-What will you do before next meeting?

Features assigned to Sprint

Sprint: 30 days

Potentially Shippable Functionality

Page 4: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 4

3-Feb-06 ebe Research 8

Copyright © 2005 Frank Maurer. All Rights Reserved.

Agile Practices• Knowledge sharing (“verbal documentation”, co-location)• Adaptive Project Management using Informal Feature

Description (story cards)• Fast feedback (on-site customer, continuous integration,

short iterations, retrospectives)• Emphasis on testing• Emerging (simple) design & refactoring• Pairing• Collaborative, "whole team approach"• Business contracts

3-Feb-06 ebe Research 9

Copyright © 2005 Frank Maurer. All Rights Reserved.

Overview

• Principles of agile methods• ebe Research Overview

– Empirical studies on agile methods– Tools for agile teams

Page 5: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 5

3-Feb-06 ebe Research 11

Copyright © 2005 Frank Maurer. All Rights Reserved.

Empirical Research on Agile Methods

• Are the claims of agilists justified?

• Issues:– Significance versus insight– Qualitative versus quantitative– Industry-based– Perceptions vs reality

3-Feb-06 ebe Research 12

Copyright © 2005 Frank Maurer. All Rights Reserved.

A Cross-Program Investigation of Students' Perceptions of Agile Methods (Melnik/Maurer)

• Online questionnaire– voluntarily and

anonymously• Total numbers of

respondents: 240– out of 693 invited,

35% response ratio• Over 3 years

– 6 academic semesters– 7 courses

• Online questionnaire– voluntarily and

anonymously• Total numbers of

respondents: 240– out of 693 invited,

35% response ratio• Over 3 years

– 6 academic semesters– 7 courses

35%240693Total, All Programs

94%1718Fall 2003

73%811Fall 2002

75%912Winter 2002GRAD (4

+2 years)

67%1624Winter 2004

61%2033Fall 2003

31%1962Winter 2003

35%1955Fall 2002

SENIOR (4 years)

13%18142Winter 2004

14%25175Winter 2003JUNIOR (2 years)

65%1117Winter 2004

96%2223Fall 2003

56%1018Fall 2002

55%1222Winter 2002

POSTDIPL (2+2 years)

23%940Fall 2003

61%2541Fall 2001,Winter 2002DIPL

(2 years)

Response rate

# of respon-dents

# of nvita-tionssent outSemester(s)Academic

program

Page 6: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 6

3-Feb-06 ebe Research 13

Copyright © 2005 Frank Maurer. All Rights Reserved.

Using XP Improves Productivity of Small Teams

2 7 8

46

26

0

90

14

2

7

8

51

6

19

12

1

21

0

0

20

40

60

80

100

120

140

Disagree Disagree Agree Agree

Strongly Somewhat Neutral Somewhat Strongly

SAIT UofC Junior Undergrads UofC Senior Undergrads UofC Grads

80%“I believe that XP helps get more work done in less time and is very effective for small groups as it allows for the group members not to get stuck for extended periods of time.”

3-Feb-06 ebe Research 18

Copyright © 2005 Frank Maurer. All Rights Reserved.

Comparative Analysis of Job Satisfaction (Melnik/Maurer)

• Web-based survey (459 complete, 286 partial responses)

• Some questions verbatim identical with Computerworld survey (936 responses)

• Overall job satisfaction by groups

11.0%

7.6%

25.0%

29.8%

8.5%

11.0%

21.4%

35.0%

31.3%

53.2%

18.0%

9.9%

29.4%

0.9%

IT General(supplementarystudy)

Non-agile (main study)

Agile

Page 7: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 7

3-Feb-06 ebe Research 20

Copyright © 2005 Frank Maurer. All Rights Reserved.

Longitudinal Agile Study (Mann/Maurer)

• Issues: Not much detailed data on agile methods from industry

• Approach inspired by ethnographical methods and action research– Embed researcher for two years in work environment– Change environment:

• Pair programming• Continuous integration & test-driven development• Scrum project management

– Observe and collect data

3-Feb-06 ebe Research 25

Copyright © 2005 Frank Maurer. All Rights Reserved.

Scrum Results

• Overall results:– Reduced

overtime– Increased

customersatisfaction

Average Percent Overtime Worked By Team

-20.00

0.00

20.00

40.00

60.00

80.00

100.00

01-0

5-20

03

02-0

9-20

03

03-1

6-20

03

04-2

0-20

03

05-2

5-20

03

06-2

9-20

03

08-0

3-20

03

09-0

7-20

03

10-1

2-20

03

11-1

6-20

03

12-2

1-20

03

01-2

5-20

04

02-2

9-20

04

04-0

4-20

04

05-0

9-20

04

06-1

3-20

04

07-1

8-20

04

08-2

2-20

04

09-2

6-20

04

10-3

1-20

04

12-0

5-20

04

01-0

9-20

05

02-1

3-20

05

Week

% H

ours

Ove

rtim

e

Scrum Introduced

New Windows App Release

Website Release

Windows App 1 support and Windows App 2

Development

Page 8: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 8

3-Feb-06 ebe Research 28

Copyright © 2005 Frank Maurer. All Rights Reserved.

Tools

3-Feb-06 ebe Research 29

Copyright © 2005 Frank Maurer. All Rights Reserved.

In-container Portlet Testing (Bajwa/Xiong/Maurer)

Portlets

Portlets Source: (IBM Portal [2])

Page 9: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 9

3-Feb-06 ebe Research 30

Copyright © 2005 Frank Maurer. All Rights Reserved.

The Portlet API layer is the only way Portlets and container communicate

Container-based Software: Testing Issue

3-Feb-06 ebe Research 31

Copyright © 2005 Frank Maurer. All Rights Reserved.

WIT- Design Overview

Page 10: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 10

3-Feb-06 ebe Research 34

Copyright © 2005 Frank Maurer. All Rights Reserved.

Requirements and Agile Planning• User stories

– On index cards – Short descriptions of a feature– In customer language,

no techno babble– Provide value to customer– Independent of each other– Testable – Small decompose large stories– Estimated by developers

• Collect story cards and prioritize them

3-Feb-06 ebe Research 37

Copyright © 2005 Frank Maurer. All Rights Reserved.

Digital Tables for Agile Planning (Liu/Maurer)

Page 11: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 11

3-Feb-06 ebe Research 38

Copyright © 2005 Frank Maurer. All Rights Reserved.

Current work

All photos from www.flickr.com

By curiouskiwi

By drp

By fallsroad

3-Feb-06 ebe Research 39

Copyright © 2005 Frank Maurer. All Rights Reserved.

Alan: A robotic colleague for agile teams

• Support continuous integration• Create and distribute

summaries of Scrum meetings

Page 12: Lightweight Tools for Agile Methods - ASEase.cpsc.ucalgary.ca/.../LightweightToolsForAgileMethods.pdf · 2018. 7. 16. · short iterations, retrospectives) • Emphasis on testing

Desktop Technology Program 12

3-Feb-06 ebe Research 42

Copyright © 2005 Frank Maurer. All Rights Reserved.

FitClipse

• Acceptance test driven development tool• Testing of distributed J2EE applications• Scenario-driven testing of business logic layer

as well as UI layer• Acceptance regression testing

Discussion

[email protected]://ebe.cpsc.ucalgary.ca/Frank.Maurer