Wat hebben ambachtslieden en Scrum Masters met elkaar gemeen?

Wat hebben ambachtslieden en scrum masters met elkaar gemeen?

Agile en Scrum zijn begrippen die je overal tegenkomt in moderne kleine organisaties of de grote multinationals. Deze manier van denken en werken hebben we bij Identify in ons DNA zitten en dat dragen we graag uit. ‘In het DNA’ klinkt misschien wat vergaand maar het DNA wil zeggen dat je het doorleefd, voelt en bewust bekwaam meeneemt in elke opdracht naar je klanten. Hiermee helpen we vele organisaties verder met kwaliteitsverbeteringen op het gebied van softwareontwikkeling. Door de software in kleine beheersbare brokken werk op te leveren, met tussentijdse evaluatie momenten voor de klant, is tijdig bijsturen mogelijk. Daardoor krijgt de klant niet alleen wat hij wil maar wordt hij meer betrokken bij de ontwikkeling. Door deze manier van samenwerken groeit de onderlinge betrokkenheid.

Door studenten van de Radboud Universiteit Nijmegen les te geven in Scrum werken, met een Agile gedachte, leren we zelf ook continue bij. Theorie herhalen, uitleggen en hierover discussiëren geeft ons ook weer nieuwe inzichten.

Echter, Agile werken vergt meer dan alleen het leren van theorie. Agile is een gedachte, een wijze van denken die je het beste kan leren door ervaring en veel doen. Het moet inslijten in je systeem. Bij Agile gaat het over menselijke interactie, werkende software, samenwerking met de klant en inspelen op veranderingen in plaats van zwaarlijvige processen en hulpmiddelen, alles omvattende documentatie, contractonderhandelingen en vasthouden aan een plan. ‘Behendig’ ofwel ‘lenig’ inspelen op de klantwensen en bijsturen waar nodig. Onnodige kosten worden voorkomen en de beoogde voordelen worden eerder bereikt.

Om Agile en Scrum optimaal in te zetten hebben we binnen Identify de focusgroep Agile & Scrum. Hierin delen we onze geleerde kennis uit de theorie én praktijk. We helpen elkaar met de eventuele uitdagingen en je persoonlijke doelen door intervisie- en kennissessies. Maar ook via de telefoon, whatsapp of Skype bespreken we dagelijkse dingen. We kunnen elkaar dagelijks ondersteunen waar nodig of waar behoefte ontstaat. Weten wat er speelt in de organisatie van onze klant en direct acteren op verandering is belangrijk bij Agile werken. Door deze onderlinge interactie bereiken we telkens weer een hoger volwassenheidsniveau op het gebied van Agile & Scrum en kunnen wij als mentoren beter functioneren binnen Identify én vooral bij onze klanten.

Werken in een Agile omgeving met bijvoorbeeld Scrum vergt van een Scrum Master, naast diepgaande kennis over dit onderwerp, vooral; charisma, empathie, positiviteit, besluitvaardigheid en natuurlijk leiderschap. Als Scrum Master werk je meestal niet in een gecontroleerde stabiele omgeving. Verandering en inspelen hierop zijn belangrijke kenmerken voor de omgeving waarin we werken. En hier zien we een parallel met ambachtslieden. Hieronder wordt uitgelegd waarom.

Kwaliteit (houding ten opzichte van je producten en diensten)
Ambachtslieden maken unieke objecten. Het gaat om precisie- en maatwerk. Ze werken met passie en streven naar perfectie van hun werk. Het gaat om ultieme vak beheersing, in de praktijk geleerd (kennis en vaardigheden en ontwikkeling). Niet alleen uit de boeken, maar ook op basis van inzicht en ervaring die tijdens de uitoefening van het vak is opgedaan. *

Zelfstandig werken (uitvoering)
Ambachtslieden leveren maatwerk. Zij zijn in staat om creatieve, nieuwe toepassingen te integreren in hun vak. Creativiteit en originaliteit kenmerken het werk. Zij bepalen op basis van hun vakkennis wat nodig is om het beste resultaat te krijgen en voeren het werk zelfstandig uit. *

Marktgericht (conditie)
Ambachtslieden zijn ondernemend en in staat tot een zelfstandige bedrijfsvoering. Ze houden balans tussen perfectie en de continuïteit van hun bedrijf. Samenwerking, communiceren en ondernemen zijn hierbij belangrijke vaardigheden voor een duurzame onderneming. *

Door samen Agile software te ontwikkelen, feedback te vragen en te geven, tijdig bij te sturen, en de software hierop aan te passen kan men dus snel en flexibel inspelen op veranderingen. De producten worden daardoor sneller en kwalitatief hoogwaardiger opgeleverd. Om dit proces tot in de puntjes goed te begeleiden is een Scrum Master met de juiste Agile ervaring van groot belang.

Kortom Scrum Master zijn is een ambacht!

*= Bron: https://www.ambachtnederland.nl

Interesse? We praten graag met je verder!

Heb je een vraag of wil je met ons sparren? Neem gerust contact op met Marleen Kleijn.

