Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Role: Designer

The designer role is responsible for designing a part of the system, within the constraints of the requirements, architecture, and development process for the project.
Other Relationships:Extended By: - Capsule Designer
Topics - Description - Related Information - Staffing - Further Reading

Description

The designer identifies and defines the responsibilities, operations, attributes, and relationships of design elements. The designer ensures that the design is consistent with the software architecture, and is detailed to a point where implementation can proceed.

This section provides links to additional information related to this role.

Staffing

Skills

The designer must have a solid working knowledge of:

  • system requirements
  • the architecture of the system
  • software design techniques, including object-oriented analysis and design techniques, and the Unified Modeling Language
  • technologies with which the system will be implemented
  • project guidelines on how the design relates to the implementation, including the level of detail expected in the design before implementation should proceed.
Role assignment approaches

A designer may be assigned responsibility for implementing a structural part of the system (such as a class or implementation subsystem), or a functional part of the system, such as a use-case realization or feature that crosses classes/subsystems.

It is common for a person to act as both implementer and designer, taking on the responsibilities of both roles.

It is possible for design responsibilities to be divided, such that a high level sketch of the design is the responsibility of one designer, while detailed design (such as details of operation signatures, or the identification and design of helper classes) is deferred to another designer who also acts as the implementer.

Further Reading

See the references page, in particular the references on Modeling and Unified Modeling Language, and Object Oriented Technology.