the magazine for agile developers and agile...

3
The Magazine for Agile Developers and Agile Testers October 2011 issue 8 www.agilerecord.com free digital version made in Germany ISSN 2191-1320

Upload: others

Post on 14-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Magazine for Agile Developers and Agile Testershuettermann.net/perform/AgileALM-AgileRecord-Huettermann.pdf · Brochure Package II: 500.00 € 2 • One page advertisement in

The Magazine for Agile Developers and Agile Testers

October 2011

issue 8www.agilerecord.com free digital version made in Germany ISSN 2191-1320

Page 2: The Magazine for Agile Developers and Agile Testershuettermann.net/perform/AgileALM-AgileRecord-Huettermann.pdf · Brochure Package II: 500.00 € 2 • One page advertisement in

9www.agilerecord.com

Application Lifecycle Management (ALM) synthesizes technical and functional elements to provide a comprehensive approach to common project activities and phases, addressing build, con-figuration, deployment, release, test, quality, integration, and requirements management. With its interdisciplinary approach, Agile ALM integrates project roles, project phases and artifact types. Agile ALM enriches an ALM with agile values and strate-gies. An agile approach to ALM improves product quality, reduces time to market, and makes for happier developers. Agile ALM is one of the ways in which ALM helps to provide structure for agile. In a nutshell, Agile ALM

■ Helps overcome process, technology, and functional barri-ers (such as roles and organizational units).

■ Spans all artifact types as well as development phases and project roles.

■ Uses and integrates lightweight tools, enabling the team to collaborate efficiently without any silos.

■ Makes the relationship of given or generated artifacts vis-ible, providing traceability and reproducibility.

■ Defines task-based activities that are aligned with require-ments. This means that the activities are linked to require-ments, and that all changes are traceable to their require-ments.

One essential aspect of agile ALM is collaborative development, which is what we’ll discuss next.

Collaborative developmentWriting software collaboratively means that all stakeholders work on the solution, constructively, and they have shared goals. The agile testing matrix (see figure 1, a skeletal based on Lisa Crisp-in’s version of Brian Marick’s diagram) defines test quadrants, which are integrated and aligned with the outside-in approach. According to C. Kessler and J. Sweitzer, the main drivers of out-side-in are:

■ Understanding your stakeholders and the business context

■ Mapping project expectations to outcomes more effectively

■ Building more consumable software, making systems easier to deploy and use

■ Enhancing alignment with stakeholder goals continuously

Figure 1: Agile testing matrix with test quadrants that are aligned with the outside-in and barrier-free approach to software development.