Xray: Maak je testcases in Jira inzichtelijk

Xray: Maak je testcases in Jira inzichtelijk

Atlassian Jira biedt vele mogelijkheden om je werk agile te organiseren. Voor product owners, scrum masters en developers is Jira hier uitermate geschikt voor. Voor testers biedt Jira in de basis helaas niet veel ondersteuning. Maar met behulp van de Atlassian Jira app Xray kun je je testcases in Jira wel zichtbaar maken.

Xray Test Management voor Jira

Xray is een addon voor Jira die alle testcases als Jira issues verwerkt. Hierdoor ben je als tester meteen zichtbaar in het gehele Jira proces van je team.

Xray ondersteunt handmatige en geautomatiseerde testcase in Jira waarbij stappen, data, precondities, verwacht resultaat en meer, toegevoegd kunnen worden door middel van handmatige invoer of via het importeren van bestaande testcases uit csv, json of andere bestanden. Tevens biedt Xray ondersteuning voor BDD met gebruik van Gherkin scenario’s. Hierdoor wordt de drempel tussen business en IT verlaagd, doorlooptijd korter en de herkenbaarheid bij de business groter. Geautomatiseerde testcases kunnen ook vanuit andere frameworks geïmporteerd worden zodat je testcases en resultaten van bijvoorbeeld Selenium, TestNG, JUnit, Robot Framework etc. ook zichtbaar worden. In combinatie met continue integratie, met bijvoorbeeld Bamboo of Jenkins, biedt dit een mooie meerwaarde voor het gebruik in Jira.

Om overzicht te behouden van de status van alle testcases biedt Xray verschillende rapporten en handige dashboards. Testcases kunnen georganiseerd worden in test plans en/of test executions waarbij snel en makkelijk koppelingen gemaakt kunnen worden met stories, tasks of bugs. Zo houd je grip en creëer je duidelijkheid met betrekking tot de status van de testuitvoering en mogelijke bugs.

Identify & Xray

Omdat Xray als addon op Jira de mogelijkheid biedt om testcases bij elkaar te brengen, te koppelen aan stories en om continu inzicht te geven in de status van de testuitvoering, is Xray voor Jira een perfecte aanvulling voor teams die kwaliteit serieus nemen.

Wil je meer weten over Xray, of wil je weten wat Identify voor jou kan betekenen met Xray voor Jira? Neem dan contact met ons op!


Interesse? We praten graag met je verder!

Heb je een vraag of wil je met ons sparren? Neem gerust contact op met Marleen Kleijn.


Kwaliteitsprofessionals en AVG

Kwaliteitsprofessionals en AVG

Voor een internationale financiële instelling heb ik het afgelopen jaar de AVG (Algemene Verordening Gegevensbescherming) impact analyse uitgevoerd en de oplossingsrichting gespecificeerd. AVG is overigens de Nederlandse interpretatie van het Europese GDPR (General Data Protection Regulation). Als Business Analist werkte ik voor de IT-organisatie; regelmatig werd mij de vraag gesteld: “Wat moeten we aan de IT-systemen doen om AVG-compliant te zijn?”

Impact

AVG-compliancy wordt alleen bereikt als de gehele organisatie eraan voldoet maar start bij de business / de lijn. De business processen en de bijbehorende gegevens moeten eerst in kaart gebracht worden. Data eigenaarschap moet aan de business toegekend worden en het gegevensverwerkingsregister, het middel om proces, doel en gegevens aan elkaar te koppelen, moet opgesteld worden. Dit vraagt inzicht in de gehele informatie- / gegevensketen. In het geval van een internationale organisatie moet er rekening gehouden worden met verschillende GDPR-interpretaties per land. Maak je gebruik van ketenpartners moet je ook weten wat zij met de gegevens doen. Hoe groter de organisatie, hoe complexer, hoe uitdagender.

Leerpunten

Voldoen aan de AVG zal voor elke organisatie een uniek traject zijn. Toch heb ik een aantal leerpunten verzameld die generiek zijn;

  • De business heeft de lead, niet IT. Ondanks dat business en IT inmiddels niet meer los gezien kan worden ligt de verantwoordelijkheid bij de business.
  • Ken je ketenpartners en maak afspraken met hen. Als data-eigenaar blijf je verantwoordelijk voor de gegevens, ook bij je ketenpartner. Zorg dat er goede afspraken zijn over gebruik, beveiliging en retentie.
  • Blijf in control van je gegevens, het is een continu proces. Zorgen dat organisatie per 25 mei 2018 voldoet aan AVG moet geen momentopname zijn. Organisaties moeten periodiek bewijzen compliant te zijn. Plan (dus) een ritme in waarin je met regelmaat monitort.
  • Voer de regie over de ketenpartners bij de uitvoering van de rechten van de (ex-) klanten en prospects. De data-eigenaar is verantwoordelijk voor de uitvoering van bijvoorbeeld het ‘recht vergeten te worden’. Ook bij ketenpartners!
  • Stem de eisen van verschillende organisatie onderdelen op elkaar af. Definieer generieke oplossingen om aan lokale (landelijke) GDPR-regelgeving te voldoen. De nuance zit vaak in de retentieperiode en lokale wetgeving.
  • Kijk ook verder dan de GDPR-eisen. Als organisatie moet je ook voldoen aan andere wet- en regelgevingen. Gegevens verwijderen kan strijdig zijn met bijvoorbeeld de belastingdienst of branche specifieke regelgeving.
  • Indien er gebruik wordt gemaakt van (internationale) softwareleveranciers, betrek hen tijdig om te voorkomen dat ze een generieke oplossing creëren die niet voldoet aan de lokale regelgeving.

