
Participants and Roles
- developing a software system requires the collaboration of many people with different backgrounds and interests:
- the client orders and pays for the system
- the developers construct the system
- the project manager plans and budgets the project and coordinates the developers and the client
- the end users are supported by the system
- we refer to all the persons involved in the project as participants
- we refer to a set of responsibilities in the project or the system as a role
- a role is associated with a set of tasks and is assigned to a participant, the same participant can fulfill multiple roles
Systems & models
- we use the term system as a collection of interconnected parts
- modeling is a way to deal with complexity by ignoring irrelevant details
- we use the term model to refer to any abstraction of the system
- a development project is itself a system that can be modeled
- the project schedule, its budget, and its planned deadlines are models of the development project
Work products
- a work product is an artifact that is produced during the development, such as a document or a piece of software for other developers or for the client
- we refer to a work product for the project’s internal consumption as an internal work product
- we refer to a work product that must be delivered to a client as a deliverable
- deliverables are generally defined prior to the start of the project and specified by a contract binding the developers with the client
Activities, Tasks, and Resources
activity