Traditionally, HIC has developed software applications using the waterfall model, a sequential development process. While this methodology works, there are a few downfalls. The waterfall approach does not accommodate change very well. Requirements are defined upfront and are not expected to change throughout the software development life cycle. Using this approach, if a partner requests a change during the testing phase, it would require a great deal of time and effort to accommodate a major change. These changes are not discovered until the application has been completely developed which may cause copious amounts of recoding and retesting. Another issue HIC faced was difficulty in gauging development progress. A project manager may ask a developer how work is progressing and he/she may reply with a vague answer. Accountability was lacking. HIC needed to implement a more flexible, collaborative, and reliable methodology.
In 2011-2012, HIC slowly moved more towards a "deliverables" approach; delivering small pieces of functionality to our partners sooner. A project is broken down into modules or portions of functionality so HIC can develop and deliver these modules incrementally. This helps immensely in getting partner buy-in and getting their final acceptance of the application to launch to production. Over the past year and a half, HIC has adopted an agile approach on a few projects and have seen great success. Agile project management is an iterative and incremental method of managing the design and build activities for engineering, information technology, and new product or service development projects in a highly flexible and interactive manner.1 Specifically, we have adopted the scrum framework to encourage creativity and enable teams to respond to feedback and change, and to build exactly and only what is needed.2
Work is broken down into tasks that can be completed in two days or less and with daily scrums, progress is transparent to all project team members. The daily scrums encourage collaboration and builds team synergy and increased accountability among the team. The HIC agile project team has also reported an increase in transparency of work items and overall status of the project, clarity of tasks/responsibilities among the team, and increased partner engagement and trust. Because the tasks are better defined, we are able to produce a more quality focused application. All of these factors are key to a successful project.
One key agency that has embraced the agile approach is the Department of Labor and Industrial Relations (DLIR) Hawaii Occupational Safety and Health Division (HIOSH). Using the agile methodology to create an elevator inspection and permitting application for HIOSH, HIC develops portions of the application in two week sprints and is able to show new features to the HIOSH team every two weeks. By incrementally demonstrating functionality to the partner, HIC has been able to successfully build partner trust and engagement.
To help educate our staff on agile concepts and practices, our project managers, partner liaisons, quality assurance analyst, and management staff participated in a three day agile training course. HIC also sent two employees to the Atlassian Summit in San Jose, CA in September to be further educated on a number of tools including Confluence, JIRA, and JIRA Agile and to help improve our ability to practice agile concepts. We have seen great improvements in our process over the years and will continue to integrate agile methods into more of our projects and expand the knowledge to the rest of our staff.