De bovenstaande leerpunten zijn niet komen aanwaaien. AVG is nieuw, kennis is schaars, de rol van Functionaris Gegevensbescherming (FG) is nieuw en concrete richtlijnen ontbreken (lees de wettekst er maar eens op na). Door samen te werken in de keten, kennis en leerpunten te delen en elkaar te helpen verbeteren zijn we tot concrete eisen voor Business en IT gekomen. Dat is een gezamenlijke inspanning geweest.

Terugkijkend kan ik stellen dat mijn rol meer aspecten had dan alleen business analyse. De keten afstemming is een regierol geweest waar het bijeenbrengen van de verschillende belangen de focus had. Want uiteindelijk moet iedereen in de keten voldoen.

AVG/GDPR heeft impact op de gehele organisatie, 25 mei 2018 gaat de regelgeving definitief in en komt er een einde aan de voorbereidingsperiode van twee jaar. Ik verwacht dat het nog jaren duurt voordat organisaties de AVG-regelgeving in de genen heeft zitten. Kwaliteitsprofessionals die in staat zijn om proces en (IT) middelen aan elkaar te koppelen, liefst met AVG kennis, zullen het voorlopig druk hebben.

Identify kan u helpen om AVG-compliancy binnen uw organisatie te borgen door;

  • Procesverbetering / -optimalisatie;
  • Business Analyse Privacy by Design;
  • Herijking van de kwaliteitseisen IT systemen;
  • Kwaliteitsregie in de keten.

Interesse? We praten graag met je verder!

Heb je een vraag of wil je met ons sparren? Neem gerust contact op met Marleen Kleijn.

Estimation of test automation in an Agile environment

Kennis

Estimation of test automation in an Agile environment

Insight into effort, impact, and investment

One way to ensure the quality of software, is by testing it. Running tests can be done both manually and automatically. Test automation, with its ups and downs, has been the centre of attention for many years. It is usually underestimated what implementing test automation entails and the impact it has on an organization. Especially the estimation of the required effort. Adding test automation within the entire range of testing measures requires extra human capacity, both for the initial set up and the maintenance of the automatized tests apart from test implementation. The question is how much human capacity is needed in order to test automatize the functionality which has to be tested automatically? This article describes several methods to estimate the required effort for test automation and the approach to collect the required data.

Keywords-Estimation; Test Automation; Agile; Testing; Return on Investment and Future proof.

I. Introduction

One way to ensure the quality of software, is by testing it [1]. What we mean by testing software is the following [2]:

“The process consisting of all lifecycle activities, both static and dynamic, concerned with planning, preparation and evaluation of software products and related work products to determine that they satisfy specified requirements, to demonstrate that they fit for purpose and to detect defects.”

Running tests can be done both manually and automatically. Test automation, with its ups and downs, has been the centre of attention for many years. It is usually underestimated what implementing test automation entails and the impact it has on an organization [3] [18]. Because of the rising popularity of Agile [4] [20] and the implementation of continuous deployment and development [22], it seems that test automation is taking on a fixed position. The most important reason for this is that the amount of work is no longer manageable to be done manually [5].

Adding test automation within the entire range of testing measures requires extra human capacity, both for the initial set up and the maintenance of the automatized tests apart from test implementation. The question is how much human capacity is needed in order to test automatize the functionality which has to be tested automatically?

Test budgeting has been a problem since the beginning [6]. Several methods have been developed [7] [8] [9], but they don’t always produce the correct results. Paragraph 2 will expand on this topic. Practice shows that significantly more time is needed than was budgeted at the start of the project.

The question is how to get a grip on this in order to make reliable predictions concerning the necessary capacity. Based on previous methods [7] [8] [9], which are the utilized ways of budgeting within the Agile methodology [10], three ways of thinking have been developed to budget automatized test capacity. These three ways of thinking are described in this article. However, they still have to be tested in practice.

The fundamental principle in this article is a structural, future proof design of test automation within the Agile developed methodology. That means the following: designing test automation in such a way that developed automatized tests cannot only be executed, reused, and easily transferred to others today, but also in the future, and done in such a way that maintenance effort is minimal.

