Developers work with the Automated Test system, showing the green status light.
Photo credit: Sielox
Las Vegas, NV (September 24, 2007) â€“ Software development at access control leader Sielox, LLC. has undergone a revolution with the implementation of the Agile development process. Agile is a software development methodology focused on the delivery of working software. It incorporates a set of principles, practices and processes that allows developers to improve quality, while responding promptly to changing market needs. A conceptual framework for software engineering, Agile promotes development iterations throughout the life-cycle of the project.
"Sielox began using some of these practices last fall on its premier access control solution, Pinnacle," said Jim Ewin, Software Development Manager, Sielox. "The first step was to invest in equipment and time to implement an automated test setup. In early October 2006, the automated test machine ran for the first time. The result was 22 tests run, and all passed. Weâ€™ve had eighty software builds since then and the test count is now over 4000. Each software build must pass every automated test, before going to the Quality Assurance team for further testing."
The Agile method software is developed in short time frames, called iterations. Each iteration is a small software project of its own, including planning, requirements analysis, design, coding, testing and documentation. The entire Product Team participates in each planned software change. This includes Product Management, Quality Assurance, Software Engineering and Technical Support. A first determination is made to clarify which tests the change must pass before it can be called complete. The entire team must agree to well defined use cases and acceptance criteria. All prior tests must pass as well.
"We deliver changes every two weeks," said Ewin. "We commit to a goal for that period of time, and then set out to meet it. The delivery must be a working feature that we can demonstrate to the entire company, without breaking any prior functionality. We donâ€™t always meet the goal we set, but our estimating skills are improving, and our results are becoming more predictable."
The current automated test suite has already produced significant results for Sielox. The system has provided an early detection of problems, and tests for new features have uncovered existing software issues that they were able to address promptly.
"On the wall over the automated test machine, we have a light," said Ewin. "If all the automated tests have passed, the light is green. It is a visible sign to all who walk by, showing our dedication to improving the quality of our software. The development team works very hard to keep that light green."