Large-scale Fully Distributed Scrum

Scrum is an agile software development framework that also conforms to the similar success story of the performance gain and hyper-productivity [3-6,7]. J. Sutherland, et al., have defined Scrum as follows[1]-

Scrum is an Agile software development process designed to add energy, focus, clarity, and transparency to project teams developing software systems.

  C. Larman and B. Vodde describe Scrum as a framework for development in which the concrete details are being added by the relevant teams and evolved iteration by iteration[8]. Scrum is a very light-weight and flexible process. It is said that, Scrum is easy to understand but hard to use, because it brings light to the weakness, rather hiding those. Being flexible in nature, Scrum always promotes the process that works by encouraging transparency and visibility. Hence, adapting Scrum as necessary, while conforming to its basic principle is the key strength of this process model. Though, initially Scrum is meant for small co-located team of 5-10 persons, it can be scaled up and used in large-scale product development context. To do so, two additional concepts are incorporated along with the traditional Scrum principles: “large-scale” and “fully distributed” Scrum. In this section, we discuss these concepts, how we can accommodate those in the flexible framework of Scrum and their realized benefits in the GSD context.

Fully Distributed Scrum(FDS) is  a variant models(( for other models , see [1, 8]) of Scrum to support GSD where Scrum teams are cross-functional with members distributed across geographies[1]. FDS as a process leverages all the inherent qualities and complexity of Scrum and at the same time, it addresses an way of scaling Scrum to Large-scale Fully Distributed Scrum(LFDS)[8] by promoting GSD. LFDS is similar to FDS along with a set of additional strategies/rules that we have seen to work in large, multisite, multi-team software development with Scrum. Among various aspects of LFDS, the few realized advantages are as follows.

  • Adaptive changes. Realizing and handling the core impediments early in the development phase, eventually results in increase in productivity. Case study in [1] also depicts a similar situation.
  • Structured Communication Framework. Through Scrum, team members can communicate clearly (although they are distributed geographically), which is an essential aspect of GSD.
  • Shared ownership. It promotes better team work, higher velocity and intuitively, eliminates various soft issues in team orientation.

Above all, LFDS is identified as the force to change the organization by making the rocks visible[2]. C. Larman and B. Vodde state that adopting LFDS in a larger product group explores the weakness of the whole setup– in the structure , process, planning and so on, which in turns, necessitate relevant changes[2]. However, empirically it is well-known that, lowering the water to make the rocks visible is the easy part of the whole change process. Hard part is to remove the rocks which require careful redesign of different aspects of GSD process model. That is way, the coordination strategies are presented later in the post to deal with the challenges of the LFDS in the context of GSD.

Continue reading “Large-scale Fully Distributed Scrum”

Distributed Agile Software Development

Motivation behind using Distributed Agile Software Development (DASD) in the context of the GSD is its realized advantages such as, hyper-productivity and significant performance improvement illustrated in the recent literatures [2-6]. The basic principle of DASD of reducing the complexity of software development and focusing on the system’s complexity, complements to the motivation of using it in the GSD. As stated in the Agile Manifesto– “Individuals and interaction over processes and tools”[1], it significantly rely on empowering the team, self-organization, collaboration and coordination through efficient communication. Hence, self-organization of the different agents involved in the GSD is an inevitable outcome from the effective installation of DASD in this context. Therefore, these attributes of DASD surely contributes in the successful implementation of the GSD.

Continue reading “Distributed Agile Software Development”

Importance of Global Software Development

Global Software Development (GSD) is increasingly becoming the norm of software development, which is facilitated by state-of-art information and communication technology (ICT), with the primary goal of rationalizing this development. Hence, it is also a tremendously growing field of research over last decades. Herbsleb and Moitra [1] have identified following imperatives that are the driving force of this field.

  • Capitalization of the talent pool and resource usage whenever needed,
  • Business advantages of the new markets, 
  • Quick formation of virtual teams to capitalize market needs, 
  • Improvement of time-to-market by utilizing “around-the-clock” development, 
  • Flexibility to capitalize on merger and acquisition opportunities globally.

Additionally, implementation GSD is difficult [1, 2, 3, 4] because of its different inherent problems. Herbsleb and Moitra outline the major dimension of problems in GSD as follows[1].

  • Strategic issues: determination of project that are disjoint architecturally, as much as possible. 
  • Cultural issues: realizing and acknowledging different cultural differences. 
  • Inadequate communication and knowledge management. 
  • Project and process management issues: synchronizing between project and product management deadlines. 
  • Technical and infrastructural issues.

Continue reading “Importance of Global Software Development”

Centripetal forces for Fully Distributed Scrum Team

Few of the main centrifugal forces of any Globally Distributed Software Engineering(GDSE) model can be mentioned as – geographical dispersion, cultural difference, lack of shared context and knowledge, communication problem, team coherence and ownership(i.e., “us-them” problem)[1-4]. Fully Distributed Scrum( FDS ) has the inherent benefits of its own process model, i.e.- ideology , artifacts and activities which apparently acts as the centripetal forces for GDSE and strives to address the challenges mentioned. The primary realized centripetal forces of FDS are discussed following.

image

Fig. 1. Centripetal Forces of FDS

 

  1. Scrum artifacts and activities, facilitating clear communication channel among the team members located in distributed geography [2-4]. Hence, the stakeholders involved in the FDS precise know what need to done and how to communicate to the respective members. Moreover, activities such as Sprint planning, Daily Scrum, Spring Retrospective brings team member together virtually under the same roof with the shared goal of team-improvement from the feedbacks of these activities[5].
  2. Small iteration of software development and potentially shippable product after every sprint is one of the major foundations of scrum, which promotes continuous feedback system running during the whole development and reduces the unnecessary overheads and prioritizes product backlogs according to the business value.
  3. Transparency and visibility. Everyone knows what is going on in the distributed software development which brings the team feeling among the team members and motivates them to be proactive.
  4. Empowering Teams, i.e. promoting team ownership and responsibility. Moreover, ideology such as, team consensus plays major role in the team ownership, as team members stop feeling “us-them” problem and become self-organizing.
  5. Cross-functionality among the team members. In order to achieve this, team members located in distributed location needs to collaborate for certain duration of time, which in turn promotes team work, knowledge sharing and bridging the cultural gap[6].

Therefore, it is evident that, FDS teams have centripetal forces that could results in high performance and hyper-productive teams. However, careful considerations of the whole model need to taken into account as Scrum is a very flexible , but abstract process model. Hence, the interpretation[7] of this centripetal forces is an important factor to achieve success.

Continue reading “Centripetal forces for Fully Distributed Scrum Team”

Design a site like this with WordPress.com
Get started