The Application of ISO 9001 to Agile Software

download The Application of ISO 9001 to Agile Software

of 17

Transcript of The Application of ISO 9001 to Agile Software

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    1/17

    1

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    The application of ISO 9001 to agile

    software development

    Geir Kjetil Hanssen, NTNU/SINTEF

    Tor Stlhane, NTNU

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    2/17

    2

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    Agile development - 1

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    3/17

    3

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    Agile development - 2

    ISO 9001 is document driven. The Scrum

    process can generate the following set of

    documents:

    At the start of the project: Process adaptation Before each iteration: New and changed

    requirementsthe product backlog

    After each iteration: Evaluation of conformity to requirements

    Review of process conformity

    Problems and their causes

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    4/17

    4

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    ISO 9001 requirements - 1

    The supplier must have a quality assurancemanagement process to ensure an explicit

    development process and process

    conformance

    Product quality is the responsibility of the

    companys management

    The supplier must have one or more

    documented development processes. Theprocess must produce documents that can be

    Reviewed for acceptance by the customer

    Used as proof of conformance

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    5/17

    5

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    ISO 9001 requirements - 2

    All reports of non-conformance both for

    product and for process shall be reported

    and must lead to corrective actions

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    6/17

    6

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    What have we done

    To identify the problem areas for ISO 9001

    vs Agile development, we combined the

    results from two processes. We went

    through:

    All available literature

    All items of ISO 90001 and identified

    possible relevant agile practices

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    7/17

    7

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    The problem areas

    Problems pertaining to ISOI 9001 and agile

    development stems from the fact that:

    Agile development focus on making code

    not documents

    ISO 9001 uses documents to establish

    confidence in

    Process conformance

    Product quality

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    8/17

    8

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    The challenge - 1

    The main challenge in ISO 9001 certifying

    an agile development process is to

    balance two opposing goals:

    ISO 9001s need for documentation of all

    process steps

    Agile developments reluctance of

    excessive document production, taking

    resources and focus away from code

    development

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    9/17

    9

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    The challenge - 2

    Agile development is flexibleif a project

    requires that a certain document should

    be produced this requirement it can be

    included in the project

    BUT

    Agile development will stop being agile

    when it is required to develop a large

    amount of documents

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    10/17

    10

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    ISO 9001 vs. Agile development

    For 31 sections no change was

    necessary.

    For 15 sections there was some

    disagreement between ISO 9001 and

    agile development.

    For 4 sections there was a total

    disagreement between ISO 9001 and

    agile development.

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    11/17

    11

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    What should be done - 1

    Agile development needs to document more. In

    particular, we will need documents from:

    The initial planning activities

    Definition of measurable quality objectives, e.g.ala Evo

    All activities for use as proof of conformance

    High level and low level design Reviews of each iteration

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    12/17

    12

    _____ ___ ____

    ____ ____ ____

    _____ ____ ____

    _____ ____ ____

    ____ ____ ____

    What should be done - 2

    ISO 9001 must be more flexible in that the

    standard

    Needs to change its interpretation of

    document inspection

    Expand its definition of what is

    appropriate documentation, e.g. for proof

    of conformance

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    13/17

    13

    _____ ___ ____

    ____ ____ ____

    _____ ____ _________ ____ ____

    ____ ____ ____

    Exampleagile development is OK

    ISO 90014.2.1d: ...include documents

    needed by the organization to ensure the

    effective planning , operation and control

    of its process.

    Agile development always starts by

    defining how the methodology shall be

    used in a project

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    14/17

    14

    _____ ___ ____

    ____ ____ ____

    _____ ____ _________ ____ ____

    ____ ____ ____

    Examplemore documents

    ISO 90015.4.1: ...The quality objectives

    shall be measurable and consistent with

    the quality policy.

    Enhancement of agile development: all

    agile methods should use a

    measurement regime comparable to the

    one used in the agile development

    method Evo

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    15/17

    15

    _____ ___ ____

    ____ ____ ____

    _____ ____ _________ ____ ____

    ____ ____ ____

    Examplechanged definition

    ISO 90017.7.2: The organization shallreview the requirements related to theproduct. The review shall be conductedprior to the organizations commitment

    to supply a product...We believe that it is impossible to get a

    complete overview of all details up front;

    instead the most important aspectsshould be documented.

    In our opinion, ISO 9001 should bechanged accordingly

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    16/17

    16

    _____ ___ ____

    ____ ____ ____

    _____ ____ _________ ____ ____

    ____ ____ ____

    Exampleexpanded definition

    ISO 90017.3.1a: ...the organizationshall determine the design anddevelopment changes.

    The challenge to agile development isproof of conformancehave we reallydone this?

    Documents that should be accepted as

    evidence of conformance are e.g.pictures of the whiteboard showingrequirements planned or workcompleted

  • 8/10/2019 The Application of ISO 9001 to Agile Software

    17/17

    17

    _____ ___ ____

    ____ ____ ____

    _____ ____ _________ ____ ____

    ____ ____ ____

    Conclusions

    Agile development will be more and more

    important in a world that is changing

    faster and faster

    ISO 9001 certification will be more and

    more important to build confidence as

    more and more customers will lack IT

    competence

    It is unwise of one of these two ideas to

    ignore the other