quality problems related to agile methods / scalability

20
1 of 20

Upload: dario-macchi

Post on 22-Nov-2014

1.089 views

Category:

Technology


2 download

DESCRIPTION

In this presentation we will see some problems with agile practices of quality assurance. Then we will focus on the particular problem of non-functional requirements. Finally we will refer to the quality problems that arise when using agile methods in large projects. Is assumed that these practices improve the quality of a software product. We will see that in any case there are problems in implementation, especially when scaling agile projects and take them to big projects distributed environments.

TRANSCRIPT

Page 1: Quality problems related to agile methods / scalability

1 of 20

Page 2: Quality problems related to agile methods / scalability

2 of 20

Agile practices can improve quality if they are implemented correctly

(Sfetsos, P., & Stamelos, I. (2010). Empirical Studies on Quality in Agile Practices: A Systematic Literature Review.)

Agile values

Page 3: Quality problems related to agile methods / scalability

3 of 20

Lack of evidence to prove its effectiveness and successful implementation

(Timperi, O. (2004). An Overview of Quality Assurance Practices in Agile Methodologies.)

Page 4: Quality problems related to agile methods / scalability

4 of 20

What quality characteristics are improved with each practice?

TDD

Pair Programming

Collective Ownership

Simple Design

User Stories

Refactoring

Inspections

Coding Standard

?

ISO 9126

(Mnkandla, E., & Dwolatzky, B. (2006). Defining Agile Software Quality Assurance.)

Page 5: Quality problems related to agile methods / scalability

5 of 20

Focus on building the right product for the customer (instead of only build it properly)

(Timperi, O. (2004). An Overview of Quality Assurance Practices in Agile Methodologies.)

Page 6: Quality problems related to agile methods / scalability

6 of 20

Testing is left mandatory but vague because its level and coverage are not instructed.

(Timperi, O. (2004). An Overview of Quality Assurance Practices in Agile Methodologies.)

Por último…

Page 7: Quality problems related to agile methods / scalability

7 of 20

New role of QAIs help in business

definition, risk measurement,

know user needs and underlying architecture.

nFR ill-definedNext…

(Mnkandla, E., & Dwolatzky, B. (2006). Defining Agile Software Quality Assurance.)

Page 8: Quality problems related to agile methods / scalability

8 of 20

As a Universidad ORT Uruguay student I want to come from my house to this Pechakucha.

Non-Functional Requirements (nFR) example

Page 9: Quality problems related to agile methods / scalability

9 of 20

As a Universidad ORT Uruguay student I want to come quickly from my house to this Pechakucha.

Non-Functional Requirements (nFR) example

Page 10: Quality problems related to agile methods / scalability

10 of 20

As a Universidad ORT Uruguay student I want to come quickly and economically from my house to this Pechakucha.

Non-Functional Requirements (nFR) example

Page 11: Quality problems related to agile methods / scalability

11 of 20

As a Universidad ORT Uruguay student I want to come quickly, economically and safely from my house to this Pechakucha. My own car

Non-Functional Requirements (nFR) example

Page 12: Quality problems related to agile methods / scalability

12 of 20

Stakeholders concentrate on software functionality (FR). Critical nFR are likely to be ill-defined and neglected.

(Um, T., Kim, N., Lee, D., & In, H. P. (2011). A Quality Attributes Evaluation Method for an Agile Approach.)

The problem is…

Page 13: Quality problems related to agile methods / scalability

13 of 20

Developers accustomed to cascade assume that nFR are solved by architects and designers.

(Rachel Davies, Agile Experience Ltd, UK, Non-Functional Requirements: Do User Stories Really Help?)

Plus…

Page 14: Quality problems related to agile methods / scalability

14 of 20

New approach is needed to improve non-functional aspects through quality attributes.

(Um, T., Kim, N., Lee, D., & In, H. P. (2011). A Quality Attributes Evaluation Method for an Agile Approach.)

Then…

Page 15: Quality problems related to agile methods / scalability

15 of 20

Useful to manage FR and nFR at the same time (but some nFR traverse the entire project)

(Um, T., Kim, N., Lee, D., & In, H. P. (2011). A Quality Attributes Evaluation Method for an Agile Approach.)

Page 16: Quality problems related to agile methods / scalability

16 of 20

Test that …- A blog post should be posted in less than 3 clicks.

- A blog post should be posted in less than 5 seconds.

As a blogger, I want to post an entry quickly and

efficiently to easily update the blog

The problem is that:

- The stories are designed to be completed

- Tunnel vision: when the team focuses on a story is easy to forget the RnF.

Example:

Page 17: Quality problems related to agile methods / scalability

17 of 20

As a blogger, I want to post an entry quickly and

efficiently to easily update the blog

How to deal with those nFR

spanning all the stories?

Page 18: Quality problems related to agile methods / scalability

18 of 20

Involving the customer is essential,

explaining the importance of

quality attributes.

(Leffingwell D. (2009). Scaling Software Agility. Agile Requirements Information Model. Online.)

Page 19: Quality problems related to agile methods / scalability

As a blogger, I want to post an entry quickly and

efficiently to easily update the blog

User friendly

19 of 20

Efficient

As ablogger, I want to post an entry to update the blog

nFR filters Reminders

Assign responsibles for each quality attr.

Page 20: Quality problems related to agile methods / scalability

20 of 20

New role, responsible for

QA to understand and

measure risk and assist in QA activities.

nFR ill-defined

Involving the customer is essential,

explaining the importance of

quality attributes.

General Issues Non-functional requirements

Stories quality filters.

Reminders

Assign responsibles for each quality attr.

Proposed solutions