Lesson 4 | Project constraints |
Objective | Development, selection, and implementation of a software solution. |
Identify Project Constraints
Identify the constraints affecting the development, selection, and implementation of a software solution. No project has the luxury of unlimited resources. For example, delivery schedules and budgets constrain the time and
money allotted for a project. But constraints may come in other forms as well.
Types of Constraints and their effects
Each type of constraint can affect the development process in a different way. For example, poor user involvement can hinder the quality and speed of the project.
Technology, the skills and experience of the participants, the tools and programming resources, as well as legal, political, and organizational constraints all influence the progress of a project in unique ways. In short, a constraint restricts your options in one or more phases of the project. This in turn causes other elements of your models to have to compensate for this limitation.
To address a constraint:
- Identify the phase(s) of the project where a constraint restricts your options.
- Identify the work products/models affected by the constraint.
- Adjust the model(s) to compensate for the constraint.
For example:
Constraint |
Phase affected |
Affected Models |
Response time < 3 seconds |
Architectural analysis |
Performance criteria |
Law requires a printed certificate |
Project initiation | Problem Analysis |
Use Cases | Object Model |
Mandated class libraries |
Construction |
Object Model |
Team inexperience with OO |
Project initiation |
Team Training |
Must use 100% pure Java |
Architectural analysis
Object Design |
Language Constraint
Object Model |
Constraints will appear throughout the project, particularly at project initiation.
It is valuable to catalog the constraints as they come up. As the project progresses, keep reviewing your constraint list to be sure that you have addressed each limitation in your models.
Project Constraints - Exercise
Click the Exercise link below to identify whether selected user statements help you identify project context, scope, or constraints.
Project Constraints - Exercise