The paper has the following structure. Section II describes the causes of poor test budgets on behalf of test automation. Section III describes the general elements that affect the required test capacity. Sector IV will give insight into budgeting future proof elements on behalf of test automation. Sector V discusses the three ways of budgeting. A detailed example has been included in Section VI. Section VII describes the collection of the data and the approach to classify into the described estimation methods. Return on investment is dealt with in section VIII. Lastly, section IX describes the conclusions and future work.

II. Causes of poor test automation budgeting

As indicated in the introduction, budgeting within ICT is a common problem [6]. Which causes are at the core of this? A couple of reasons can be found.

Using new development and or programming techniques of which there is not enough knowledge. Not questioning the desired functionality enough which causes new problems to arise during the implementation and test phase. Unfamiliarity with the quality of the software in the beginning is another reason. Furthermore, the quality of the persons involved, such as the tester or developer, plays a role. Is someone sufficiently skilled to make a solid budget? [9][8][7].

What we see in practice is that experience numbers are hardly recorded, if recorded at all. This is especially the case for budgeting test automation. A short research in the ISBSG database [11] shows that only three projects have been recorded in which Agile development technique is combined with automatized testing. Of only 1 project out of these three, the delivered test effort has been registered. See table 1.

Table 1: Analysis ISBSG-database for the attention of test projects

#projectsWay of testingAgile development methodologyTest effort known
 ManualAutomatizedYNYN
95296636312

It becomes clear from this analysis that there is no useful data available to draw conclusions.

In order to try to answer the question: “How is budgeting done in an Agile development environment concerning test automation,” a survey has been conducted in which 100 people participated. The results are recorded in table 2.

Table 2: Results survey way of budgeting test automation

Way of budgetingNumber
Not budgeted2
Percentage available time1
Pokering of the effort3
Experience based5
No response89
Total100

As table 2 shows, no reliable results can be extracted from the survey. Despite a reminder, response was very low. Both the results of the survey and the analysis of the ISBSG database, which show comparable results, were a trigger to keep on thinking of ways how to budget test automation reliably and predictably.

A first draft was made during the Valid2016 conference where the first ideas were drafted during the presentation: “Estimation of test automation in an Agile Environment” in which the following question was discussed: “How to estimate the required effort in an Agile environment regarding test automation” [12].

During this presentation three ways of thinking were sketched how test automation can be budgeted in an Agile development environment in order to set up test automation in a structured and future proof manner. This article elaborates on the presentation whereby received input has been included in further working out the ways of thinking. Besides the manner of budgeting, each approach has a number of general elements which influence the eventual budget for test automation. These general elements will be elaborated on first.

III. General elements influencing budgeting of test automation

Apart from the required budget to automatize the test scripts, there are several preconditional elements which influence the required budget for test automation. No matter at which level in the organization (project, division or company level) [21] you wish to implement test automation, you will have to deal with these elements. Dependent on the level at which you would like to implement test automation, the impact on the organization will be bigger. If you focus test automation on company level instead of a project or individual sprint, the involved elements will have a wider impact. The elements can be separated in the so called initial costs and continuity costs. The initial costs are those which you have when setting up and developing test automation for the first time in an organization.

Continuity costs are costs which have to be made after the introduction of test automation in order to maintain and expand (if necessary) test automation. In table 3 the relevant elements are mentioned with an indication how these elements can be measured and a short explanation.

Table 3: Initial and continuity elements test automation

ComponentElementUnit of measureExplanation

Initial

costs

People

#people

Costs per day

Number of people that are going to work on test automation
 Test tools

#tools

Price per license

Type and number of test tools to purchase aligned with various development platforms
 Installation costs

#days

Costs per day

Installation of test tools in the ICT- landscape
 Test data

#days

Costs per day

Choosing a working method: formulate test data requirements, making synthetic test data, scrambling production data to use as test data. Taking privacy into account [14]
 Education# daysNumber of required educations/courses
 Frequency of usage#runsHow often is test automation used?
 Virtualization Is virtualization used?
 Number of integrations with surrounding systems

#integrations

costs per integration

Which integrations are relevant and how are they mutually dependent?
 Support which company objectivesn/a (not applicable)Which strategic objectives have to be supported?
    
ContinuityLicense costs test toolsPrice per licenseAnnual costs on behalf of the test tools
 Maintenance test scriptsModification frequencyPercentage time reserved for maintenance of the test scripts
 Additional training

#days

#days

upgrade

Required training for new employees and new versions of test tools
 Test tool upgrade#licenses times updatesCosts linked to purchasing and installing test tool upgrades
 Integrations

#integrations

costs per integration

Expansion and maintenance of integrations surrounding systems

IV. Budgeting future proof elements

This information is partly delivered by the overarching test procedure on company level. You can think of frameworks for reusability, tooling, test data generation for repeatability and a wiki for setting up the transferability aspect.

The question is which percentage of the required test capacity for test automation has to be reserved for developing future proof automated test scripts?

The following rules of thumb can be applied as shown in table 4.

Table 4: rules of thumb on determining future proof factor

AspectPriorityFactor
ReusabilityH (= High)1,2
 M (= Medium)1
 L (= Low)0,8
