This paper we present a method for integrating information assurance requirements into agile and rapid technology development. This integrated approach advocates involvement of the information assurance expert at the onset of system development and design—building requirements in proactively. The focus is on collaboration, continuous monitoring, and leveraging automated testing for formal validation.
Models can help you explore existing code and discuss new designs; clarify users’ needs and define tests; and be used to generate some of the code. This article shows how working with models will help you in an agile project.
To successfully create the significant breakthroughs in your development effectiveness that are possible with agile, it has to be aligned with why you want to do it in the first place and what you need to achieve from it. The authors of A Practical Approach to Large-Scale Agile Development explain how to tune agile to your business objectives.
This article discusses the differences between quality assurance and software testing. If the developer uses techniques like TDD to prove that his program can work, you shouldn’t ask him to prove the opposite. This article advocates having a separate software testing function, even if you are using an Agile software development approach like Scrum.
In an Agile world, when should performance testing be conducted? Every sprint or only at the end of the product development, as it used to be conducted in the Waterfall model? How do we test for performance within sprint after sprint? How efficient is it to conduct performance testing at the end of the product development?
The DoD is facing challenges to rapidly deploy operational capabilities in complex environments where bridging legacy and new technologies are key to success. The challenges arise as a result of diminishing budgets and the need for new capabilities to operate in war environments, including the global war on terrorism. To balance this imperative need with rapid response, we found that our developed Agile life-cycle paradigm was a viable solution to meet challenges brought about by changes in the environment. This article demonstrates how a DoD program used an Agile approach, throughout every phase of the program’s life cycle, to rapidly field capabilities.
One of the core aspects of Scrum is self-organizing teams that deliver software in small iterations called sprints. For those that try to move from traditional development models to Agile, one of the major challenges is forming self-organizing teams. The sprint teams are truly cross-functional teams that choose the best way to do their work without being directed by others from outside. How does such a team differ from the project teams in the traditional models? Are there any design principles or theoretical frameworks that can help us go about forming such teams?