Basic Issues of FSD addresses:
- Functionality: What software is supposed to do?
- External Interface: Interaction with people, system hardware and software.
- Performance: Speed, availabilty, reponse time, recovery time.
- Attributes: portability, correctness, maintability, security, etc.
- Constraints: Required standards, tools, langauges, limits of resources, operating environment.
Note: FS writer should avoid placing either design or project requirment documents in FS.
Purpose of FSD:
- Increase efficiency and co-ordination of product developemnt process.
- Simplfy and formalize information about the project.
- Accurate means of evaluating the progress of software developement.
- Minimizing rework, drifting and marginal useful work for all those who use the product.
- Improving up-front estimation of time, money to create project.
- Improve software testing, end user documents.
- release planning for the software.