5. Case Study Two: Virtually Agile
5.2. Case Organisations
The second case study is a study of Agile software development in a virtual environment. The focus of the study is not on the organisations themselves but on the project these two organisations conducted together. Nevertheless, the differences and similarities between these two organisations with different collaboration methods and experience of Agile development influenced the project collaboration and outcomes. In this section, I will describe the project and the two organisations involved, Escapade and Carmine.
5.2.1. The Customer: Escapade
Escapade is an online retailer, located in Sydney, Australia. Escapade’s main revenue comes from its consumer sales, but in addition to the business-to-consumer transactions, Escapade also has business-to-business clients.
Escapade’s website is its primary sales outlet, created and maintained by an internal development team, but the business-to-business offering is a service rather than a product. It is an internally developed eCommerce platform, which provides business clients with employee management features.
Founded in the early 2000s, Escapade has grown to be a company of approximately eighty employees and has over 2 million Australian dollars in online sales transactions. The company consists of an IT development team, customer service department, business-to-business client department, marketing department, finance department and management team. Most members of the company work from the company office building in Sydney. The company has an internal chat tool and capabilities for online meetings, but physical presence was the prevalent method of communication.
Escapade is known for its customer service excellence and its online store. A back-end eCommerce portal has a significant role in providing this customer service. Escapade’s internal software development team is responsible for the development and maintenance of the online store and other products. For the last few years the development team of Escapade had adopted a combination of the Scrum (Schwaber 2004) and Kanban methods (Anderson 2010). The use of Agile methods in the development team has dispersed the awareness of the Agile methods throughout the employees of the organisation. Escapade business functions teams such marketing, sales and customer service teams were knowledgeable when it came to Agile development, even if the methods were not directly applied in their daily work.
The project Escapade had embarked upon when I started my study was conducted with Agile methods as well. The goal of the project was to completely redesign and redevelop the eCommerce platform product that Escapade was marketing to its business-to-business customers. The old product was based on out-dated technology and the usability of the product was not up to modern standards. Escapade’s long-term goal was to expand the business-to- business market, and in order to facilitate this expansion a new product development project was necessary. The main issue with the project was resourcing that had to be resolved: the company’s internal development team was working on a different project and was thus unavailable for reworking the eCommerce product. Escapade decided that an outside vendor was needed, as the internal resources were not sufficient. After negotiations with a few companies, Escapade’s management team selected Carmine Co. as their development vendor.
Even though the project would be outsourced to an external vendor, Escapade’s managers acknowledged that the project would also require significant allocations of time from the Escapade employees. A product owner was appointed to the project, as well as two project sponsors, who would be responsible for the project requirements and schedule monitoring. The Escapade chief technology officer (CTO) was tasked with managing the costs and high- level communications between the two organisations, whereas the product owner would be responsible for day-to- day operations. The product owner and project sponsor were also responsible for the internal communications about the project and they selected a team of employees from different departments who were familiar with the older product that was being replaced and who could help with the design and testing.
5.2.2. The Consultancy: Carmine
Carmine is a software development consultancy that provides user experience design services, prototyping of websites, and application and website development, as well as maintenance and support. Carmine’s primary offerings are software development projects carried out with an open source development framework, Ruby on Rails. The selection of the Ruby on Rails framework ties Carmine into the open source community (for software ecosystem discussion on Ruby on Rails, see for example Kabbedijk & Jansen 2011) and shapes Carmine’s brand as a software developer consultancy (Fitzgerald et al. 2006). Ruby on Rails was and still is, at the point of writing this thesis, a trendy framework used by companies such as AirBnB and eBay and the community is active and engaged (Hartl 2016). Selecting Ruby on Rails signals to potential customers that Carmine is modern, up-to-date with latest technologies and focused on visually impressive products or websites.
The company consists of over 30 people, with a mixture of managers, designers and developers. The employees of Carmine either work from home or are located on the customer’s premises. The company has no physical offices; all company interactions are conducted online via chat tools and VoIP (Voice over IP, e.g. Skype) calls.
Carmine had allocated a project manager, two developers, a user experience designer and a visual designer for the Escapade project. The Carmine project manager explained that even though there were no project manager roles prescribed in their chosen Agile methods, the project manager was needed for this project to monitor costs and ensure communication between the management of the two companies. The development team and the designers were self-sufficient when it came to the technical details of the work and product owner communication. The more senior of the two developers was also filling the role of Scrum Master in the development team meetings. The development team engaged in the project were working from several different locations. The user interface designer made several visits to the Escapade office, but worked mostly from home. The visual designer and the project manager were located in different states and one of the two developers was located in Canada for a lengthy period of time during the development. The other developer was located in Sydney and worked occasionally in the Escapade office. The solution for effective communication in this mixture of locations and time zones is discussed in a further section.