Acceptance tests determine whether a system satisfies its speci-fied acceptance criteria. This helps the customer to decide wheth-er to accept the software. This means that acceptance tests also tell the programmers what the customer doesn’t want them to do. Executable specifications allow you to use tools that read the specifications automatically (either after manually starting the process, or continuously as part of a continuous integration pro-

Agile ALM and collaborative developmentby Michael Hüttermann

Premium Sponsor Package: 12,000.00 € (limited to 4)• 5 free admission tickets for exhibitor‘s

contacts, but not for its own employees• 20 admission tickets at a 25 % discount on

the regular price• Exhibitor’s company name/logo included

in the program• Exhibitor’s company name/logo included

in all exhibition/sponsoring documents• Exhibitor’s company name/logo listed on

the Agile Testing Days website including a link to their own website and 200 words about the company

• Advertisement banner from exhibitor’s company during the keynotes

• Logo included on all relevant printed Agile Testing Days marketing materials (fl yer, posters, folder, etc.)

• Logo displayed on screen between presentations

• Verbal recognition during conference (welcome remarks, closing remarks)

• 4 admission tickets for exhibitor’s booth staff

• 1 presentation (55 minutes) – vendor track1

• Exhibition fl oor space (6 m × 2 m or 3 m × 4 m = 12 m²)

• 4 admission tickets for the evening events

• Catering during the event

Gold Sponsor Package: 6,000.00 € (limited to 6)• 2 free admission tickets for exhibitor‘s

contacts, but not for its own employees• 10 admission tickets at a 25 % discount on

the regular price• Exhibitor’s company name/logo included

in the program• Exhibitor’s company name/logo included

in all exhibition/sponsoring documents• Exhibitor’s company name/logo listed on

the Agile Testing Days website including a link to their own website and 100 words about the company

• Logo included on all relevant Agile Testing Days printed marketing materials (fl yer, posters, folder, etc.)

• 4 admission tickets for exhibitor’s booth staff

• 1 presentation (25 minutes) – vendor track1

• Exhibition fl oor space (2 m × 3 m = 6 m²)• 4 admission tickets for the evening events• Catering during the event

Exhibition Package: 3,000.00 € (limited to 8)• 2 free admission tickets for exhibitor‘s

contacts, but not for its own employees• 5 admission tickets at a 25 % discount on

the regular price• Exhibitor’s company name/logo included

in the program• Exhibitor’s company name/logo included

in all exhibition/sponsoring documents• Exhibitor’s company name/logo listed on

the Agile Testing Days website including a link to their own website

• 2 admission tickets for exhibitor’s booth staff

• Exhibition fl oor space (2 m × 2 m = 4 m²)• 2 admission tickets for the evening events

• Catering during the event

1 Please note: There are only 8 vendor tracks available. We pursue the „fi rst-come, fi rst-served“ principle.

Become Exhibitor or Sponsor

Get an Optional Sponsoring Package

Award Package: 3,000.00 €

(limited to 1)

• Sponsor‘s company name/logo engraved on the award (Most Infl uential Agile Testing Professional Person)

• Your companies name/logo on the award website

• Verbal recognition of the company during the award event

• Your banner ads in front of the stage• 2 admission tickets for the staff of the

company (only if you are not an exhibitor)• 2 admission tickets for the evening events

(only if you are not an exhibitor)• Catering during the event

Brochure Package I: 1,000.00 € 2

(limited to 1)

• Advertisement from your company on fi rst page (not cover) in our program

Brochure Package II: 500.00 € 2

• One page advertisement in our program

Brochure Package III: 250.00 € 2

• Half page advertisement in our program

Brochure Package IV: 500.00 € 3

• Advertisement inlay/fl yer in our program

Conference Package I: 1,000.00 € 2

• Conference bags with logo of the company

Conference Package II: 500.00 € 3

• Conference bag fi lled with your ownadvertisement or giveaways (for example: pens, t-shirts, writing pads, fl yer)

Conference Package III: 1,500.00

€ 2 (limited to 1)

• Your company logo on 500 coff ee cups at

the conference breaks

All optional Sponsoring packages including the following:

• 5 admission tickets at a 25 % discount on the regular price

• Sponsor’s company name/logo listed on the Agile Testing Days website including a link to their own website

• Sponsor’s company name/logo included in all exhibition/sponsoring documents

• Sponsor’s company name/logo included in the program

2 You have to order this package until 6 weeks before the conference.

3 Please note: You have to organize/produce your advertise-ments and giveaways by yourself.

Page 3: The Magazine for Agile Developers and Agile Testershuettermann.net/perform/AgileALM-AgileRecord-Huettermann.pdf · Brochure Package II: 500.00 € 2 • One page advertisement in

10 www.agilerecord.com

cess), process them against the system under test, and output the results in an objectively measurable, efficient, and readable way. The domain expert specifies the tests in simple formats (for example based on HTML or Excel), and the program writes the results after running the tests against the system under test. Merging different mediums for documentation (single-sourcing product information) reduces the amount of traditional docu-mentation, because the specification is the system’s functional documentation and therefore can be efficiently validated against the current software state. This leads to a living documentation that is always up-to-date. There are many different ways of how to implement acceptance tests, and many different integrated tool chains can be used, for example chains based on Fit/FitNesse. Beside tools, you can also utilize platforms and languages to im-plement acceptance tests, which is what we’ll discuss next.

Barrier-free, with BDD flavored acceptance tests Behavior-driven development (BDD) promotes a special approach to writing and applying acceptance tests that’s different from the traditional test-driven development (TDD), although BDD also promotes writing tests first. With BDD, tests are like (functional) specification stories, normally in a given/when/then format. This specification-oriented technique also uses a natural language to ensure cross-functional communication and to understand busi-ness concepts. BDD provides a ubiquitous language for analysis and emphasizes application behavior over testing. Scala and Groovy, both 1st class citizens on the Java virtual machine, offer interesting features for setting up a polyglot ecosystem, leverag-ing existing platforms by providing solutions that involve special purpose languages. With Scala and Groovy, you can write tests, which helps to overcome various barriers:

■ Barriers between project phases and project activities (be-cause coding and testing move together more closely)

■ Barriers between artifact types (because code and executable specifications are written on the same unified infrastructure)

■ Barriers between project roles (because tests are written collaboratively, with mechanisms to use terms close to the problem domain)

■ Barriers between tools (because the same tools are used for programming and testing)

Overcoming common project barriers leads to what I call a barri-er-free approach. In the Java ecosystem, you can write BDD fla-vored acceptance tests with Scala and the Scala specs2 library, or with Groovy and the Groovy easyb library.

SummaryAgile ALM spans many disciplines in software engineering. Agile ALM helps to provide structure for agile and helps to approach ALM in a determined, pragmatic way. One essential aspect of ag-ile ALM is collaborative development that can help to improve the probability of success of your project.

ReferenceMichael Hüttermann, Agile ALM, Manning, 2011

Carl Kessler and John Sweitzer, Outside-in Software Develop-ment, IBM Press, 2008

Lisa Crispin and Janet Gregory, Agile Testing, Addison Wesley, 2009

Brian Marick’s test matrix: http://www.exampler.com/old-blog/2003/08/21/

Michael Hüttermann(Java Champion, SCJA, SCJP, SCJD, SCWCD) is freelance developer, archi-tect, coach, author and tu-tor for Java/JEE, ALM/SCM and agile software devel-opment. Further informa-tion: http://huettermann.net.

> About the author