AGILE GREECE 28th Athens Agile/Scrum...

Post on 23-Aug-2020

1 views 1 download

transcript

1

28th Athens Agile/Scrum Meetup

2016-06-14

"AntiPatterns in Software Development and how Agile Practices deal with them"

AGILE GREECE

2

Overview

● AntiPatterns● Agile and AntiPatterns

– Case Studies

– LIVE Workshop with further Case Studies

● Conclusion

3

AntiPatterns

● “Something that looks like a good idea, but which backfires badly when applied”

[Jim Coplien]

4

Categories

● Business Operations– Organizational

– Project Management

– Human Resources

– etc.

● SW Engineering– SW Design

● OO Design

– Programming

– Methodological

– SW Testing

– etc.

5

Agile

● Can it alleviate AntiPatterns?

A

6

Seagull Manager

“Seagull managers fly in, make a lot of noise, dump on everyone, then fly out.”

[Ken Blanchard]

7

Agile and 'Seagull Manager'

Teams are served by the Scrum Master

AAA

8

Smoke and Mirrors

“Functionality that does not yet exist, but appears as though it does”

Random()

9

Agile and 'Smoke and Mirrors'

● Agile focuses on Working Software● “Working Software over comprehensive

documentation”● “Working Software is the primary measure of

progress”● “The purpose of each Sprint is to deliver

Increments of potentially releasable functionality”

AAA

10

God Object

● “In OOP, a God Object is an object that knows too much or does too much”

11

Agile and 'God Object'

● Quality is NOT an after-thought● Code Quality practices

– Code Reviews

– Pair Programming

– Code Analysis Tools● Since the very baby steps of project

A

12

Let's Discuss!

13

(1) Law of Triviality

● Aka. “Bicycle Shed”● “Members of an organization give

disproportionate weight to trivial issues”● 'Organizational' type

14

(2) Micromanagement

● “A management style whereby a manager excessively observes or controls the work of subordinates or employees”

● 'Organizational' type

15

(3) Stovepipe

● Aka. “Silos”● “A stovepipe organization has a structure which

largely restricts the flow of information within the organization to up-down through lines of control, inhibiting or preventing cross-organizational communication”

● 'Organizational' type

16

(4) Premature Optimization

● “Sacrifice of maintainability, in favor of performance optimization, during early stages of design and development”

● 'SW Engineering Methodology' type

17

(5) Overengineering

● “Spending, and effectively wasting, resources making a project more robust and complex than is needed”

● 'Project Management' type

18

(6) Ninety-Ninety Rule

● “Tendency to underestimate the amount of time to complete a project when it is 'nearly done'”

● 'Project Management' type

19

(7) Analysis Paralysis

● “A project stalled in the analysis phase, unable to achieve support for any of the potential plans of approach”

– Generally, “The state of over-analyzing a situation so that a decision or action is never taken”

● 'Organizational' type

20

(8) Mushroom Management

● “The running of a company where the communication channels between the managers and the employees do not work properly. The personnel are not familiar with the ideas or the general state of the company, and are given work without knowing the purpose of this work.”

● 'Organizational' type

21

(9) Design by Committee

● “A project that has many designers involved but no unifying plan or vision”

● 'Organizational' type

22

References – Sources

● Agile Manifesto● Cunningham & Cunningham, Inc.: AntiPatterns● Wikipedia: AntiPatterns [2016-06-06]● Dr. Martin Fowler 's blog:

– Article about AntiPatterns

● ScrumAlliance ● Milindageorge blog:

– Article about Scrum teams

23

References – Pictures (I)

● Slide “AntiPatterns”– Picture of book 'AntiPatterns':

Amazon -> AntiPatterns

– Picture of book 'AntiPatterns in Project Management':

Amazon -> AntiPatterns in Project Management

● Slides about “Seagull Manager”– Picture of 'Seagull': Mirror.co.uk

– Picture of 'The Boss': Dilbert

– Picture of 'Scrum Master': ScrumAlliance -> Scrum Master

24

References – Pictures (II)

● Slides about “Smoke and Mirrors”– Picture of 'Smoke and Mirrors': timeglassjournal

– Picture elements of 'calculate button' and 'gears': clker.com

– Picture of 'Product Owner': milindageorge blog -> scrum team roles

● Slides about “God Object”– Picture of 'Statue': Easter Islands

25

Learn More

● W.J. Brown, R.C. Malveau, H.W. "Skip" McCormick, T.J. Mowbray: "AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis"

● W.J. Brown, H.W. "Skip" McCormick, T.J. Mowbray: "AntiPatterns in Project Management"

26

Contact Info, etc.

● If you feel like, you can find me at the Agile Meetup:

pek● Or, perhaps write to me at:

pkaklam [at] gmail [dot] com

● And since you have read that long, here is a tip. Start your trip in AntiPatterns with the third and first items of the “References – Sources” slides.

27

THANK YOU