In order to make all of the practices consistent, Development
first needed to define and document the existing processes. Deanne chose to
start with one of the most core processes for Development – the Software Development
Life Cycle (SDLC). The SDLC is a map of what each project goes through starting
with the request sent by an agency and ending with implementation in a
production environment. Creating this baseline definition of the SDLC highlighted
even more how inconsistent practices were, not only across the different
development teams, but even within each
of the teams.
In July, a small group from Development met with Lean
practitioners from Daktronics, USD, and the Black Hills Corporation to gain
more insight into the Lean process improvement and how each entity had adopted
Lean into their organizations.
Lean is a process improvement system that was developed
originally by Toyota. While Lean first appeared in automotive factories, the
software development industry has been quickly adopting Lean methodologies. The
goal of Lean is to provide what is
needed when it is needed to the
customer with minimal waste. Using Lean tools when analyzing processes can help
identify weaknesses and wastes. Lean practices encourage asking the question
“Why?” repeatedly when performing analyses. In this way, Lean does not blame
people for mistakes, but instead identifies what failures in the process
allowed the mistakes to happen in the first place so that the process can be
improved.
In August, 2016, Ally Shepardson and Becky Degen came to
Pierre to teach a one-day Lean introductory course to BIT leadership and those
interested in learning more about Lean.
BIT Development took part in their first Lean kaizen event
facilitated by Ally Shepardson in September. Kaizen is the Japanese word for
“continuous improvement” and a kaizen event is a short, focused effort to
improve a specific process within the scope of the participants. After going
through and vetting a few possible process improvement ideas, the team chose to
focus the kaizen
event on the Initial Estimate process.
When an agency has an I/T need, a project proposal is
submitted to BIT Development through the IT Priorities system. That agency’s
Development manager then reviews the request and assigns someone to gather more
information about the project and provide an initial estimate. The accuracy of
an initial estimate affects the agency’s budgeting, the project’s funding and
timeline, and Development managers’ resource planning. The kaizen group
included BIT Development managers, software engineers, and agency personnel.
In October, Deanne was given funding for BIT Development to
learn more about and explore Lean from the Legislative Research Council.
ReEngine, a Six Sigma consultant company, was hired to help Development improve
their processes.
The ReEngine consultants came to Pierre and performed an
intensive week-long training with BIT Development managers, a few volunteer software
engineers, and three agency representatives from the Department of Revenue.
During this training, the consultants helped Development build a Throughput
Operating Strategy (TOS) and identify key tools that will help reach the
division’s goals. ReEngine takes an approach to process improvement by
combining Lean with Six Sigma, a method that focuses on statistics and attempts
to reduce variation in order to increase quality, morale, and performance. In
the following months, ReEngine worked with Development to tackle three additional
Lean projects.
The first project with ReEngine, which started at the
beginning of November 2016, was to create a Takt
Board. A Takt Board provides visibility of all of the projects that
Development is working on and what phase of the SDLC each project is in. This
interactive visual provides managers with insight into their projects’ progression,
anticipate when projects will be completed,
plan when to introduce new projects into the flow, and recognize when issues
arise that are preventing projects from progressing through the SDLC.
At Ally's suggestion, BIT Development started a Lean Book
Club in also in November. The first book the group tackled was Creating A
Lean Culture by David Mann. The group meets every other week to discuss a
chapter and incorporate work on action items taken from the book club
discussion. "Action items" are ideas for improvement that can be
acted on right away.
Between projects, ReEngine assisted Development with
creating Value Stream Maps for all of the SDLC phases. Value Stream Mapping is
the process of breaking apart each step in an SDLC phase and examining it to
determine if that step adds value, enables value, or does not add value, and an estimate of how long it takes to complete
that step. The purpose of the exercise was to determine if the time spent on a
step is equal to the resulting value and to recognize where waste may be
occurring.
In January 2017, the second project with ReEngine, centered on Requirements Gathering, embarked. As the group delved into this event, they realized that every team was collecting requirements for a project entirely different which caused the event’s scope to become complicated and bloated. Thus, the group was told that a common, consistent, uniform process that every Development team will use should be established. The group switched focus to incorporating Microsoft’s Team Foundation Server (TFS) and how to use that system to input and track requirements. Using TFS, requirements for a project are entered directly into an electronic backlog as work items, which are then prioritized and broken down into tasks. TFS allows the project team to visualize the work in progress and provides insight to managers and agency stakeholders to a project’s transition through the SDLC.
Sarah Bachman participated in the Requirements Gathering event
and said of the experience:
“There were a lot of obstacles and
communication stumbling blocks but I thoroughly enjoyed every second of the kaizen.
It was an amazing experience with a great group of people who don’t shy away
from complex problems or hard work. I am very happy with what we accomplished
and proud to have been a part of it.”
The final project with ReEngine, center around Resource
Sharing, which began in March of 2017, attempted to tackle a larger issue with
Development’s culture. Too often, agencies have a narrowed view of what Development can
accomplish for them. This skewed perception is inherited from
years of only working with their designated Development Team’s resources. In
order for us to truly offer the best products possible, we would like all of
the agencies to have access to all of the skills available across development
teams so that we can assure that every project has the best resources possible
dedicated to its success.
The Resource Sharing kaizen focused on the process of
sharing resources across teams and how to assure that teams and managers have
an open and comfortable flow of people and skills as needed. “It was the best
meeting I’ve ever attended. We got a lot of work done and had a great time!”
Alan Coots said of the event.
In order to carry on Development’s Continuous Improvement
efforts, three new positions were added to the repertoire – a Continuous
Improvement Facilitator, Continuous Improvement Project Operations, and Data Metrics
and Analysis .
The focus of these positions is to spearhead future opportunities for change,
plan and execute continuous improvement events, help managers, developers and
analysts alike try to accomplish more with less effort, and capture and utilize
consistent metrics throughout Development. These new positions will help
increase everyone in BIT Development’s knowledge of Lean by offering small introductory
Lean trainings, scheduling additional Book Clubs for those who are interested,
and offering other Software Engineers the opportunity to participate in and run
kaizen events.
Going forward, Development is planning on applying Lean
tools and methodologies to the SDLC and other internal processes to streamline
them and help employees do more work with less effort. Over time, every process
will be revisited to ensure we are continually improving to keep up with
changing needs, technologies, and best industry practices.
Deanne Booth with
Alfredo Mycue and David Johnson of ReEngine.
Aske Whitebird,
Development’s Continuous Improvement Project Manager, working with the Resource Sharing kaizen group to map out their
sharing process.
