Before the Industrial Revolution, most goods were produced by hand by a single person. Master craftsmen labored over their work, producing a finished product they could be accountable for and proud of.
Mass-production led to the assembly line, in which each person was assigned a step, and their job was to do that step over and over again with the result of many finished products, the reason a car can be built in a single automobile factory assembly line every 20 minutes.
Although it produces a very high output, this causes a much lower sense of accomplishment for the employee – when a worker does one task over and over, they view the result as less worthy than the craftsmen who completed every step involved and thus were responsible for the entire, single object.
There is a product development framework that combines the benefits of these two work processes: a high-quality product, produced efficiently, by a team who takes accountability and pride in their work. This process is called Scrum. Our web software development team has been using Scrum for close to two years, and we’re thrilled with the results. Scrum allows us to constantly improve and communicate as a cohesive team. This has allowed us to build more advanced sites and web applications in a shorter period of time.
Scrum: the Beginnings
Scrum as we use it today began at a company called Advanced Development Methods by Ken Schwaber and Jeff Sutherland in the early 90s. Used by companies like IBM and Google, Scrum has increased total productivity by nearly 1,200 percent. Despite its technical background however, Scrum has manifested itself into a variety of workflows from journalism to education to building schools in Africa – Scrum accelerates human effort, no matter what the effort is.
Our web development team is an office of ten, so Scrum for JTech cannot be pure, which is fine because a big part of Scrum is its ability to adapt to the way your team needs it. We had to try and adapt the philosophies illustrated in Sutherland’s Book to discover for ourselves what would and wouldn’t work for us. However, when we adopted the process, it immediately felt natural. This is because Scrum’s integration of goal-setting, team accountability and celebration matches the rhythm of human instinct – our need to strive toward an obtainable goal instead of working one long monotonous assembly line.
Elements of Scrum
Sprints are work cycles. We work in a three week Sprint for larger website projects in parallel with one-week Sprints for smaller, ongoing work orders.
Stories are the way projects are divvied up into small, consumable pieces. Each story is assigned to a team member and moves through a series of columns on a Scrum board: To Do, In Progress, Team Review, Owner Review and Done.
Stand up is one of five meetings that drive a Sprint. This particular meeting is less than 15 minutes long, occurs at 9:00AM every morning and is a time for each team member to discuss a) what they are working on and b) what roadblocks are preventing them from moving a story across the board.
Everyone on a Scrum team is a team member, except the Scrum Master, who runs the Scrum board, drives meetings and ensures the Sprints are completed on time, and the Product Owner. The Product Owner is the person that created the project and in the best position to understand what the client wants; everything must be approved by them before it is considered Done.
The Sprint Backlog meeting is used to prioritize all stories and prepare them for the upcoming Sprint.
The Sprint Planning meeting involves the entire team – we choose which stories to take on during the three and one-week Sprints and to who to assign them, and vote on how long they may take. Voting is based on a Fibonacci sequence, with the numbers representing a relative gauge of work involved.
Sprint Review is a time to review all of the work we’ve accomplished within the recently completed Sprint. Clients are invited to participate in this review as we demo the new website or web app, walking them through all of its features.
The Retrospective is when the team sits down and discusses what went right, what could have gone better and what goals can be set for the next Sprint.
Scrum at a Development Firm
Since we provide so many different services, Scrum has played a huge role in unifying the departments into one cohesive team. It has sped up our process, allowing us to take on more work, resolve project obstacles and to complete web development projects faster. Although we produce more, our projects are ever increasingly more refined. So, here are the ways in which we’ve taken the elements of Scrum that were designed for Silicon Valley-sized corporations and applied them to our business in Downtown Bozeman, Montana.
Our Scrum software, called Jira, documents and helps keep a high level of productivity among a team. The Scrum board keeps track of all Stories, to whom they’re assigned, helps us compare one sprint to another, and even maps our progress visually. It makes it easy to see how well we’re doing at the moment and over time.
Because we have so many departments under one roof – design, development, marketing and copywriting – the Stand Up meeting is a time for cross-departmental communication. No one is working in a metaphorical (or literal) cubicle because although stories are assigned to a single member, we are all equally responsible for completing all stories, ensuring team-wide inclusion. Because of this, designers are involved with marketing plans, developers read copy and writers give feedback on art, creating a holistically-managed assembly line.
Team members need to see their efforts reflected in the objects they’ve created. Much as a chef would anticipate a restaurant review or a painter would relish their own art show, we as a team enjoy showing the website we’ve built to the client for the first time, and discussing its intricacies, which is why Sprint Reviews and Retrospectives are so effective.
Unlike the assembly line worker who feels no personal connection to the car they’ve produced since their only job was to affix the bumper, in Scrum, even if the homepage of a site was assigned to a single team member, we’ve all worked on it collectively.
Scrum allows us to produce high-quality work, faster. It encourages cohesiveness among our various departments and makes it easier for us to identify issues, fostering continuous improvement that sustains and drives our process. Most notably though, it allows us to design advanced websites for our customers built for excellent performance of which we can be proud.
In short, whether you’re building schools in a third world country, teaching a classroom full of elementary students, or building websites, Scrum is highly effective because it matches many of the instincts that drive human nature; as Sutherland put it in his book, “Happiness is not complacent. It is a process, not a result.”
You may also like to learn about Agile Development.