One of the Agile software development methodologies, FDD or the Feature Driven Development stresses in creating shorter iterations of functionality, with each functionality catering to certain features in the website. In FDD the software designing and modeling is given due importance, apart from tracking and report options as well, making it quite ideal for deployment in corporate websites. It gives more importance to the basic aspects of development, that when neglected, pose as great problems as the development process progresses. It is a comprehension of many organizational best practice methodologies used.
It is possible to scale down and still utilize FDD in web development. With many complex and complicated development methodologies available now, FDD is quite unique from the others. That said, FDD proves to be quite helpful in the web development arena as well.
So, few of the key facets of FDD in terms of Web development are mentioned below:
- Efficiency on bigger projects: FDD proves to be very efficient on bigger and complicated business projects. The more difficult the project the more effectual if FDD is applied. FDD helps in managing the web development projects in a simpler and better way. This does not mean that if the project has a small team, say 3 - then FDD is futile. It still holds good no matter the size.
- No technology constraints: FDD is capable of being used with any technology. There are no hard and fast rules that prohibit FDD from being used with any other technology. It can be successfully applied on many web-oriented technologies as well, like ASP, PHP, JSP and the likes. It is also freer from ambiguity, if the technology used is Object Oriented, as it proves to be slightly easier to apply FDD in such cases.
- Easily adaptable: Any new process involves little bit of confusions and hardships when tried to adapt in the beginning. However, the structure of FDD is easily adaptable and uses a common sense-using approach, with respect to web development, and you would find it quite comfortable to understand and involve the whole process into your web developmental activities.
- Efficient planning and reporting functionalities: FDD provides some wonderful planning and reporting features that prove to be useful in the web development process.
- Clear-cut and conditioned: From the part of this article, mentioned How to begin web development the FDD way, it is evident that FDD is distinct and conditioned, when it comes to web development.
- Reduction of risks: FDD helps in reducing risks using shorter iterations of designing, understanding of the requirements and the system where the website is to be developed - in a clear and distinct way, thereby leading to a state where there are no ambiguities, as the needs and expectations are already understood very well.
How to begin web development the FDD way?
Whether the project is big or small or the kind of technology that the project is being contemplated to use, the first and foremost thing is to see the project from the FDD point of view. Once the web development project is seen as a set of features that need to be implemented, the greater part of the task is accomplished.
The following can be taken as the initial steps to be considered while using FDD in web development, to start the FDD way:
- Setting up a new team: Gearing a new team prepared to learn the processes involved in FDD is also required, and this proves to be not much of a challenging job as FDD is easy to understand and deploy.
- Explain the projects as a set of functions: It is always better to explain the project in terms of the functions or features that it includes. This helps realizing your requirements and removing the complexity off the project to a certain extent. Here care has to be taken that the functionalities are explained in a language that clients can understand, in order to make it more powerful, so that the importance of the functionalities sink into the clients' understanding.
- Planning of the web development as per the functionalities: Once we have recognized the needs, others fall into place. The time frame involved, the team and the technology and programming language to be used and the likes are discussed and finalized.
- Regular and periodic Status reviews: It is highly important to involve periodical status reviews with clients, in a regular way, in order to confirm if the progression of the project is being done as per the specification and expectation of the client. This also helps to curb problems and misunderstandings in the initial stage itself.
However, there are few things that do not come under the scope of FDD process, in a web development scenario. These are:
- Collection of requirements.
- Designing the interface.
- Testing and bringing the web application to work.
It is quite a proven fact that the whole of FDD process is very helpful in web development. FDD can be used as the basic component of the web development aspect, with inputs from your ideas and suggestions to provide solution to the project.