Understandings and Implementations of Continuous Delivery
|
|
|
- Ralph Skinner
- 10 years ago
- Views:
Transcription
1 Understandings and Implementations of Continuous Delivery Bachelor of Science Thesis in the Software Engineering and Management Programme. RICKARD BREMER JOHAN ERIKSSON University of Gothenburg Chalmers University of Technology Department of Computer Science and Engineering Göteborg, Sweden, June 2015
2 The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Understandings and Implementations of Continuous Delivery Rickard Bremer, Johan Eriksson Rickard Bremer, June Johan Eriksson, June Examiner: Morgan Ericsson University of Gothenburg Chalmers University of Technology Department of Computer Science and Engineering SE Göteborg Sweden Telephone + 46 (0) Department of Computer Science and Engineering Göteborg, Sweden June 2015
3
4 Understandings and Implementations of Continuous Delivery Rickard Bremer and Johan Eriksson University of Gothenburg, Sweden Department of Computer Science and Engineering Abstract. Agile practices are emerging and by adapting Continuous Delivery, agile ideas are turned into practical solutions. The Deployment pipeline begins with Continuous Integration, but it doesnt need to include the deployment of software to target. Understandings and implementations of Continuous Delivery in the industry can differ between organisations. We have conducted a survey study using a questionnaire, to gather data representing a population. We aimed to increase the knowledge in understandings and implementations of Continuous Delivery in the industry. The industry is positive towards Continuous Delivery and do believe that they will benefit from implementing it. But, they dont think their costumers are ready to adapt Continuous Deployment at this point. The testing procedure needs to be automated, but some tasks such as testing the user experience is hard to automate. Our research showed us that manual testing is still carried out to a substantial level. Keywords: continuous delivery, continuous deployment, continuous integration, software, agile. 1 Introduction The twelve principles behind Agile Software development aim to act as guidance for developing better software[1]. Principle number one brings up the need to deliver working software frequently. By delivering software to the end user, the organisation or developer will get a final confirmation that they have done the right thing, that the software has a value and that it works properly[2][3]. By doing this more frequently the current path of the development will be continuously validated[4]. A Continuous Delivery process aims to setup a environment where developers can commit code to the master branch whenever he or she have completed a task. If there is something wrong with the code the automated tests will fail and the commit will need to be fixed before replacing the latest version of the software which contains a value for the customer[5][6]. 1.1 Problem Domain & Motivation Within industry there is normally a drive to be more efficient when it comes to production, the goal of this is often to get the products out to the market quicker.
5 2 R. Bremer and J. Eriksson By adopting a Continuous Delivery process, parts of the industry believe that they will achieve increased efficiency. The definition of Continuous Delivery can be hard to grasp and hard to communicate while talking with others. Continuous Delivery should not be mistaken for Continuous Deployment, Continuous Deployment is an extension of Continuous Integration[5]. Our interpretations of the three continuous definitions, that we found in the literature, are found in the related work section. We would like to discover how the industry understand the definition of Continuous Delivery and how they would implement such a process. Our perspective is that each organisation will face its own unique challenges and therefore the perspective of what a Continuous Delivery process is, may vary between the organisations. There are some general thoughts that the entire test part in the process need to be automated. The industry might not be able to do so and may have a different perception of this part of the process. Therefore, the study also focused at the testing part of a Continuous Delivery process. We do hope that by collecting data, we can find some clarifications among this data. We may also help organisations or researchers in future implementations or work, to carry out their tasks. 1.2 Research Goal & Research Questions The goal of the survey performed in the course of the Bachelor Thesis is to identify how the industry understands and implements Continuous Delivery and how the industry believe the practice of Continuous Delivery will affect how we test software. RQ1 : How is Continuous Delivery understood in the industry? Since Continuous Delivery is depending on a working testing procedure, we will not only ask for their opinions about the process, but also look into their current practices regarding the testing procedure, how do they look at it and how is testing implemented in their practices. RQ2 : How does the practice of Continuous Delivery affect the testing procedure within the development cycle? 1.3 Scope of the Work We designed and conducted a survey study, resulting in a questionnaire consisting of three parts. A few background questions, understandings about Continuous Delivery and the last part handles testing in Continuous Delivery. The questionnaire aims to cover obstacles, challenges as well as expectations from different angles. All questions are aimed at finding how the industry interprets and what expectations they do have on a Continuous Delivery process.
6 Understandings and Implementations of Continuous Delivery 3 The interviews were conducted at eleven organisations with 14 different subjects in and around Gothenburg, Sweden. The organisations had different directions within the field of software development. A part of them worked only with pure software, such as web services, while others used a combination of software and hardware in their products. 1.4 Contributions of the Work A key finding discovered was that it was important for some organisations to underline and make a clear distinction between Continuous Delivery and Continuous Deployment. Another key finding was that a majority of the organisations interviewed witnessed that the processes Continuous Integration and Continuous Delivery had a major impact at their look at testing. 1.5 Structure of the Article The remaining parts of this Bachelor Thesis is structured as follows. Section 2 presents the already conducted work and research within the field. Section 3 describes our methodology for carrying out this survey study. Our results are presented in section 4 and the analysis with a discussion in section 5. Finally the thesis is concluded in section 6 were also future work is presented. 2 Related Work The Continuous Deployment pipeline has been clearly described in the book Continuous Delivery[5]. A Continuous Deployment pipeline is the set of tools, which enables the workflow to deliver source code from the version control system through the build system and the tests to production in a continuous matter, preferably would be that all steps are automated. The code shall be ready for being deployed to target after passing through the Continuous Deployment pipeline. The first step in the Continuous Deployment pipeline is Continuous Integration, which aims to continuously integrate source code to the main branch[7]. Each commit shall result in a working build of the software. Continuous Integration is essential to be able to establish a Continuous Delivery process. But even Continuous Integration can be a challenging task to implement. Some of the challenges have been identified as Mindset, tools & infrastructure, testing, domain applicability, Understanding, Code dependencies and software requirements The purpose of Continuous Deployment is to achieve the ability to be able to deploy code to the customers as soon as new code has been produced[3]. This is demanding and challenges for being able to implement such a process have been identified. Some of the challenges are similar to the challenges for
7 4 R. Bremer and J. Eriksson implementing Continuous Integration. The challenges have been grouped into two groups, technical adoption challenges and social adoption challenges. The path to Continuous Deployment has been described in a model, as the Stairway to heaven, but the task is not trivial to complete and contains barriers[2]. Software organisations evolve practices and strategies over time. Once an agile practice has been implemented a transition towards continuous integration can start. When this step is completed a strategy for implementing a Continuous Delivery process can start to take place before reaching the final state as an R&D experiment system. Joining a Continuous Delivery process and culture can be frightening in the beginning[6]. But with the help and explanation of more experienced software developers this can be overcome easily and fast. First impression was that it was a bad idea to deliver out to production but once the process was explained the employee showed a more positive attitude towards it. Organisations are continuing to invest in Continuous Delivery process solutions due to the expected benefits[8]. The expectations are high and by shortening the release cycles an expected outcome is to be able to verify the value for the costumer. Faster feedback by more frequent releases to reduce costs is an important motor in this change[4]. But once again the importance of delivering software with a value for the customer is mentioned. 2.1 Definitions extracted from literature To make the reading of this thesis more understandable from our point of view, we have extracted some interpretations related to the literature we have read on the subject. Continuous Integration aims to integrate each commit to the master branch of the project. The outcome of a successful integration is the latest successful build. In a Continuous Integration process, the aim is not to have release ready code, the aim is to integrate often to avoid integration problems. Continuous Deployment works as an extension of Continuous Integration, instead of leaving the integrated code as the latest build, Continuous Deployment aims to deploy the build to a target. An importance difference from Continuous Integration is that this extension demands that the software is ready for targets or customers, since it will be deployed. This put slightly different requirements at the software, internal experiments should be handled carefully and features not in use should not be visible. Continuous Delivery aims to deliver working software continuously. It doesn t need to include the deployment of software, but it should be ready for a deployment at any given time.
8 3 Methodology Understandings and Implementations of Continuous Delivery 5 For this specific study we used a Survey study as methodology. We decided on Survey research because we wanted to collect equal data from the sample and have the data interpreted comparatively. To compare trends, attitudes and opinions was also of interest and this made a Survey study suitable. 3.1 Data collection The data was collected by following a questionnaire during the interviews, which is attached in the appendix. First we studied the literature related to our research questions. We then created questions and answers in an iterative manner consulting software engineering literature on research, Shull et al. [9]. Once the questionnaire was created, it was first tested by two pilots without low or no agile understanding, active within the industry. The idea was to try the questions and how clear they would be, for someone who knew little about the subject. Once the iteration was done and questions adjusted to be more clear, the questionnaire was yet again sent out to pilots. This time three students with good understanding of the agile ways of working. The questionnaire contained both open-ended and closed-ended questions. The subjects were interviewed at one point in time, cross-sectional approach, i.e. not analysing Continuous Delivery over time. We used two different strategies during our one-to-one interviews. 1. One researcher asked the questions and one researcher wrote down the subjects answer. 2. If only one researcher could participate the answers were voice recorded after asking the subject for permission. All subjects were asked if they wanted a copy of what was written down during the interview for approval and all of them were interviewed in their natural setting. Transcriptions and audio recordings were stored privately online available for both researchers. Population description and sample : As population we defined Developers, Testers, Enterprise Architects, Software Team Leaders and Managers. We used convenience sampling to contact the population, our own and our supervisors connections to get in contact with the organisations of interest. This can to some extent also be explained in a way that some of our contacts re-directed us to more appropriate subjects, at least when they felt that they were the wrong target.
9 6 R. Bremer and J. Eriksson Survey and survey structure : We wanted our analysis to represent the population rather then the sample after completion, which is also discussed by Shull et al. [9]. For this reason a questionnaire was used as our survey instrument, instead of semi-structured interviews, which could give an more personal reflection on the result. The questionnaire contained three parts. Part one aimed to gather some general data about the subjects professional background and attitude towards Agile and Lean Software Development. The second part focused on research question number one, were we gathered understandings of Continuous Delivery. We began with asking questions related to how they integrate code during different development projects and then moved on to more general questions. The third part focused on research question number two. We started with asking questions regarding how they test software and how they would like to improve their testing procedure. We then moved on to more general questions regarding testing in an Continuous Delivery process. 3.2 Data analysis One researcher used a technique were he printed out all raw transcriptions from the interviews and compared them by placing three transcriptions next to each other, this while taking notes and identifying similarities until all transcriptions were studied. The researcher then compiled the notes into a readable format before comparing each transcription once again with the text to ensure validity. The method used had similarities with cross-case analysis discussed by Seamen[11]. The other researcher used a technique were he printed out a compiled collection of all answers. He then read all answers regarding one question at a time and used a type of color coding, using pens to mark answers of interest. This method had similarities with coding also discussed by Seamen [11]. When this was done research findings was moved to a document. 4 Results This section contains three subsections, one for each part of the questionnaire, each subsection lists a summarised answer of respective question in the questionnaire. In total 14 interviews were completed, we reached out to 28 subjects giving us an response rate of 53.5%. Seven out of these were conducted by two researchers, while seven were conducted by one researcher and therefore the sessions were audio recorded. A 15th interview was discarded due to a violation against our methodology. Only one researcher carried out the interview but was not allowed to record the interview. 4.1 Questionnaire Section: Info As stated in the previous section, it was of importance that the subject were well aware of the process used within the organisation they represented in order
10 Understandings and Implementations of Continuous Delivery 7 to get accurate results. A few backgrounds questions were asked initially. What is your current position? We did manage to reach out to a large variety of the population that was defined. Our interviews covered a wide spectrum of different roles within organisations managers, developers, software engineers, enterprise architects were among the subjects interviewed. What is your educational background? Over 75% of the subjects had at least a bachelor degree and 50% had a master degree. All degrees were within technical fields. For how many years have you been working within the current industry? In average the subjects had roughly eleven years of experience within the IT industry. For how long have you been working in your current position? The average time at the current position, were slightly lower than four years. To what extent are you familiar with Agile & Lean Software Development? (fig. 1) The positions our subjects had at the organisation varied. Yet, they all claimed to have at least a good understanding of Agile & Lean Software Development. Are you positive or negative towards Agile & Lean Software Development? (fig. 1) Their attitude was also very positive towards this way of working, no matter their current position within the organisation. While developers appreciated how smooth it could be, the more organisational roles saw different benefits of using an agile approach.
11 8 R. Bremer and J. Eriksson fig Questionnaire Section: Understanding of Continuous Delivery The second section of the questionnaire aims to find out more information about the view at Continuous Delivery. Do you agree with the following statement regarding your current projects? When asked how they currently integrated most of the work within their projects, the subjects revealed that a majority used Feature boxed integration plans. The interpretations of Feature boxed integration is the use of feature branches. Many organisations use both continuous integration and feature branches to describe their process towards continuous integration. The time boxed integration plans were used, but not commonly, in favor to feature boxed. Big bang integration plans does not exist at all within these organisations. If following another integration plan, please write below. No subjects mentioned any other integration plans during our interviews. How do you think that Continuous Delivery would affect: development time, quality, costs? (fig. 2) Moving towards Continuous Delivery is considered in this questionnaire to have a positive effects on the project variables. A majority think that it have a positive effect on the development time, while all subjects were convinced that the effects are at least rather positive. A majority were also convinced that it have positive effects of the quality of the products and that the costs, over time, decreases. Some subjects agreed the short term costs were high, but the long term costs were lower. fig. 2 What would be the greatest obstacle if/when establishing a Continuous Delivery process?
12 Understandings and Implementations of Continuous Delivery 9 When asked for the obstacles to adopt the process, tools and technical challenges were mentioned as the largest obstacles. A number of tools need to work together in order to have a deployment pipeline. Furthermore, current processes and organisational issues is also considered to be large obstacle, examples of existing processes that are not flexible for changes were mentioned, as well as an attitude to fix all problems with a new process, an attitude that instead could lead to new problems. Mindset and organisation culture was also mentioned and is closely related to the organisational issues. What would be potential benefits of a Continuous Delivery implementation for your organisation? When asked for closer details, a majority of the subjects answered that higher quality of the product is the greatest benefit of a process implementation. The possibility to receive and respond quickly to feedback was considered as a major benefits. Increasing the efficiency of the work was also mentioned by the subjects. It was mentioned that the efficiency is not always directly related to the development time, but could also be how well products are developed. What would be potential consequences of a Continuous Delivery implementation for your organisation? Possible consequences of an implementation are viewed as positive, a majority mentioned the benefits of quality, fast feedback and efficiency as positive consequences as well. The bar to implement the process can be high, but over time all subjects saw it as a good investment for their organisation. What would be the potential challenges of implementing Continuous Delivery at your organisation? When it comes to implementing Continuous Delivery in the organisation, the mindset among employees and work culture were pointed out as the largest challenge. Also, testing were mentioned as a large challenge, in particular a reliable and working test pipeline. Also to set up this pipeline was considered to be a great challenge, configuration and setup of the tools are considered to be hard to get working. How do you think Continuous Delivery would affect your relation with your customers? The subjects are satisfied with the concept of Continuous Delivery, that there will always be a delivery ready for their customers and they are able to react to any feedback given. However, it s uncertain to some organsiations what the customers attitude to Continuous Delivery is. A majority agreed that Continuous Delivery is good for their relations with the customers, but to take it to the next step, Continuous Deployment, is a step to far, for several reasons. Continuous Deployment may put to much pressure at a customer and damage the relation if the customer is not ready for continuous updates. A mitigation strategy that was mentioned by several subjects was the ability to hide a unfinished feature
13 10 R. Bremer and J. Eriksson for the customers, for example by using a feature toggle. How do you think Continuous Delivery would affect your employees interaction with the production code? A majority of the subjects agreed that the process have a positive impact at their employees. Positive effects such as: deeper understanding of code and products, awareness of details of what the organisations are doing and the directions that they are heading for. It s believed that more engaged co-workers have a direct effect at the products quality, both the final products and during development. However, it also could put higher demands at the developers, such as to be responsible for the code and trust the system, most subjects agreed that even in that case, the overall impact was in general positive. How do you think working with Continuous Delivery would affect the way you outsource/hire third party organisations and communicate with these? The subjects had in general a positive attitude towards the impact at outsourcing or hiring services from third party organisations. They thought that it could be slightly harder to integrate outsourcing into their workflow, but as long as the communication is working most had a positive attitude. When it comes to third party services, no changes or effects are believed to happen, our subjects had a positive attitude towards this. Is Continuous Delivery something you would like to have established in your organisation? (fig. 3) With no doubt, all subjects had a positive eye towards Continuous Delivery and wanted a working process in their organisation. 4.3 Questionnaire Section: Testing The third and last part of the questionnaire covered a range of questions regarding tests and testing. To what extent do you use: Unit tests, Acceptance tests, Performance tests and Manual testing? (fig. 4) When it comes to testing, a majority of the subjects witnessed of that they still had a substantial amount of manual testing compared to other kinds of tests. Most organisations used some sort of Unit and acceptance testing. Only a few had no performance tests at all.
14 Understandings and Implementations of Continuous Delivery 11 fig. 4 How reliable would you grade the testing procedure at your company?(fig. 5) Even though no organisation was satisfied with their current procedure, a majority stated it was reliable. fig. 5 How would you like to improve your testing procedure? More automatisation was the most desired improvement of the current testing procedure, as well as improving the current tests. No subjects were satisfied, or close to satisfied, with their current procedure. Could you give us an example of something you would like to automate in your testing procedure? When asked for a concrete example of something that the subject would have automated, many asked for automatisation of User Interface(U.I) tests. Most subjects agreed that this would be the hardest part to automate for various reasons; many different devices/platforms, computers can not decide what s good or bad, computers do not have a feeling for looks or appearance. Within products with no or little user interfaces, there was a demand to run black box/acceptance tests of the systems. Is manual testing suitable in a Continuous Delivery Process?(fig. 6) When asked if manual testing had a role within Continuous Delivery, the sub-
15 12 R. Bremer and J. Eriksson jects were divided. The organisations working with pure software had a majority that disagreed with the statement. While the organisations that had more hardware involved in their development seemed to agree. However, in relation to the previous question, some of the pure software organisations in larger extent stated that U.I was hard, if not impossible, for a computer to test properly. fig. 6 What do you think are the main obstacles for not being able to automate the complete testing procedure in a company? The obstacles for not being able to automate the entire test procedure in an organisation was mostly related to organisational and technical issues. Time and money were stated as main factors for organisational issues, while complexity, tools, technical dependencies was the technical issues. A majority also expressed a sort of scepticism of computers handling all testing, statements as it will be hard to remove humans completely was mentioned. What is your opinion on small release, small bug? A majority agreed with the statement Small release, small bug, but two answers was sticking out: Sometimes our small releases created very large bugs that broke the product and In general, it should be reformulated as: small release, small risk. What is your opinion on releasing software often to learn more about the software quicker? All organisations agreed with the second statement. The subjects witnessed that the customers are the ultimate testers and the shorter feedback loops that Continuous Delivery allows, are to great assistance for the development. New way of testing possible solutions(a/b tests) and changes of the software during the development have been possible through use of this process. All subjects agreed that follow this statement is a positive and healthy way to work, it is allowing a good and dynamic way to develop the products continuously. How do you think Continuous Delivery has affected the way we look at testing software? A majority of the subjects witnessed that the work towards a Continuous Delivery process had a major impact at their understanding of testing. Many of them moved from looking at testing as something unnecessary, to organisations that
16 Understandings and Implementations of Continuous Delivery 13 now value testing and motivate their employees to think more about it, the entire mindset have changed for many organisations. Organisations have adapted a TDD alike approach for developing software, today more tests are done faster than before, with higher demands at the tests. Organisations have started to evaluate where humans match into this new phase of working. Computers can test many things faster then humas, computers also have the ability to repeat an exact test over and over again, but they are not able to get the feeling if a product is good or bad. Organisations have realised this and moved their human testers to work more within the current teams and focus more at testing parts of the products that a end-user will use, for example - the design of a U.I. 5 Analysis and Discussion The responses in the first section showed us that we succeeded with our goal to get in contact with people within the industry. It also showed us that they were familiar and positive towards Agile & Lean Software Development. 5.1 RQ1: How is Continuous Delivery understood in the industry? Some of the organisations made a clear distinction between Continuous Delivery and Continuous Deployment, these organisations were often more software oriented. Continuous Delivery according to these organisations is when you are able to deliver to the repository when ready, while Continuous Deployment is when you are able to deploy to the target when ready. The mindset among employees was something several of the subjects mentioned to be either an obstacle or challenge. People need to change their mindset, in some cases, to be able to achieve and work in a Continuous Delivery process. The correct tools and technologies were also mentioned among the difficulties with implementing a Continuous Delivery process. The ability to get quick feedback do have a positive impact on the relationship with customers even tough some pointed out that mistakes do happen, even with excessive testing. All subjects wanted Continuous Delivery to be established in their organisation and they were also of the belief that costs, development time and quality would be positively influenced by a Continuous Delivery process. We observed that the deployment of software within these organisations often were time-boxed, while the integration were continuous. While they aimed to get the latest commits into the latest build, the organisations witnessed of several reasons to not deploy these builds to the customers or targets. Among the mentioned reasons we observed a variety, third party review systems, endusers wish for updates or agreements with customers. A majority of the reasons given, is rooted in that the clients were not able to handle a continuous flow of updates.
17 14 R. Bremer and J. Eriksson 5.2 RQ2: How does the practice of Continuous Delivery affect the testing procedure within the development cycle? Most subjects mentioned the importance of automated test suits for each build. On the other hand, in many cases they also said that they think manual testing is a valid part of a Continuous Delivery process, due too that there is no other way to completely automatically test some specific details such as user experiences. Almost all organisations claimed that testing had a major impact on their view of tests, however, at the same time we did notice scepticism against completely automatic tests. Arguments as it will be hard to remove humans completely and computer cant think out of the box was mentioned among the subjects. Many answers pointed out that Continuous Delivery have pushed the need to automate tests and builds further then before. Many organisations also mentioned an increased awareness of testing, that the process had given a deeper understanding of the importance of testing within the organisation. One of the obstacles mentioned to not be able to automate a complete process is that each time a requirement is changed new tests are needed. The answers showed us that manual testing, to a substantial level, is very common. And to a larger extent then before, organisations include the end-users in the test scope, this was also mentioned during the interviews. Furthermore, organisational issues were also common, time and money to automate more testing was a common issue. All organisations asked for higher quality of their products, but at the same time they shared organisational issues that made it hard to give testing enough of attention. Priorities within the project were often focused around development instead of testing. Also, initiatives to improve tests are easy to initiate, but seems hard to maintain, due the same organisational issues. 5.3 Threats to Validity The categories used for validity threats were inspired from Easterbrook et al. [10]. External Validity : The background of our subjects are of high importance and could lead to an incorrect result if it differs from the defined population to a great extent. When the interviews were arranged, we asked specifically for subjects within the field of software development and verified this in the beginning of each interview by a small chat with the subject as well as our background questions. The willingness of subjects to participate could reflect the outcome of the research. We limited this threat by the amount of organisations contacted. Internal Validity : Failure to analyse qualitative data due to researcher bias was avoided by using two different methods to analyse data. Additionally, our
18 Understandings and Implementations of Continuous Delivery 15 subjects might get tired of answering the questionnaire during the interview. We estimated the interviews to take approximately 30min. The fact that we used convenience sampling could be a threat but it was still a broad range of organisations due to that we used three different sources for gathering samples. I.e. each researcher and supervisor used their connections. Construct Validity : The design of the questionnaire and our theoretical background could reflect the outcome of the research and perhaps also affect it with researcher bias. This was also prevented as good as possible by our iterations during the design period and the pilot tests. Reliability Validity : In order to deliver results that are valid and described correctly, we both tried to attend to the interviews. In cases were one could not attend, the subjects were asked for permission so that we could audio record it. The notes was looked at by both researchers and the recordings was listened to. 6 Conclusion and Future Work For this bachelor thesis we have carried out a survey study using a questionnaire containing both open-ended and closed ended questions to collect data during one-to-one interviews. The study has been carried out in and around Gothenburg, Sweden. We aimed to increase the knowledge in how the industry understands Continuous Delivery and how they think Continuous Delivery is affecting testing of software. 6.1 Conclusion All organisations interviewed were very positive towards implementing a Continuous Delivery process. As challenges and obstacles these organisations identified a number of items, which have been identified in earlier research[3][2] and articles [4]. Some organisations underlined the importance to differ Continuous Delivery and Continuous Deployment, stating that internally, Continuous Delivery is something that they wish and do aim for in order to increase efficiency, while maintaining or raising quality, to a lower cost. Our observation is that a product or build of a Continuous Integration process does not necessarily need to have a value for the customer, but instead have a value for the internal organisation. These two may not necessarily need to be combined or synchronised, the purpose and state of a product can change over time, and is allowed to do so, in a Continuous Integration process. In difference to this, any initiative of Continuous Delivery, is required to have customer value. The purpose of Continuous Delivery, from our observations, is to be able to provide a continuous flow of deliveries of the software product. Therefore, the product is required to be in such a state that it can be delivered at any given time. This being stated, it is not required to deploy the product.
19 16 R. Bremer and J. Eriksson While this is true for these organisations, it seems to us as observers that the challenges are moving from organisational, technical and process challenges within the organisations, stated in an earlier research[2] and an article[4], to challenges outside of the organisations. This is a state between Continuous Integration and Continuous Deployment, were they have to wait for their customers to be ready to adopt continuous deployments. A multiple-case study[2], follow several companies that makes the transition from Continuous Integration to Continuous Deployment. The researchers who conducted the case study observed three main barriers for an organisation to overcome, in order to reach Continuous Deployment. A few of our subjects stated that they have overcome some very similar issues and were able to deploy continuously, but chose not to do so since that their customers were not ready. The individual reasons to not deploy the software products among these organisations varied, however, these organisations stated that the clients were not ready for a continuous delivery flow of software. This was also found in previous mentioned research[2], where they observed that the surroundings could affect the possibilities to work in an agile approach. Earlier research[3], also brings up that not all customers are pleased about receiving continuous updates, which is another answer given to why they would not be ready. General project management benefits from Continuous Delivery such as, shorter development time, reduced costs and improved quality was a general understanding of expected improvements in the industry if or when adapting to a Continuous Delivery process. In the literature, mentioned in the related work section, we found several articles and reports mentioning and defining challenges of adopting continuous approaches, during our interviews, our subjects witnessed about several of these items. We observed three major categories of challenges during the interviews, Organisational, Technical and Process challenges. In an article[4], items of all these three categories were mentioned with similar results as our own, the items in categories are also found in earlier research[2]. Earlier research[3] also develop the challenges further into categories and specify several more, many of these were found among our results. The industry expressed thoughts that more automatisation is needed during the procedure of testing their software. It is still considered to be hard to automate all tests so the industry do still accept manual testing as a part of Continuous Delivery. Manual testing is also something, which is still carried out to a substantial level within the industry. Continuous Delivery has increased the level of awareness when it comes to testing and it has also raised the question how to automate the testing procedure. The industry shared the idea of the benefits with shorter feedback loops and also thought that small releases contain a smaller risk. 6.2 Methodology It turned out that the coding method, described in our methodology, was more appropriate by quantifying the qualitative data that the open-ended questions
20 Understandings and Implementations of Continuous Delivery 17 had generated. This turned out to give an overview of all the interview answers at one time. However, the second method that compared three interviews per time, could be used as support and confirmation of the results. The methods did not collide, but instead we had great use of both. 6.3 Future Work Understandings and implementations change over time. This is why it would be interesting to replicate this research again in a near future, measuring how understandings of Continuous Delivery evolve over time, a longitudinal survey approach. The industry do believe that customers are not ready for Continuous Deployment. It would be of interest to carry out research on Deployment strategies to be able to continue to shorten the feedback loop and delivery software even more frequently. The area cover both great interest for the industry, as well as for the customers. Acknowledgements. We would like to thank the following organisations for participating in our research: Delphi, Ericsson, etraveli, HiQ, Jeppesen, Meltwater, Opera, Pulsen, Spotify, Viktoria and VTI. References 1. Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., Kern, J., Marick, B., Martin,R.C., Mellor, S., Schwaber, K., Sutherland, J., Thomas, D.: Manifesto for Agile Software Development. Agile Alliance, (Retrieved 5 may 2015). 2. Olsson, H., Alahyari, H., Bosch, J.: Climbing the Stairway to Heaven - A Multiple- Case Study Exploring Barriers in the Transition from Agile Development Towards Continuous Deployment of Software, Proceedings of the 38th Euromicro Conference on Software Engineering and Advanced Applications, pp , (2012) 3. Claps, G., Berntsson, R., Aurum, A.:,On the journey to continuous deployment: Technical and social challenges along the way. Information and Software technology, vol 57, pp , Jan, (2015) 4. L. Chen.: Continuous Delivery: Huge Benefits, but Challenges Too, Software IEE, Vol 32, pp , (2015) 5. Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation, 1st edn. Addison-Wesley Professional, (2010) 6. S. Neely and S. Stolt.: Continuous delivery? easy! just change everything (well, maybe it is not that easy), Agile Conference, AGILE 2013, pp , (2013) 7. Dibbiche, A., Diener, M., Berntsson Svensson, R.: Challenges when adopting continuous integration: A case study, Lecture Notes in Computer Science, vol 8892, pp.17-32, (2014)
21 18 R. Bremer and J. Eriksson 8. Leppanen, M., Makinen, S., Pagels, M., Eloranta, V., Itkonen, J., Mantyl, M., Mannisto, T.: The Highways and Country Roads to Continuous Deployment, Software IEEE, Vol 32, pp.64-72, (2015) 9. Barbara A. Kitchenham and Shari L. Pfleeger.: Personal Opinion Surveys, Guide to Advanced Empirical Software Engineering, Eds. Shull, Forrest; Singer, Janice; Sjberg, Dag I. K., pp , (2008) 10. Easterbrook, S., Singer, J., Storey, M-A., Damian, D.: Selecting Empirical Methods for Software Engineering, Guide to Advanced Empirical Software Engineering, Eds. Shull, Forrest; Singer, Janice; Sjberg, Dag I. K., pp , (2008) 11. Seaman, C.:Qualitative Methods in Empirical Studies of Software Engineering, ieee transactions on software engineering, vol. 25, no. 4, july/august (1999)
22 Appendix Understandings and Implementations of Continuous Delivery 19
23 20 R. Bremer and J. Eriksson
24 Understandings and Implementations of Continuous Delivery 21
25 22 R. Bremer and J. Eriksson
26 Understandings and Implementations of Continuous Delivery 23
Transitioning Towards Continuous Delivery in the B2B Domain: A Case Study
Transitioning Towards Continuous Delivery in the B2B Domain: A Case Study Olli Rissanen 1,2, Jürgen Münch 1 1 Department of Computer Science, University of Helsinki, P.O. Box 68, FI-00014 University of
Continuous Integration, Delivery and Deployment. Eero Laukkanen T-76.5613 - Software Testing and Quality Assurance P 20.11.2015
Continuous Integration, Delivery and Deployment Eero Laukkanen T-76.5613 - Software Testing and Quality Assurance P 20.11.2015 System Integration In engineering, system integration is defined as the process
Chapter 2 Climbing the Stairway to Heaven : Evolving From Agile Development to Continuous Deployment of Software
Chapter 2 Climbing the Stairway to Heaven : Evolving From Agile Development to Continuous Deployment of Software Helena Holmström Olsson and Jan Bosch Abstract Software-intensive systems companies need
Digital Transformation of the Enterprise for SMAC: Can Scrum help?
Digital Transformation of the Enterprise for SMAC: Can Scrum help? Scope of this Report October 2015 In this paper, we consider the impact of the digital transformation on software development and whether
Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield
Agile Software Development with Scrum Jeff Sutherland Gabrielle Benefield Agenda Introduction Overview of Methodologies Exercise; empirical learning Agile Manifesto Agile Values History of Scrum Exercise:
Agile user-centred design
Agile user-centred design Marc McNeill Thoughtworks, 9th Floor Berkshire House 168-173 High Holborn London, WC1V 7AA Agile methods are becoming increasingly common in application design, with their collaborative
Metrics to measure the impact of continuous integration:
Metrics to measure the impact of continuous integration: An empirical case study Bachelor of Science Thesis [in the Programme Software engineering and management] NAHID VAFAIE MIKAEL ARVISDSSON Göteborg,
USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS
Journal of Applied Economics and Business USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS Nevenka Kirovska 1, Saso Koceski 2 Faculty of Computer Science, University Goce Delchev, Stip, Macedonia
D25-2. Agile and Scrum Introduction
D25-2 Agile and Scrum Introduction How to Use this Download This download is an overview of a discussion Intertech has with clients on Agile/Scrum This download has an overview of Agile, an overview of
Use Scrum + Continuous Delivery to build the right thing
August 2012 W hitepapers Use Scrum + Continuous Delivery to build the right thing PETER GFADER Introduction How often do you release your product to your end users? How often do your end users see and
Assessing challenges of continuous integration in the context of software requirements breakdown: a case study
Assessing challenges of continuous integration in the context of software requirements breakdown: a case study Master of Science thesis in Software Engineering Adam Debbiche Mikael Dienér Chalmers University
Agile QA s Revolutionary Impact on Project Management
Agile QA s Revolutionary Impact on Project Management Introduction & Agenda Rachele Maurer Agile Coach, Platinum Edge Inc. PMP, CSM, PMI-ACP Agenda A quick overview of agile Current QA practices QA using
Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development
Ingegneria del Software Corso di Laurea in Informatica per il Management Agile software development Davide Rossi Dipartimento di Informatica Università di Bologna The problem Efficiency: too much effort
PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS
PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS Martin Tomanek and Tomas Klima Department of Systems Analysis, University of Economics, Prague, Czech Republic ABSTRACT Agile development methods
Scrum for Managers, Zurich March 2010
Scrum for Managers Microsoft Corporation / TechTalk Zurich Switzerland March 2010 About Mitch Lacey Mitch Lacey 13+ years of program and project management experience Microsoft Program Manager 2001 2006
TecEd White Paper User-Centered Design and the Agile Software Development Process: 7 Tips for Success
TecEd White Paper User-Centered Design and the Agile Software Development Process: 7 Tips for Success At-a-Glance Agile software development teams deliver successful products and applications through their
Secrets to Automation Success. A White Paper by Paul Merrill, Consultant and Trainer at Beaufort Fairmont, LLC
5 Secrets to Automation Success A White Paper by Paul Merrill, Consultant and Trainer at Beaufort Fairmont, LLC 5 Secrets to Automated Testing Success 2 Secret #1 Practice Exceptional Leadership If you
Agile in Financial Services A Framework in Focus
Agile in Financial Services A Framework in Focus John B. Hudson, B.Sc, PMP, CSM PMI NJ Chapter February 19, 2013 19 Feb 2013 1 Objectives 1. Agile Development an Overview 2. The Agile Enterprise Infrastructure
Introduction to Agile Software Development. EECS 690 Agile Software Development
Introduction to Agile Software Development EECS 690 Agile Software Development Agenda Research Consent Forms Problem with Software Engineering Motivation for Agile Methods Agile Manifesto Principles into
Automated Acceptance Testing of High Capacity Network Gateway
Automated Acceptance Testing of High Capacity Network Gateway Ran Nyman 1, Ismo Aro 2, Roland Wagner 3, 1,2,3 Nokia Siemens Network, PO Box 1 FI-02022 Nokia Siemens Networks 1 [email protected], 2 [email protected],
History of Agile Methods
Agile Development Methods: Philosophy and Practice CPSC 315 Programming Studio Fall 2010 History of Agile Methods Particularly in 1990s, some developers reacted against traditional heavyweight software
AGILE BUSINESS INTELLIGENCE
AGILE BUSINESS INTELLIGENCE OR HOW TO GIVE MANAGEMENT WHAT THEY NEED WHEN THEY NEED IT Evan Leybourn Author Directing the Agile Organisation Melbourne, Australia [email protected] INTRODUCTION
PMP vs. Scrum Master
PMP vs. Scrum Master Compatible or Incompatible? Presented by: Karen Little, PMP, CSM, CBAP, ITIL, MCP, MBA Copyright 2007 by Karen Little 1 Agenda Introductions Background on Agile and SCRUM Methodologies
Software Process Improvement Framework for Software Outsourcing Based On CMMI Master of Science Thesis in Software Engineering and Management
Software Process Improvement Framework for Software Outsourcing Based On CMMI Master of Science Thesis in Software Engineering and Management ZAHOOR UL ISLAM XIANZHONG ZHOU University of Gothenburg Chalmers
Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited
Continuous Integration: Improving Software Quality and Reducing Risk Preetam Palwe Aftek Limited One more title Do you love bugs? Or Are you in love with QC members? [Courtesy: Smita N] Agenda Motivation
User Stories Applied
User Stories Applied for Agile Software Development Mike Cohn Boston San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo Singapore Mexico City Chapter 2 Writing Stories
Bottlenecks in Agile Software Development Identified Using Theory of Constraints (TOC) Principles
Master thesis in Applied Information Technology REPORT NO. 2008:014 ISSN: 1651-4769 Department of Applied Information Technology or Department of Computer Science Bottlenecks in Agile Software Development
Pipeline Orchestration for Test Automation using Extended Buildbot Architecture
Pipeline Orchestration for Test Automation using Extended Buildbot Architecture Sushant G.Gaikwad Department of Computer Science and engineering, Walchand College of Engineering, Sangli, India. M.A.Shah
What Does Large Mean? Copyright 2003 by N. Josuttis and J. Eckstein 3. Why is Large an Issue?
Skalierung von agilen Prozessen Ein Erfahrungsbericht OOP 2003 Jutta Eckstein Nicolai Josuttis This Talk is About Agility Large Experience Success Copyright 2003 by N. Josuttis and J. Eckstein 2 1 What
Agile Project Management
Agile Project Management with Bill Doescher, PMP, MBA, CSM Pi Principal i lconsultant tand Product tdevelopment tdirector Bill Doescher, PMP, CSM Bill Doescher is a Principal Consultant and Product Development
Neglecting Agile Principles and Practices: A Case Study
Neglecting Agile Principles and Practices: A Case Study Patrícia Vilain Departament de Informatics and Statistics (INE) Federal University of Santa Catarina Florianópolis, Brazil [email protected] Alexandre
A Comparison of Issues and Advantages in Agile and Incremental Development between State of the Art and an Industrial Case
A Comparison of Issues and Advantages in Agile and Incremental Development between State of the Art and an Industrial Case Kai Petersen,a,b, Claes Wohlin a a School of Engineering, Blekinge Institute of
AGILE PROJECT MANAGEMENT
AGILE PROJECT MANAGEMENT (24 th, February, 2010) Agile project management This type of project management refers to a technique used in the development of softwares with increased efficiency and improved
AgileSoftwareDevelopmentandTestingApproachandChallengesinAdvancedDistributedSystems
Global Journal of Computer Science and Technology: B Cloud and Distributed Volume 14 Issue 1 Version 1.0 Year 2014 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals
Lean Software Development and Kanban
1 of 7 10.04.2013 21:30 Lean Software Development and Kanban Learning Objectives After completing this topic, you should be able to recognize the seven principles of lean software development identify
Agile Software Engineering, a proposed extension for in-house software development
Journal of Information & Communication Technology Vol. 5, No. 2, (Fall 2011) 61-73 Agile Software Engineering, a proposed extension for in-house software development Muhammad Misbahuddin * Institute of
A Software Project Management Innovation (SPM) Methodology: A Novel Method for Agile Software Development
Third 21st CAF Conference at Harvard, in Boston, USA. September 2015, Vol. 6, Nr. 1 ISSN: 2330-1236 A Software Project Management Innovation (SPM) Methodology: A vel Method for Agile Software Development
Using Distributed Scrum for Supporting Online Collaborative Learning - A Qualitative Descriptive Study of Students Perceptions
Using Distributed Scrum for Supporting Online Collaborative Learning - A Qualitative Descriptive Study of Students Perceptions Jörgen Söderback, Stefan Hrastinski, Lena-Maria Öberg Abstract One purpose
Agile Engineering Introduction of a new Management Concept
Journal of Applied Leadership and Management 4, 39-47 39 Agile Engineering Introduction of a new Management Concept Philipp Hecker ([email protected]) Artur Kolb ([email protected])
Agile to the Bone. Introduction to Agile by Pietari Kettunen
Agile to the Bone Introduction to Agile by Pietari Kettunen Agenda Problem with traditional software engineering Why Agile is the solution? Roots of Agile Values of Agile Common implementations Scrum Kanban
Continuous Delivery. Anatomy of the Deployment Pipeline (Free Chapter) by Jez Humble and David Farley
Continuous Delivery Anatomy of the Deployment Pipeline (Free Chapter) by Jez Humble and David Farley Copyright 2011 ThoughtWorks Inc. All rights reserved www.thoughtworks-studios.com Introduction Continuous
Expectations and Challenges from Scaling Agile in Mechatronics-Driven Companies A Comparative Case Study
Expectations and Challenges from Scaling Agile in Mechatronics-Driven Companies A Comparative Case Study Christian Berger, University of Gothenburg Ulrik Eklund, Malmö University Based on: C. Berger and
Distributed Agile Development. Bapiraju Nandury Product Development Manager Bangalore Development Centre
Distributed Agile Development Bapiraju Nandury Product Development Manager Bangalore Development Centre Agenda Distributed / offshore Development Agile Methods Distributed Agile Development Goals of this
On the Agile Development of Virtual Reality Systems
10 Int'l Conf. Software Eng. Research and Practice SERP'15 On the Agile Development of Virtual Reality Systems F. Mattioli 1, D. Caetano 1, A. Cardoso 1, and E. Lamounier 1 1 Faculty of Electrical Engineering,
Persona driven agile development
Persona driven agile development Build up a vision with personas, sketches and persona driven user stories Dominique Winter GreenPocket GmbH Cologne, Germany [email protected] Eva-Maria Holt
Agile Project Management: Adapting project behaviors to the software development environment
Agile Project Management: Adapting project behaviors to the software development environment with Bill Doescher, PMP, CSM PrincipalConsultant and Product Development Director Business Management Consultants
Agile & the Declaration of Interdependence: A new approach to Process Improvement www.davidconsultinggroup.com
by Michael Harris ARTICLE There has been much said and written about the mythical conflict between the values and principles of the Manifesto for Agile Software Development 1 (http://agilemanifesto.org/)
Enabling Continuous Delivery by Leveraging the Deployment Pipeline
Enabling Continuous Delivery by Leveraging the Deployment Pipeline Jason Carter Principal (972) 689-6402 [email protected] Pariveda Solutions, Inc. Dallas,TX Table of Contents Matching
Agile project management is a style of project management that focuses
Chapter 1 Modernizing Project Management In This Chapter Understanding why project management needs to change Finding out about agile project management Agile project management is a style of project management
Week 3. COM1030. Requirements Elicitation techniques. 1. Researching the business background
Aims of the lecture: 1. Introduce the issue of a systems requirements. 2. Discuss problems in establishing requirements of a system. 3. Consider some practical methods of doing this. 4. Relate the material
Emergence Of Agile Software Development Methodologies: A Sri Lankan Software R & D Outlook
Emergence Of Agile Software Development Methodologies: A Sri Lankan Software R & D Outlook W.K.S.D Fernando, D.G.S.M Wijayarathne, J.S.D Fernando, M.P.L Mendis, C.D Manawadu Abstract: In software development
Testing Lifecycle: Don t be a fool, use a proper tool.
Testing Lifecycle: Don t be a fool, use a proper tool. Zdenek Grössl and Lucie Riedlova Abstract. Show historical evolution of testing and evolution of testers. Description how Testing evolved from random
Implementing Continuous Integration Testing Prepared by:
Implementing Continuous Integration Testing Prepared by: Mr Sandeep M Table of Contents 1. ABSTRACT... 2 2. INTRODUCTION TO CONTINUOUS INTEGRATION (CI)... 3 3. CI FOR AGILE METHODOLOGY... 4 4. WORK FLOW...
PROJECT RISK MANAGEMENT MODEL BASED ON PRINCE2 AND SCRUM FRAMEWORKS
PROJECT RISK MANAGEMENT MODEL BASED ON PRINCE2 AND SCRUM FRAMEWORKS Martin Tomanek and Jan Juricek Department of Systems Analysis, University of Economics, Prague, Czech Republic ABSTRACT There is a lack
INF5120 Modellbasert Systemutvikling
INF5120 Modellbasert Systemutvikling Forelesning 17.03.2005 Agile Methods & Architecture QVT ATL, MOF2Txt Arne-Jørgen Berre 1 INF5120 - Forelesninger - 2005 M: MDA, T: Eclipse, IBM tool, C: COMET, U: U
Outline. Lecture 13: Web Usability. Top Ten Web Design Mistakes. Web Usability Principles Usability Evaluations
Lecture 13: Web Usability Outline Web Usability Principles Usability Evaluations Wendy Liu CSC309F Fall 2007 1 2 What Makes Web Application Development Hard? Target audience can be difficult to define
Agile Development for Application Security Managers
Agile Development for Application Security Managers www.quotium.com When examining the agile development methodology many organizations are uncertain whether it is possible to introduce application security
Comparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations
International Journal of Recent Research and Review, Vol. VI, June 2013 Comparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations Uma Kumari 1, Abhay Upadhyaya
The New Customer Experience Manifesto. How to Create a Customer Experience Board
The New Customer Experience Manifesto How to Create a Customer Experience Board How to Create a Customer Experience Board If you agree delivering superior customer experience is vital to your business,
Continuous integration End of the big bang integration era
Continuous integration End of the big bang integration era Patrick Laurent Partner Technology & Enterprise Applications Deloitte Mario Deserranno Manager Technology & Enterprise Applications Deloitte The
Multi-Dimensional Success Factors of Agile Software Development Projects
Multi-Dimensional Success Factors of Agile Software Development Projects Nagy Ramadan Darwish Department of Computers and Information Sciences Institute of Statistical Studies and Research Cairo University
Test Driven Development Part III: Continuous Integration Venkat Subramaniam [email protected] http://www.agiledeveloper.com/download.
Test Driven Development Part III: Continuous Integration Venkat Subramaniam [email protected] http://www.agiledeveloper.com/download.aspx Abstract In this final part of the three part series on
(Refer Slide Time: 01:52)
Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This
Alliance Scorecarding and Performance Management at TechCo. A Vantage Partners Case Study
Alliance Scorecarding and Performance Management at TechCo A Vantage Partners Case Study With the assistance of Vantage Partners, TechCo, a microelectronics company based in California, developed and implemented
Identifying Friction between Large-scale Agile Software Development and Plan-based Business Processes
Identifying Friction between Large-scale Agile Software Development and Plan-based Business Processes Master of Science Thesis in the Programme Software Engineering and Technology TOBIAS ALTEHED ROBIN
Agile Software Development. Mohsen Afsharchi
Agile Software Development Mohsen Afsharchi I. Agile Software Development Agile software development is a group of software development methods based on iterative and incremental development, where requirements
The Deployment Pipeline
The Deployment Pipeline Dan Mikita [email protected] Gerald DeHondt [email protected] School of Computing and Information Systems, Grand Valley State University Allendale, MI 49401 USA George S. Nezlek
Agile Software Development Approaches and Their History. Volkan Günal
Agile Software Development Approaches and Their History Volkan Günal August 3, 2012 2 ABSTRACT Author: Günal, Volkan Enterprise Software Engineering 2012: Agile Software Development (Seminar) With the
the team level and is characterized by self organizing, cross functional teams doing iterative development in what are called Sprints.
Introduction We can t solve problems by using the same kind of thinking we used when we created them. Albert Einstein One of the goals of this book is to give you a better perspective on Lean and Agile
Becoming Agile: a getting started guide for Agile management in Marketing and their partners in IT, Sales, Customer Service and other business teams.
Becoming Agile: a getting started guide for Agile management in Marketing and their partners in IT, Sales, Customer Service and other business teams. Agile for Business www.agilefluent.com Summary The
Driving Your Business Forward with Application Life-cycle Management (ALM)
Driving Your Business Forward with Application Life-cycle Management (ALM) Published: August 2007 Executive Summary Business and technology executives, including CTOs, CIOs, and IT managers, are being
Modern practices 2.3.2015 02.03.2015 TIE-21100/21106 1
Modern practices 2.3.2015 1 Today s lecture Learn what some modern SW engineering topics are about A peek to some research topic of our department 2 3 4 5 6 How the lectures continue? 02.03 Modern practices
Scrum and Agile methods The real world
Scrum and Agile methods The real world Claus Nyhus Christensen [email protected] Atira About me Master in CS from AAU 2001 2001-2004: Worked at Trifork as a kernel developer of a Java EE server 2004-2007: Worked
C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering
C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering Education & Training, pp. 16-25, New Orleans, Lousiana, USA,
Comparing Agile XP and Waterfall Software Development Processes in two Start-up Companies
Comparing Agile XP and Waterfall Software Development Processes in two Start-up Companies Master of Science Thesis in the Programme Software Engineering and Technology JENNIFER DORETTE J. Chalmers University
Getting Started with Kanban Paul Klipp
Getting Started with Kanban Paul Klipp kanbanery 2 Contents 3/ Getting Started with Kanban 4/ What is Kanban? 7/ Using Kanban Does kanban apply to me? How can it help me? What will I have to change? 10/
The Business Impact of the Cloud. According to 460 Senior Financial Decision-Makers
The Business Impact of the Cloud According to 460 Senior Financial Decision-Makers March 2012 Contents Summary of key findings 4 Finance decision-makers have a high awareness of cloud computing 4 The majority
BI Dashboards the Agile Way
BI Dashboards the Agile Way Paul DeSarra Paul DeSarra is Inergex practice director for business intelligence and data warehousing. He has 15 years of BI strategy, development, and management experience
Example Material Change Management
Assessing Size and Complexity of Change - Overview Complex P R O C E S S Many processes Cross functional Critical processes Significant change P E O P L E Complex Many people New way of work Different
Transcript - Episode 2: When Corporate Culture Threatens Data Security
Transcript - Episode 2: When Corporate Culture Threatens Data Security Guest: Phil Huggins, Vice President, Stroz Friedberg Welcome to Episode 2 of the Business of Truth podcast by Stroz Friedberg, "When
ECSS Standard Compliant Agile Software Development
ECSS Standard Compliant Agile Software Development [An Industrial Case Study] Ehsan Ahmad Bilal Raza, Robert Feldt Department of Computer Blekinge Institute of Science and Engineering Technology Air University
Requirements Engineering: Elicitation Techniques
2008:PR003 Requirements Engineering: Elicitation Techniques Sai Ganesh. Gunda Source:http://www.marcocioffi.com/archives/2005/04/requirements-engineering/ MASTER S THESIS Software Engineering, 2008 Department
Visualization of Software Quality Trends
Visualization of Software Quality Trends Master of Science Thesis in Computer Science and Engineering NARJIS HACHILIF BEHNOUSH PEJHANMANESH Chalmers University of Technology Department of Computer Science
