Feature Driven Development (FDD) is one of the web application development methodologies creating shorter iterations of functionality, each one catering to certain features in the website. FDD is quite unique and affordable web development methodology compared to other complex and complicated development methodologies available now. This article explains how FDD proves to be quite helpful in the web development arena as well.
Is FDD Useful in Web Development?
FDD can be used for affordable web development. As web development covers a wide range of project types, how to apply FDD will depend on the nature of the project.
Main Aspects of FDD
The five processes which are the main aspects of FDD are:
-
Project size
-
Technology
-
People
-
What it doesn’t cover
-
A starting point
Project Size
FDD is extremely effective on large projects with complex business logic. It is not so effective on small projects with little business logic. Thus the use of elements of FDD to enforce code and design reviews is pretty hard.
Technology
Nothing in FDD dictates what technology to be used. However, the simple fact that the first process is primarily object modeling means that if you are not using an OO technology, using FDD is not going to be straight forward.
People
The key to FDD is process one, the key to process one is having a great object modeler and a great project manager. It doesn’t matter what process you use but the main need is good people. No process, including FDD will help you if you don’t have the right people.
What it Doesn’t Cover
FDD doesn’t cover every aspect of web application development. There are many aspects of a standard project that you’ll still need to manage outside of what FDD can help with. These aspects include:
-
Requirements gathering
-
Interface design
-
Testing
-
Deployment
Starting Point
Trying to implement a new process is difficult. In addition to learning the process, you also have to produce a result at the same time. An effective way to get started is to look at projects in an FDD way – that is, start to think of projects as a set of features. This approach can be used on almost any project regardless of size or technology.
Define a project as a list of features or functions
At some point, every project needs to be defined by what it does or what functionality it provides. By listing all these functions of the system, you are defining what it is you need to build to complete the project. The key is to make sure you use the same language as the client, don’t use technical terms that the client won’t understand because they won’t care if you build it. If they understand the feature, they will care about whether it has or hasn’t been built.
Plan development based on features
Once you know what you have to build, it’s a fairly straight forward task to work out the order. As some features will be dependent on others, they clearly have to be built first. Whatever the order, a development plan should be present to track your progress
Weekly project status meetings based on features completed
If you have a list what needs to be done and by when, it’s easy to then track progress and report back to the client. Its amazing how effective it is to be able to tell a client what features have been completed and what you’re currently working on.
A project manager, can find out problems much early in the piece and have a chance to deal with them before they become a major issue.
CONCLUSION
Now it’s clear that FDD can be used for affordable web development. As a process, it is easy to understand takes a common sense approach. But the qualities of FDD are not as important as whether FDD is appropriate to the type of development you do and will help you to achieve what it is you hope to gain from adopting FDD.
For more info Call Toll Free: +1-855-SYNAPSE or Contact Us at info@synapseindia.com