RepeatabilityH (= High)1,2
 M (= Medium)1
 L (= Low)0,8
TransferabilityH (= High)1,2
 M (= Medium)1
 L (= Low)0,8

An example: 100 hours have been calculated for test automation. In order to set up future proof test automation, the following values have been agreed upon (see below). Determining these values is done in accordance with the principal and is linked to a company’s objectives.

AspectFactor
ReusabilityH
RepeatabilityM
TransferabilityM

The number of hours required to set up this part future proof will be: (100 x 1,2) x1 x 1 = 120 hours.

Another aspect to take into consideration is the scope of test automation. For which test type [2] are the test automation scrips developed? A sprint, an integration test (IT) or a chain test (CT)? The bigger the scope, the more synchronization with all parties becomes necessary. Think of which test data to use, which test scripts, availability of test environments for example and analysis of the results [15] [16].

You can introduce another factor namely the test type with the following parameters:

Testtype Factor
Sprint1
IT1,2
CT1,5

Say you would like to do for example a chain test automation. The necessary effort, based on the table above would be:(120 x 1,5) = 180 hours.
As stated, these are rules of thumb, which will have to be tested and adjusted by collecting data from yet to be executed case studies.

V. Budgeting test automation

In previous paragraphs it has been discussed both which general elements influence the test automation budget and that making test automation future proof also impacts the budget.

So how do you really budget test automation?

The following methods of budgeting will be elaborated on:

  1. Percentage of the available time;
  2. Pokering the required effort;
  3. Pokering the required effort in combination with being 1 sprint behind.

A.   Percentage of the available time

This method uses reserving a percentage of the total available test time for test automation as a starting point. A frequently used percentage, distilled from various projects, is 20% of the available test time. Suppose that for 100 hours of testing time 20 hours are used to do test automation. A part of these 20 hours is then used to make the test automation future proof.

By monitoring the actually needed capacity during each sprint, a realistic percentage can be established eventually. The velocity [13] becomes more and more accurate. The question is how reliable such a number is? Does a fixed number allow you to automatize everything that has to be automatized?

The risk is that in for example a sprint, not everything can be tested automatically, since the amount of work requires more time than can be realized in the time that is available. A debt is build up which either has to be removed during a next sprint, or in order to finish the amount of work scaling up is done. One of Agile’s features is a shared team effort. Developers can support in test automation but this will be at the expense of other work which puts pressure on the velocity and leads to not being able to realize all the selected product backlog items.

The way of budgeting, as described here, is a very basic way of budgeting which begs the question of how much functionality can be tested automatically given the framework conditions. The advantage is that you always know how much time is available for test automation.

B.   Pokering the required effort

Another way of budgeting is applying poker planning [17] specific for test automation. Perhaps initially this might seem like reserving a percentage of time. Initially. Pokering the effort uses the brain power of the entire team to reach an actual estimation of the required time.

By placing the items which qualify for test automation on the product backlog, insight will be given into the amount of test work which has to be automatized. Pokering items also provides insight into whether the amount of work fits the current sprint. If the necessary effort is large one can decide to develop less functionality so that developers can assist in developing the necessary test automation.

This way of budgeting has some caveats to take into consideration. Is the to be test automatized item on the backlog of sufficient depth to determine the scope properly? The second observation has to do with the stability of the features for which test automaton has to applied. Is the team only capable of automatizing the test on unit level or also all the features itself?

C.   Pokering the required effort in combination with being 1 sprint behind

To obtain a larger predictability of the work that has to be done, you can choose to start the test automation in the next sprint using the version of software which was produced in the previous sprint.

This approach has a number of advantages. The software which qualifies for test automation has reached a level of stability which makes it suitable for test automation. Another major benefit is that more detailed information is available with regard to functionality. After all, software has already been produced, which makes it easier to determine which effort is necessary to automatize the tests. Counting the number of functions goes back to the method of budgeting as applied within the TestFrame methodology [15].

This way of budgeting overlooks an important Agile principle namely the fact that working software has to be produced at all times. As a team you cannot guarantee that all software from for example a sprint works, simply because you can no longer test everything manually.

VI. a developed example

To give an idea of the various elements influence on the needed capacity, a fictive example has been developed.

Basic requirements:

ActivityRequired capacity in hoursCalculating  factor
Testing1000 
Way of budgeting: 1 (fixed percentage)200 

Future proof:

Reusable:          H

Repeatable:       H

Transferrable:   L

 

1.2

1,2

0,8

Scope test automation: chain test 1,5

Relevant general elements

Additional training:

License costs

 

4 persons 1 day €1000, — per day

4 licenses €1000, — per year

Hourly fee €75

Total amount:

ActivityCalculationAmount
Required capacity200 x 1,2 x 1,2 x 0,8) x 1,5 x €75€25.920
Training costs((4 x 8) x €75) + 1000€3.400
License costs4 x €1000€4000
Total costs: €33.320

VII. Collection of the data

