Types of Software Specifications
Developers often confuse the various types of software specifications. There are many types of software specifications, but here I'm focusing on describing the most common types: requirements, functional, and design.
- Requirements Specification: Requirements Specifications are used to define the problem(s) that you need to solve. In other words, they define the "what". Requirements Specifications may contain both qualitative requirements (the software should be easy to use) and quantitive requirements (response time must be less than 2 seconds). They often contain high-level Use Cases.
- Functional Specification: Functional Specifications define how you are going to resolve the Requirements Specifications. In other words, they define the "how". If a user interface is involved, they usually contain screenshots and descriptions of how the screens work. We (Elegance Technologies) created Lucid Spec to help write Functional Specifications.
- Design Specification: Design Specifications define how you are going to implement the Functional Specifications. In other words, they also define the "how", but the "how" is related to software implementation issues. This software specification usually contains things like UML class diagrams, interaction diagrams, database design diagrams, etc.

0 Comments:
Post a Comment
Links to this post:
Create a Link
<< Home