In connection with modeling languages and especially with goal-oriented modeling, a soft goal is an objective without clear-cut criteria.[1] Soft goals can represent:

  • Non-functional requirements
  • Relations between non-functional requirements

Non-functional requirements (or quality attributes, qualities, or more colloquially "-ilities") are global qualities of a software system, such as flexibility, maintainability, usability, and so forth. Such requirements are usually stated only informally; and they are often controversial (i.e. management wants a secure system but staff desires user-friendliness). They are also often difficult to validate.

Why soft?

edit

Normally a goal is a very strict and clear logical criterion. It is satisfied when all sub-goals are satisfied. But in non-functional requirements you often need more loosely defined criteria, like satisficeable or unsatisficeable. The term satisficing was first coined by Herbert Simon. Soft goals are goals that do not have a clear-cut criterion for their satisfaction: they are satisficed when there is sufficient positive and little negative evidence for this claim, while they are unsatisficeable in the opposite case.

Relations between soft goals

edit
  • Decompositions
    • AND
    • OR
  • Contributions
    • Helps (+)
    • Hurts (-)
    • Makes (++)
    • Breaks (--)
    • Unknown

References

edit
  1. ^ S-Cube Knowledge Model: Soft Goals

Further reading

edit