In the previous chapters a few methods are described to estimate test automation in an Agile context. Till now there is no real evidence which method is the best. A first attempt was made as described in section II. To verify the described estimation method a new survey will be set up tot collect the data based on table 5.

Table 5: collection of the data

ProjectType of Initial costPrioContinuity costsSDLCEstimation methodEstimated hoursActual hours
        
        
        

The major problem with the first survey was the timeframe. It was to short to collect data from different customers and projects. The new survey will take place during a period of two years to collect the required data as a base for a proper analysis. At least the data of 100 projects will be collected.

VIII. Return on investment

Initially, test automation costs money. As indicated, various elements have to be put in place before test automation can really be applied. The question is when the required investment will be recouped. Tied to this question is the question: what you will earn exactly? Soon thoughts will go to quantitative aspects. However, when it comes to return on investment (ROI) qualitative aspects also play a part. Table 6 describes a number of aspects that show how you can recoup the investment.

Table 6; aspects relevant for the ROI

AspectDescription
Shortening test execution time [19]Manual execution has been replaced by test tools by means of which test automation can be executed in so called off-peak hours. Besides this, a test tool is many times faster than a human being.
Prevention of regressionBecause of the acceleration in test execution it has become easier to execute all automatized test scripts. Insight into possible regression can be gotten quickly.
Impact analysis in case of modificationsBy executing automatized test scripts in the first sprint, insight into the suggested modifications can be gotten quickly. This can be especially beneficial in a Devops environment.
Time to marketBy raising the test execution power, the company can enter the market much faster than its competitors.
IndependenceBy automatizing the functionality, a company becomes less dependent on a few functional experts. This expertise can be used in other parts or parts of which automation is not useful.
Reliability in the executionThe execution of the automatized test always happens in the exact same way. This provided insight into the stability of the software.
Uniform way of reportingThe test tool generates reports. These describe in detail what happened during the test execution. This makes it easier to track faults and takes less time.
Quality to marketThe accuracy of tests gives a good insight into the quality and stability of the information system.

IX. Conclusions and future work

This article describes three ways of thinking on how to budget future proof test automation in an Agile environment. These ways of thinking came into being because the existing methodology did not support a reliable budget sufficiently. They will have to be tried and tested in practice by means of a case study. Data has to be collected in order to eventually develop a balanced way of budgeting. Lastly, the article describes the benefits of applying test automation in an organization.

Acknowledgment

I would like to thank Marcel Mersie and Danny Greehorst for their contribution and giving me some of their precious time. Furthermore, I would like to thank the companies where I could set up test automation and develop the in this article mentioned three ways of thinking.

References

  1. van Veenendaal, ”The Testing Practitioner, hoofdstuk 1,” UTN, 2002.
  2. van Veenendaal, M. Posthuma Testwoordenboek, blz. 112,” UTN, mei 2010.
  3. Fewster, “Common mistakes in Test Automation, “ www.cm.techwell.com, 2001.
  4. Hoogendoorn, “Dit is Agile,” Pearson, 2012.
  5. Blazemater, “The advantages of Manual vs Automated Testing,” blazemater.com, 2015.
  6. vd Burgt, I. Pinkster, “Succesvol testmanagement, een integrale aanpak, blz 110-111,” tenHagenStam, 2003.
  7. Greefhorst, M. Mersie, J. van Rooyen, “Principes van testautomatisering,” Computable, 2015.
  8. DJ de Groot, “Testgoal,” SDU, 2008.
  9. vd Laar, “Technieken voor plannen en begroten van test projecten,” Testnet voorjaarsevent, 2009.
  10. Karlesky, M vd Voord, “Agile projectmanagement,” Embedded systems conference Boston, 2008.
  11. ISBSG, “ISBSG database,”.
  12. van Rooyen, “effort estimation test automation in an Agile environment,” Valid2016, 2016.
  13. improvement-services.nl, “term velocity”.
  14. European Union, “GDPR, ” 2016.
  15. Schotanus et al, “Testframe, hoofdstuk 6,7,8,” Academic Service, 2008.
  16. Siteur, “Automate your testing, sleep while you are working, blz 143-144,” Academic Service, 2005.
  17. improvement-services.nl, “term pokerplanning”.
  18. Beck et all, “Agile manifesto,” www.agilemanifesto.org, 2001.
  19. Bach, “Test Automation Snake Oil,” www.satisfice.com, 1999.
  20. Huijgens, “Agile werkt,” Academic Service, 2012.
  21. Guru99, “Automation Testing for Agile methodology,” guru99.com, 2017.
  22. M. Fowler, “Continuous Integration,”  2006.
Let’s talk

Klaar om te sparren?

Met een unieke aanpak op basis van co-creatie en onze expertise in Agile, Business Analyse en IT-Testen helpen we organisaties door heel Nederland écht vooruit. Heb jij een uitdaging? We denken graag met je mee!

Identify Consultancy Amersfoort voor Agile, Business Analyse en Scrum is NEN 4400-1 gecertificeerd
Identify Consultancy Amersfoort Great Place To Work 2025

Contact

Ik wil up to date blijven

