Sei sulla pagina 1di 47

On the Benefits/Limitations of

Agile Software Development:



An Interview Study with Brazilian
Companies

Fernando Gustavo Bruno Alexandre


Kamei Pinto Cartaxo Vasconcelos
INTRODUCTION 2 / 47

e t
tern
In
INTRODUCTION 3 / 47

METHODS TOOLS PRACTICES


AGILE SOFTWARE DEVELOPMENT 4 / 47

▸ Among the notable solutions, Agile


Software Development (ASD) stands out
as a solid, low effort, and useful practice.
[1, 2, 3]

[1] Barry Boehm. 2002. Get ready for agile methods, with care. Computer 35, 1 (2002), 64–69.
[2] Barry Boehm. 2006. A View of 20th and 21st Century Software Engineering. In Proceedings of the 28th International
Conference on Software Engineering (ICSE’ 06). 12–29.
[3] D. J. Reifer. 2002. How good are agile methods? IEEE Software 19, 4 (Jul. 2002),16–18.
AGILE SOFTWARE DEVELOPMENT 5 / 47

[1]
▸ Manifesto for Agile Software Development

"Individuals and interactions over processes and tools.



Working software over comprehensive documentation.

Customer collaboration over contract negotiation.

Responding to change over following a plan.”

[1] Kent Beck et al. The Agile Manifesto. (February 2001). Retrieved May 17, 2017 from http://www.agilemanifesto.org
RESEARCH GAP 1 6

There is a lack of rigorous


empirical studies evaluating
Agile methods and practices.

Strode et al. 2009


Diane E. Strode, Sid L. Huff, Alexei Tretiakov. The impact of organizational culture on agile method use. 42nd Hawaii
International Conference on System Sciences. HICSS-42, 00:1--9, 2009.
RESEARCH GAP 2 7

Little is known about how these


methods are employed in practice
in the [context of Brazilian
software companies.]

Dybå 2008
Tore Dybå and Torgeir Dingsøyr. 2008. Empirical Studies of Agile Software Development: A Systematic Review.
Information and Software Technology, 50, 9-10 (Aug. 2008), 833–859.
OBJECTIVE 8 / 47

Understanding the benefits and


l i m i t a t i o n s related to A g i l e
Software Development in a
specific industrial context.
CONTEXT 9 / 47

▸ Recife, Brazil
▸ One of the
largest
technology park
in Brazil.

▸ More than 200


highly innovative
software
companies.
CONTEXT 10 / 47

▸ Two software companies (fictitious names)


▸ ALPHA
▸ BETA
▸ Three projects were investigated
▸ One from ALPHA
▸ Two from BETA
CONTEXT 11 / 47
CONTEXT 12 / 47
CONTEXT - ALPHA 13 / 47

▸ Small company created in 2005


▸ ~60 employees
▸ Produces customized software for
Brazilian government agencies

▸ Certified MPS.BR level G


CONTEXT - ALPHA 14 / 47

▸ Project A1
▸ Java for Web, JSF and Demoiselle Framework
▸ Produces financial control systems to track and
monitor government expenses and revenues

▸ 9 members
▸ ~ 4.5 years of experience in software development
▸ ~ 2.5 years of experience with Agile SD
▸ Medium level complexity
CONTEXT - BETA 15 / 47

▸ Medium-sized company created in 1996


▸ > 700 employees
▸ Produces customized software for
Brazilian government agencies and
industrial companies.

▸ Certified CMMI level 3


CONTEXT - BETA 16 / 47

▸ Project B1
▸ C and Java languages
▸ Develops protocols and network management
systems

▸ 9 members
▸ ~ 5 years of experience in software
development

▸ ~ 2 years of experience with Agile SD


▸ High level complexity
CONTEXT - BETA 17 / 47

▸ Project B2
▸ Java language
▸ Develops SaaS applications for a
telecommunication company

▸ 9 members
▸ ~ 7 years of experience in software development
▸ ~ 3 years of experience with Agile SD
▸ High level complexity
DATA COLLECTION 18 / 47

▸ In the companies headquarters in


October 2014

▸ 22 semi-structured interviews
▸ Diversity of interviewees
▸ Open-ended questions
DATA COLLECTION 19 / 47

▸ In the companies headquarters in


October 2014

▸ 22 semi-structured interviews
Interview Guide – Six phases

▸ Diversity of interviewees roles


1. Purpose
2. Background and experience
▸ Open-ended questions
3. ASD used
4-5. Benefits and Limitations
6. Additional comments
DATA EXTRACTION 20 / 47

▸ > 23 hours of audio interviews


▸ MS ExcelTM format was used
DATA EXTRACTION 21 / 47

ID Interviewee Role B1 B2 B3

"The pair
"That is important
programming is
because all "The team sits
good because
software together all the
Project if have user
ALPHA_P1_E2 developers and all time. So, the
Manager stories more
team members interaction is
difficult to do,
know of very close."
they solved
requirements."
easier in pairs."
DATA EXTRACTION 22 / 47

Benefit
ID Interviewee ASD Code Category
Extraction

Improves the Improves the


ALPHA_P1_E2 B1 Sprint Planning understand of understanding
user stories about project

Facilitates Facilitates de
Co-location
ALPHA_P1_E2 B2 interaction interaction/
team
among team collaboration

Pair Facilitates to Facilitates to


