Finally, expectations are a hopelessly vague set of fuzzy requirements that defy documentation. However, it is our experience that expectations are a related set of specific requirements that can be analysed and modelled. It's just that data flow and data model and other system-orientated techniques do not capture all the requirements for a business system. Techniques such as use case, OOA and OOD diagrams, data flows and data models were designed for and, when used properly, are capable of documenting these. In addition, visual development environments such as Visual Basic, Powerbuilder, Delphi and so on can also be used to capture these requirements through the use of prototypes and early working versions.
Functional requirements are what the client wants.
Quality requirements are often confused with functional requirements but cannot be modelled using standard systems modelling techniques. Quality requirements describe how well the functional requirements must be developed . Conformance to deadlines, costs, technology platform, staffing, organisational policy and legal impact are typical constraints that are requirements in projects. Constraints have a major impact on the capability for a project to deliver functional and quality requirements. Constraints are relatively easy to model and should be documented separately to functional and quality requirements.