The nature of the problem. Some types of software
demand that certain aspects be analyzed particularly
rigorously. For example, control flow and state models
are likely to be more important for real-time software
than for management information software, while it
would usually be the opposite for data models.