It is that time of an era where everything ranging from software projects to online purchases is expected to be delivered to us swiftly. Continuous delivery is the latest fad which has made it possible to perpetually adapt software in line with user feedback, shifts in the market, and alterations to business strategy. Scrum framework comes with a powerful set of principles and practices that help perpetuate continuous deliveries in business enterprises.
In an earlier blog, we traversed the agile development methodology and its amazing benefits for project management. Scrum is one of the most popular of the agile approaches. Not only the software industries, where the origins of scrum lay, but a truckload of filmmakers, educational institutions, and a growing number of manufacturing companies have started adopting agile processes.
How can scrum framework be a big boost to the development of Drupal-based projects? Let’s find out.
Origins of Scrum
The term ‘Scrum’ has its origins in the 1985 article The New New Product Development Game by Hirotaka Takeuchi and Ikujiro Nonaka which was published in the Havard Business Review. In 1995, Jeff Sutherland and Ken Schwaber jointly presented a paper, “The Scrum Development Process” at Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) conference.
"Scrum is a power-packed set of principles and practices that assist with the project development"
Subsequently, with the formation of the Agile Alliance and the Scrum Alliance, it paved the way for the establishment of Scrum.org in 2009 for further improvements.
What is Scrum?
Scrum, an agile process, is a simple and amazingly power-packed set of principles and practices that assist teams with the project development. It lets you deliver products in short cycles, enables super feedbacks, aids in ceaseless betterments and rapid adaptation to alterations.
Scrum framework allows people to address intricate adaptive challenges and deliver top-of-the-line products while maintaining productivity and creativity.
It is the obverse of a huge set of interlaced mandatory components. It executes the scientific method of empiricism and supersedes a programmed algorithmic approach with a heuristic one to encounter volatility and solves intricate problems.
What are the basics of Scrum?
Initially, it was developed to developing and governing products. Starting in the early 1990s, it has been heavily used worldwide to:
Identify the product capabilities, technologies and the market feasibility through an extensive research
Build products and release them frequently numerous times a day
Build and sustain cloud(online, safe, on-demand) and other operational environments for product use
Sustain and revitalise products
It has been used to build almost everything ranging from embedded software and networks of interacting function to marketing and governing the operation of business enterprises.
With its reputation for iterative and incremental knowledge transfer, it is now widely used for products, services and the governance of the parent organisation.
Scrum adheres to empirical process control theory or empiricism and the three most important aspects that help in the implementation of empiricism are:
Transparency: Significant aspects of the process are defined by a standard benchmark so that it is visible to whomsoever responsible for the outcome.
Inspection: Scrum artefacts and the progress status towards the sprint goal should be assiduously inspected by skilled inspectors. Also, too much of inspection should not get in the way of the work.
Adaptation: To minimise any sort of deviation if one or more aspects of the process go beyond the scope of acceptable limits, adjustments should be done as quickly as possible.
Scrum team is composed of a Product Owner, the Development Team and a Scrum Master.
Product Owner is the sole person taking care of the management of the Product Backlog.
Development Team delivers a potentially releasable increment of a ‘Done’ product after a sprint ends.
Scrum Master helps everyone on the team understand the Scrum theory, practices, rules and values.
Values such as openness, respect, courage, commitment, and focus are assimilated and lived by the Scrum Team to build trust for everyone.
Events involved in the Scrum are time-boxed events to get the maximum duration for each of them thereby ensuring regularity.
A Sprint is a time-box event that involves one month or less during which a ‘Done’, usable, and a potentially releasable product is created. After a Sprint ends, the new one is initiated immediately.
A Sprint can be aborted by the Product Owner before the Sprint time-box is over if the Sprint Goal becomes superannuated.
Sprint planning involves the work that is needed to be performed in the Sprint. It goes to a maximum of eight hours for a one-month Sprint.
The Sprint Goal is the set of objectives framed for the Sprint which has to be met through the implementation of Product Backlog.
The Daily Scrum is held every day of the Sprint which is a 15-minute time-boxed event for the Development Team so that they can plan their work for the next 24 hours.
A Sprint Review allows the Scrum Team and the stakeholders to collaborate on what was done in the Sprint. This is done at the end of the Sprint to review the Increment and adapt the Product Backlog if required. This is at most a four-hour meeting for one-month Sprints which is lesser for shorter Sprints.
The Sprint Retrospective is a phase where the Team inspects itself and creates a plan for betterments that can be incorporated during the next Sprint. This is done after Sprint Review and involves at the most a three-hour meeting for one-month Sprints.
Artefacts defined by Scrum represent work or value and is designed to maximise transparency such that everyone is on the same page when it comes to the understanding of the artefact.
Product backlog refers to the ordered list of everything that is required to be included in the product. It happens to be the prime source of requirements for any alterations to be made to the product. The Product Owner handles the content, availability and ordering of the Product Backlog. The total work that is remaining to be done to attain a goal can be summed at any point in time. The Product Owner monitors the progress towards the goals and this information is made transparent to all stakeholders.
The Sprint Backlog is the collection of Product Backlog items chosen for the Sprint in addition to the plan of delivering the product Increment and realising the Sprint Goal. The Development Team tracks the total work remaining at least for every Daily Scrum to forecast the likelihood of attaining the Sprint Goal.
The Increment is the summation of all the Product Backlog items that are completed during a Sprint and the value of all the increments that were completed in the previous sprints.
Artefact Transparency is an important component where the decisions to optimise value and control the risks involved are made. These decisions are made on the basis of the perceived state of the artefacts.
How can Drupal development be improved with Scrum framework?
Drupal Community has been very active and has shown a huge interest in this prime source of agility in the Drupal development.
A DrupalCon Vienna session in 2017 presented a Scrum master story where they talked about how their company hacked their way into agility. With a couple of weeks of preparations, they pulled off a Hackathon of a complete week and all the non-ICT (Information and Communication Technologies) teams joined in.
Their development department formed 3 Scrum teams and started working with the Scrum framework with the help of an Agile Coach to improve their project management. Not only did the development team benefitted from the incorporation of Scrum values but the non-technical teams extracted a lot of merits as well.
With the use of hackathons, they achieved a discernible transformation from an old-fashioned department centred company to a more holistic organisation with roles instead of functions in addition to multi-disciplinary teams. Thus, agility was brought to the way they functioned in this continuously transforming digital arena.
Another session at a DrupalCon Baltimore session in 2017 delineated an agency’s transition to scrum for their project development needs. For managing a project, the agency used to sit down with the clients at the project kickoff and laid down the roadmap. This involved every other specification with a day-long discovery workshop. And then, they would wade into the design and building process.
To improve this kind of development process, the Scrum-based agile workflow was adopted. This helped them to work on several projects simultaneously without burning out developers thereby resulting in a timely and quality code.
Implementation of Scrum eliminated the logjam of a single technical lead, specified everything at the inception of a project, brought clients and developers together, and enhanced the precision of work estimations.
The highlights of Scrum adoption in their agency include:
Kept the team organised, focussed and motivated while engrossed on several projects at the same time.
Helped in managing shifting workloads without having any repercussions on project delivery or spoiling team happiness.
Involved the Product Owner in the live instances of the project development process
Scheduled BOFs (Birds of a feather session) so that attendees could share their experiences of Scrum adoption in their own teams.
The Scrum.org team wanted to redesign their website and needed a partner who can adhere to Scrum’s three most important pillars - transparency, inspection and adaptation - and follow the agile approach i.e. Scrum.
Existing website of Scrum.org was not equipped with the right technology and strategy to facilitate their growth as an organisation. A redressal was needed to build a modern and future-friendly website. Following aspects were needed to be incorporated:
Form a single, inter-organisational team that includes members within their organisation as well as the digital agency who is helping them.
Adapt and innovate while figuring out the logistics of the new style of client-agency teamwork
How did it work?
The website of Scrum.org was redesigned using Drupal 8 and it proved rewarding. Drupal 8, proved to be the perfect platform that provides the flexibility and scalability as the site continues to grow. Drupal 8’s out-of-the-box responsive web design features and seamless integrations resulted in the unified and sophisticated site.
Website traffic was an important part of their strategy. Through automated SEO features, not only search engine rankings were improved, but the administrators who are unfamiliar with SEO could still create search-engine friendly pages.
Moreover, the Scrum framework improved the efficacy of the project delivery. Through the formation of Scrum Team in both the organisations with the Product Owner residing inside Scrum.org, Scrum Master located in the digital agency, and the development team present in both the organisations, unprecedented transparency and efficiency was witnessed.
Within a month of starting the project, which is a Sprint in Scrum, Scrum.org had a working homepage.
Project management and continuous delivery are an integral part of business enterprises. Leveraging the best of Scrum framework and Drupal’s robust features, web development can be streamlined to a great extent.
We provide Drupal development services with that being our strong suit and have been doing this since our birth as a company. Drop in a mail at [email protected] for smart software delivery using Drupal and Scrum framework.