- Sajid Ajmal
- February 15, 2019
Agile Scrum Fundamentals: 6 Things You Need to Know in 2019
One of the most common questions we often hear in the agile community is, “Should we use Scrum or DevOps?” Many teams prefer using DevOps over Scrum due to its agile nature, however, they also don’t want to change their organization. Often people fall under the impression that DevOps technology is only about regulating continuous delivery. As for this discussion, we’re going to discuss the agile scrum fundamentals and how they incorporate in the DevOps processes in 2019. Before diving deep in the core concept of DevOps and agile scrum, it is important to acquire background information about each component.
Scrum is Just a Framework
Scrum is a simplified agile framework primarily used for complex product development projects on the basis of defined principles and values. The framework is mainly interested in the tasks occurring during the Sprint, and not how the ideal process within the sprint should be like.
Who Benefits from Scrum?
Agreeably, initially it was considered that scrum was only meant for engineers and developers, however, the scope and framework has well extended for other types of projects too. According to David Matthew, a Certified Scrum Master at the Incentive Technology Group, Scrum is capable of being used for any kind of complex project, however, it only works at its maximum potential when there’s a solid product being produced. Apparently, quite beneficial for modern DevOps-based enterprises as well.
The Users and Components of Scrum
In order to clearly understand Scrum, first, you need to get acquainted with the people and parts of the framework. As per Matthew, users just need to organize their thoughts or their backlog in order to get started with Scrum. You may use tools such as Trello, or even a simple whiteboard. The user might opt the roles such as a Product Owner, Scrum Master, etc., but the actual tools in hand aren’t as huge as the roles catering them. The Scrum framework initiates with a product owner who is responsible for establishing a backlog—enlisting tasks and requirements for the end product. Then comes the sprint or predetermined timeframe within which the assigned users will accomplish a set of tasks from the backlog. The users or teams will sit down at regular intervals in the daily scrum to communicate the progress updates, also termed as daily stand-ups. While each sprint will conclude with a review, a retrospective, in other words, reviewing the work and recommending ways for improvements.
DevOps: Lean Thinking, Systems Thinking and Value Stream Mapping
DevOps begins its work with systems thinking and watches the entire value stream system, and not only inquiring the development process. Furthermore, it also examines how the tasks are incorporated in the environment and delivered to the customers, upstream and downstream respectively. Do remember that systems thinking is tasked to analyze how each interconnected element in the corporate IT infrastructure affects the other. Hence, conducting a minor change in an element will display its impact in another element of the system.
Scrum Team Applying DevOps: The Composition
Apparently, a scrum team employing the DevOps processes will have a different approach of functioning as compared to the scrum teams that don’t. Besides the way of working, the composition of the team is also very different, something that learners and professionals can learn in detail through official, relevant DevOps training courses as a powerful skillset in their careers. For DevOps-based Scrum teams, the composition of the team includes different roles including marketing personnel, analysts, developers, operations staff, UI/UX designers, sys-admins, data scientists, and site reliability engineers.
DevOps Three Ways
The three ways constituting a comprehensive DevOps process is based on lean thinking and systems thinking. Do note that the scrum team adopting the DevOps three ways won’t be having any conflict with the agile framework and its values.
In DevOps, it is not uncommon to see users concerned about the flow of single Product Backlog Item, especially from the instance customer requested until he obtained the PBI in the form of working feature in the production environment. Any item that tries entering the path of PBIs in the value stream is undesirable and should be removed. Often users in the agile communities argue that flow opposes the Scrum’s Sprint due to the following factors.
- The user intends for the entire PBI be concluded for the sprint during the sprint planning, but the sprint is not a commitment.
- The user only delivers once to the production after the sprint review completion.
As we know, Scrum is all about valuable feedback. At its center, scrum acquires a sprint and daily scrum as a built-in feedback loop. Scrum users opting for the DevOps processes will acquire a different approach of implementing the feedback loops. While the teams implementing rigorous programming enables multiple feedback loops with pair programming and test-based development as the shortest feedback loops.
Maximize learning and experimentation
One of the primary aims of scrum is to facilitate continuous learning, mainly because scrum is based on empiricism—a theory stating that knowledge is derived from experience and making a decision on the basis of known facts and figures. The objective of creating sprints is to elevate the learning experience and refine the process of a team operating and providing value in the next sprint in the queue. Unfortunately, numerous enterprises or IT teams make the mistake of acknowledging a sprint as a mini-waterfall and try to fix the scope of the sprint without any margin for the team to innovate and acquire new learning. The core issue lies in the lack of a clear understanding of the scrum values and principles. Therefore, the scrum master role is established with the purpose of ensuring that the business adapts a learning culture throughout.
Although there are several further components in each of the DevOps three ways, the above information should give you a comprehensive view of the incorporation of DevOps in the agile scrum fundamentals, one of the major topics you’ll study in any DevOps certification program. Furthermore, learners should also try to stay as much updated with the latest IT tools and technologies as possible. The prospect is to learn and explore the untapped opportunities that the DevOps technology has in store for the global IT infrastructure.