ALPHA_P1_E2 B3
Programming solve problems solve problems
DATA ANALYSIS AND SYNTHESIS 23 / 47

▸ Qualitative method
▸ Open coding
▸ Post formed code (unbiased)
DATA ANALYSIS AND SYNTHESIS 24 / 47

Examples of Open Coding process

“Having the task board in the


room, it’s easy to see how the
project is progressing, if it is
late or on schedule.” [A1_4]
DATA ANALYSIS AND SYNTHESIS 25 / 47

Examples of Open Coding process

“Having the task board in the


room, it’s easy to see how the
project is progressing, if it is
late or on schedule.” [A1_4]

Code: Visualize de progress


DATA ANALYSIS AND SYNTHESIS 26 / 47

Examples of Open Coding process

“Having the task board in the “I think the task board is pretty
room, it’s easy to see how the good, because you just look at
project is progressing, if it is the task board and you can
late or on schedule.” [A1_4] see instantly what each
member is doing. […] You
Code: Visualize de progress just need to raise your head
and you already see the
project status.” [B2_2]
DATA ANALYSIS AND SYNTHESIS 27 / 47

Examples of Open Coding process

“Having the task board in the “I think the task board is pretty
room, it’s easy to see how the good, because you just look at
project is progressing, if it is the task board and you can
late or on schedule.” [A1_4] see instantly what each
member is doing. […] You
Code: Visualize de progress just need to raise your head
and you already see the
project status.” [B2_2]

Code: See project status


DATA ANALYSIS AND SYNTHESIS 28 / 47

Data was analyzed, compared and re-analyzed


in parallel.

Visualize the progress

See the project status

See what each


member is doing

Codes
DATA ANALYSIS AND SYNTHESIS 29 / 47

Data was analyzed, compared and re-analyzed


in parallel.

Visualize the progress


Facilitated
See the project status project
monitoring and
See what each tracking
member is doing

Codes Category
RESEARCH QUESTIONS 30 / 47

▸ RQ1: What are the benefits of using


ASD?
RESEARCH QUESTIONS 31 / 47

▸ RQ1: What are the benefits of using


ASD?

▸ RQ2: What are the limitations of using


ASD?
RQ1. BENEFITS OF ASD 32 / 47

▸ 28 benefits found
RQ1. BENEFITS OF ASD 33 / 47

▸ Facilitated project monitoring and


tracking
“The daily meetings are valid because you
follow up and you can get a general sense of
the progress” (Test engineer, Project B2)
RQ1. BENEFITS OF ASD 34 / 47

▸ Facilitated project monitoring and


tracking
“The daily meetings are valid because you
follow up and you can get a general sense of
the progress” (Test engineer, Project B2)

“I think the task board is pretty good, because you


just look at it and you can instantly see what each
member is doing” (Software Engineer, Project B1)
RQ1. BENEFITS OF ASD 35 / 47

▸ Facilitated interaction and collaboration

“During the daily meetings I can talk


about my difficulties, and someone
can help me” (Team leader, Project B2)
RQ1. BENEFITS OF ASD 36 / 47

▸ Facilitated interaction and collaboration

“During the daily meetings I can talk


about my difficulties, and someone
can help me” (Team leader, Project B2)

“Because we sit together [co-located], the


interaction is very close” (Test engineer,
Project A1)
RQ1. BENEFITS OF ASD 37 / 47

▸ Practices and Methods related to Benefits


RQ2. LIMITATIONS OF ASD 38 / 47

▸ 20 limitations found
RQ2. LIMITATIONS OF ASD 39 / 47

▸ Difficulty working with User Stories


“The use of story points does not work well,
because it is subjective. […] I believe that
estimates the effort in hours is more
accurate” (Test engineer, Project A1)
RQ2. LIMITATIONS OF ASD 40 / 47

▸ Difficulty working with User Stories


“The use of story points does not work well,
because it is subjective. […] I believe that
estimates the effort in hours is more
accurate” (Test engineer, Project A1)

“It is difficult to estimate in points when


the technology is unknown” (Software
Engineering, Project B1)
RQ2. LIMITATIONS OF ASD 41 / 47

▸ Difficulty working with large teams

“Planning [Sprint Planning] with large


team takes a long time” (Product Owner,
Project A1)
RQ2. LIMITATIONS OF ASD 42 / 47

▸ Difficulty working with large teams

“Planning [Sprint Planning] with large


team takes a long time” (Product Owner,
Project A1)

“You lose focus when you have a Sprint Planning


or Daily Meetings with a large team” (Scrum
Master, Project A1)
RQ2. LIMITATIONS OF ASD 43 / 47

▸ Practices and Methods related to Limitations


CONCLUSION 44 / 47

▸ We found 28 benefits and 20 limitations


in the investigated projects.

▸ Our findings overlap with previous


studies.
CONCLUSION 45 / 47

▸ Practitioners need to better understand:


▸ What benefits and limitations can be
found

▸ What practices and methods provide


benefits, limitations or both.

▸ The influence of environment variables


FUTURE WORK 46 / 47

▸ For future work, we plan to correlate the


fi n d i n g s f r o m d i f f e r e n t s o f t w a r e
companies and countries to better
understand whether the benefits and
limitations found can be generalized.
THANK YOU! 47 / 47

Fernando Kenji Kamei


fkenjikamei@gmail.com

@fkenjikamei

Potrebbero piacerti anche