Blijf op de hoogte met onze gratis nieuwsbrief.

Grip op projecten middels ketenregie

Grip op projecten middels ketenregie

Dat we binnen de ict en ook de business moeite hebben om grote projecten te beheersen en deze projecten tot een goed einde weten te brengen is wel gebleken uit de resultaten van de commissie Elias met betrekking tot het onderzoek naar grote ict-projecten binnen de overheid.

Het rapport benoemt onder andere een aantal zaken, te weten:

  • De rijksoverheid heeft de ict-projecten niet onder controle.
  • De politiek beseft het niet, maar ict is overal.
  • De rijksoverheid heeft onvoldoende zicht in de kosten en baten van de ict.
  • Ict-kennis schiet te kort.
  • Het ict-projectmanagement is zwak.
  • Ict-aanbestedingstrajecten bevatten perverse prikkels.
  • Het contractmanagement bij ict-projecten is onprofessioneel.
  • Het ontbreekt de rijksoverheid aan lerend vermogen op ict-gebied.

Is dit uniek? Nee, dit komt helaas in verschillende branches voor en is zeker niet beperkt tot de overheid.

Een van de maatregelen die de commissie voorstelde was de oprichting van het bureau ict-toetsing (BIT).  Het bureau BIT heet een leidende rol in de toetsing van ict-projecten van groter dan vijf miljoen euro. Ieder voorstel wordt getoetst aan de hand van een vooraf opgesteld kader en het advies gaat via de minister naar de Tweede Kamer. Het bureau BIT is in 2015 van start gegaan en de eerste resultaten komen beschikbaar.

Grip op ict-projecten

De vraag is of deze maatregelen voldoende zijn om echt grip op ict-projecten te krijgen en falen te voorkomen. Wil je ict-projecten echt succesvol laten zijn dan is ict een belangrijke component maar slechts een van de vier basiscomponenten voor het realiseren van succesvolle projecten. Bewust noem ik projecten omdat er meerdere componenten van belang zijn voor het behalen van een goed resultaat. Naast ict moet ook aandacht worden geschonken aan de betrokken organisaties, de betrokken mensen en het bedrijfsproces (de keten) waarin de ict moet functioneren. Al deze stukjes moeten precies in de puzzel passen om uiteindelijk tot het gewenste c.q. noodzakelijke resultaat te komen waarbij voldaan wordt aan de benodigde kwaliteit.

Daarnaast heeft het bureau BIT beperkte bevoegdheden in de uitvoering. De angel zit ‘m vaak niet in het opschrijven van het plan, maar veel meer in het goed uit voeren. Het goed opzetten en uitvoeren van grote projecten is een veel bredere professie dan alleen maar een goed plan opstellen. Het laten toetsen van het plan verbetert het proces en het gedrag van de organisatie niet.

Regievoering en ketenregisseur

Een duidelijke regievoering is daarbij noodzakelijk. Regievoering die verder gaat dan traditioneel projectmanagement. Regievoering over de totale keten heen waarbij de kwaliteit voorop staat om alle puzzelstukjes in elkaar te laten vallen. De commissie Elias benoemt regie wel, maar is niet duidelijk in de invulling van regie. Het bureau BIT sluit daarbij aan. Het gaat dan ook verder dan toetsen, je moet echt de regie in handen nemen om projecten integraal succesvol te maken. Hoe pak je dit dan aan? Hoe kun je echt regievoeren?

Een belangrijke rol hiervoor is weggelegd voor de ketenregisseur. Maar wat is dat voor iemand? Enerzijds moet hij druk kunnen leveren, enthousiasmeren en aanzetten tot actie. Anderzijds moet hij respect kunnen opbrengen voor de tempoverschillen, maar ook het respect genieten van alle betrokken partijen. Hij moet enerzijds analytisch en scherp zijn om de ketens goed te kunnen doorgronden, anderzijds empathisch, mensgericht en met gevoel voor politieke verhoudingen. Zonder directe hiërarchische invloed instaat zijn om de keten te beïnvloeden.

Kracht zonder macht

Kracht zonder macht legt een verbinding tussen de vakgebieden ketenregie, kwaliteitszorg en verandermanagement waarmee managers en professionals in staat worden gesteld een optimale ketenregie in te richten en zo succesvoller te worden dan de concurrentie.

Ketenregie aangevuld met de doelstellingen van het bureau BIT kunnen leiden tot (meer) succesvolle ict-projecten die werkelijk bijdragen aan de doelstellingen van de overheid of het bedrijfsleven. Dan moet er echter wel over een drempel worden heengestapt en worden doorgepakt om nog meer verspillingen te voorkomen.

Interesse? We praten graag met je verder!

Heb je een vraag of wil je met ons sparren? Neem gerust contact op met Marleen Kleijn.

Grip op de onbekende

Grip op de onbekende

