Feature Driven Development
Feature-driven design (FDD) is an iterative and incremental software development process that follows the principles of the agile manifesto. The idea is to develop the high-level features, scope and domain object model and then use that to plan, design, develop and test the specific requirements and tasks based on the overarching feature that they belong to.
Benefits / Drawbacks
To see how requirements can be organized by functional area, they must be fairly well understood and so a design is created. From the design is derived a feature list at which point the iterative implementation cycles can begin. Consequently, and as with some other methods, the first two phases of the FDD process are not iterative but take place just once which narrows the iterative part of the project, and so it could be argued that the agility of the overall project is reduced.
At the same time there are some real benefits to this approach. For example, with each functional area written all at once there is less need to refactor than with a process where the same code might be repeatedly changed. Not surprisingly, less refactoring is one of the benefits of traditional development methods so in some sense FDD can be argued to combine both traditional and Agile approaches.
What Makes SpiraTeam the Best Choice for FDD Projects
When your company requires better software planning tools, there are a lot of choices in the marketplace. However, if you want the best in agile software development with there is only one solution.
SpiraTeam® is a complete software project management system in one package, that manages your project's requirements, releases, iterations, tasks and bugs/issues. Designed specifically to support agile methodologies such as FDD, Scrum, Extreme Programming (XP), DSDM and Agile Unified Process (AUP) it allows teams to manage all their information in one environment.
|Summary Requirement||Epic||Epic||Feature Group|
|Requirement||User Story||Backlog Item||Requirement|
SpiraTeam® provides reporting dashboards of key project quality and progress indicators - requirements test coverage, task progress, project velocity, as well as top risk and issues – in one consolidated view that is tailor-made for agile software development methodologies as well as supporting your legacy/hybrid waterfall projects. The top reasons that our customers choose SpiraTeam® over other solutions are:
- It is a complete solution that includes requirements management, release planning, iteration planning, task estimation and defect tracking all fully integrated from day one.
- Highly intuitive web application that provides a complete picture of a project’s status and health yet requires only a web-browser.
- Methodology Agnostic – SpiraTeam® can be used equally web for any agile software development methodology – including Scrum, AUP, XP, DSDM
- Ability to leverage your existing technology investments. SpiraTeam® integrates with many third-party defect-management systems and software configuration management (SCM) systems.
In addition, we provide superb technical support that ensures that enquiries and questions are dealt with in a timely and professional manner.
How do I Get Started?
To learn more about SpiraTeam and how it can improve your agile software development processes please: