Adopting Agile/Iterative Software Development
Iterative Software Development
Choosing An Approach To Agile/Iterative Software Development
Adopting AGILE In Your SDLC Shop
The iterDev.com Iterative Development Process Model is based on the Software Development Life Cycle, known as the SDLC.
The primary focus of the iterDev Iterative Development Process Model is the interior SDLC development stages: Requirements Analysis, Design, Development, Integration & Test and Implementation. The task of completing a good faith attempt at each of these tasks, in order, is referred to as a Project Milestone Cycle where the major resource allocation is devoted to one or more Iterative Development Cycles. Other activities, or cycles, are specified to ensure coverage of all project deliverables, artifacts and metrics.
It is important to note, up front, that the iterDev Iterative Development Process is not a replacement for any other software development methodology. Instead, it is a set of mechanics and process automation tools used to magnify the effort of your team members in meeting requirements of their current methodology.
This process model is a set of tactics, employed to enhance the probability of success with your chosen strategy: Design, Methodology and Development Technology Stack. In military terms, you would not undertake any mission without rehearsing every step of a successful execution. The cost of failure is unacceptably high.
Developing software for the global internet or your own company intranet is just such a mission. The cost of failure is commercially and professionally too high. You can minimize the probability of failure by maximizing your ability to execute and generate your deliverables. That is the purpose of this model.
The model assumes that management has committed to producing a software project: meaning the Initiation, System Concept Development and Planning stages have been completed. Further, this model does not address directly the post development stages of Operations & Maintenance or Disposition. From a management standpoint, this is a budgeted project and each day costs are being incurred. The goal, from this point forward, is to produce and document as much working software functionality as possible to meet the perceived need that prompted the project.
The view of the iterDev Iterative Development Process Model is that successful projects are the result of at least three, and almost always more than three, iterative development cycles. Those minimal three development iterations are:
More to the point, unless your software development organization has produced workable software with one or two iterations through the SDLC development stages, it is very beneficial to ensure that the repetition of SDLC development stages occur as efficiently as possible. The benefits of taking this approach are clear:
Last but not least, when final delivery approaches, the Project Delivery System will be practiced and reliable instead of brittle and failure prone.
In short, this means:
The iterDev Iterative Development Process Model includes the tasks that virtually all development methodologies must provide for:
The iterDev Iterative Development Process Model is a blueprint for specifying and automating each of the critical path tasks required to build and deploy a software project release. The result is an automated Project Delivery System that will encapsulate your unique build requirements and ensure your software project produces a usable deliverable, quickly and reliably.
The sections of this presentation are structured to be read once, sequentially, and then as needed in any order. The navigation links to the left and section descriptions below appear on every page.
To continue now with the iterDev.com Iterative Development Process, click each of the links to on the left in order. A brief description of each document's contents is below. The 'Home' link returns you to the home page.
Foreword - iterDev.com Home page and Author's Foreword to the Iterative Software Development web site.
Introduction - iterDev.com Introduction, Background and The Iterative Development Force Multiplier.
Iterative Process Model - The Iterative Development Process Model, its place in the Software Development Lifecycle and expected benefits.
Deliverable Prototype - The Deliverable Prototype, its down stream Advantages for projects and the Work Product that delivers them.
Development Process - The Iterative Development Process, Activities and their mapping to SDLC and a closer look at the core Iterative Development Cycle.
Project Delivery System - The Project Delivery System: Activities, Activity Specifications and how they combine to produce Managed Project Releases.
Epilog - A few final thoughts. A request for comments. What I hope to achieve with this site.