Als testers moeten we steeds vaker op basis van minder concrete input gaan testen. De klant neemt besluiten/risico’s om zo snel mogelijk naar de markt te kunnen. Men weet vaak zelf ook niet concreet hoe een traject gaat lopen, men begint zonder exact duidelijk te hebben waar het zal eindigen. Laat staan dat de requirements duidelijk zijn. Het wordt dan incrementeel managen, stapje voor stapje. Van de leverancier verwacht men dan geen vragen over 100 procent volledige documentatie, etc., want die is er domweg niet. Men verwacht een partner die bereid is risico’s te nemen en deze samen te managen. Zo slim mogelijk met de tijd om gaan. Als je dan naar testen gaat, wordt creativiteit steeds belangrijker. Hoe maak je een planning/kostenbegroting, een teststrategie of testcases als je bij wijze van spreken niet eens een FO hebt? Daar ligt een uitdaging!

Ook dit lijkt dan op wat je kunt noemen incrementeel testen: globaal beginnen en in de tijd fijnslijpen, stapje voor stapje duidelijkheid creëren. Niet tegen de stroom in roeien maar meeroeien en langzaam bijsturen. Laag voor laag de ui afpellen. Kort gezegd: de uitdaging zit in een klant die zo snel mogelijk naar de markt wil, daarom projecten start zonder exact helder te hebben hoe zaken zullen gaan en de testpartner vragen dit te bewaken, inzicht in kwaliteit te verschaffen en dit uiteraard tegen vooraf redelijk inzicht in kosten/tijdsbesteding. Uitgangspunt is dat het beschikbare materiaal wordt gebruikt, aangevuld met eventuele wetgeving, vereiste standaarden, etc.

Net als bij een ui zul je de vraag moeten afpellen in een aantal slagen waardoor de requirements duidelijk worden. Dan loop je gelijk tegen een van de bekende valkuilen aan, namelijk hoe vertellen we elkaar wat we nodig hebben? Het probleem nummer 1 in ict-land! De huidige technieken schieten daarbij tekort! Kijk maar naar de grote hoeveelheid applicaties die geleverd wordt welke niet voldoen aan de wensen/eisen van de gebruikers.

Dit probleem constateren is een, maar hoe los je het op? Uiteraard moeten technieken als reviews en inspecties toegepast worden, maar die zijn toepasbaar op datgene dat concreet aanwezig is. De hiervoor geschetste problematiek gaat verder. Hoe stel je vast wat er exact aan functionaliteit nodig is?

In mijn ogen zijn er nog geen concrete (bewezen) oplossingen die hieraan invulling geven. Om het probleem op te lossen zullen we mijn inziens, voor een deel, buiten de ict moeten kijken. Een deel van de oplossing ligt in de sociale wetenschappen, maar dan niet alleen de toepassing van interviewtechnieken. Dat is te voor de hand liggend. Die gebruiken we al en lossen het probleem niet 100 procent op. Nee, technieken die een andere manier van denken stimuleren. Denken vanuit het waarnemen, vanuit het bedenken, vanuit de beleving of bijvoorbeeld het willen. Gecombineerd met een aantal waarheidsperspectieven, zoals monadisme, idealisme, etc.

Door deze technieken te combineren met het multidisciplinaire karakter van Agile kan er een basis ontstaan van datgene wat gewenst is. Deze basis zal ook getoetst moeten worden. Dat kan op de traditionele wijze, maar ook hier denk ik een stap verder. De laatste jaren wordt ‘model based testing’ voor een breder publiek toegankelijk. De definitie volgens Wikipedia is ‘Model based testing is software testing in which test cases are derived in whole or in part from a model that describes some aspects of the system under test’.

De definitie zegt het al. Requirements worden vertaald naar modellen. Door deze slag te maken komen onduidelijkheden, open einden, etc. boven tafel. Door model based testing te combineren met de eerste stap krijg je in een aantal iteraties de gewenste functionaliteit boven tafel. De output van de modellen vormt de input voor de volgende iteratie. Tijdens de testuitvoer kan gekozen worden voor handmatige uitvoering of geautomatiseerde testuitvoering.

Is dit idee fictie of werkelijkheid? Beide nog net niet! Momenteel wordt met verschillende partners een onderzoek gedefinieerd om stap voor stap te onderzoeken of het geschetste idee realistisch en haalbaar is. Het onderzoek moet antwoord geven op vragen als: is de geschetste oplossing realiseerbaar? Welke testskills zijn nodig binnen deze aanpak, op welke punten moet bijvoorbeeld Agile uitgebreid worden en welke bagage hebben de toekomstige testers nodig?

Wat betekent dit voor je testskills? Hoe ga je het aanpakken? Voor het testvak komt er een extra dimensie bij. Om met het nieuwe werken om te kunnen gaan zijn er nieuwe skills noodzakelijk. Exact welke is nog niet bekend. Dat is een van de resultaten uit het onderzoek. Als de fictie werkelijkheid wordt, krijgen we als testcommunity de ideale testbasis op een presenteerblaadje aangereikt!

Interesse? We praten graag met je verder!

Heb je een vraag of wil je met ons sparren? Neem gerust contact op met Marleen Kleijn.