What is an Attribute?
Smartpedia: An Attribute is a property, indicator or particular feature of an object. Attributes are used, e.g, to define requirements or plan projects.
Attributes as Characteristics of an Object
An attribute denotes a property or characteristic of an object. As a term, the attribute is used
- in grammar to define a noun more closely,
- in art as a description of the character of a figure,
- in philosophy as an element of formal logic,
- in product development and software development, for example, in requirements management,
- in the context of software for programmes or files, and
- also in project management.
Alternative terms for the attribute include characteristic, hallmark, criterion, peculiarity, or specific.
Attributes in Requirements Management
In requirements engineering or requirements management – a core discipline in system and software development – requirements are often captured with the following attributes:
- identifier or ID. It should be unique and can contain various information such as an automatically sequential number and an associated project or program.
- a short name
- a name
- a description, alternatively with a separation between short and long description
- a description of the problem or justification
- an acceptance criterion as a measurable and verifiable condition. This attribute often expresses expected performance, response behavior, resource requirements, and so on.
- an author
a version, because requirements and associated test cases change frequently - a state. Typically, requirements know different states such as “initial”, “defined”, “scheduled”, “in realization”, “realized”, etc.
- One or more sources to clarify where the requirement comes from, which stakeholder benefits from it, which goal is achieved with it, etc.
- a statement on stability; are changes in content and scope still expected? Values such as “stable”, “firm” and “consolidated” are usually used.
- a statement on criticality
- a priority. Here the bandwidth ranges from “low”, “medium”, “high” and “critical”, through levels from 1 to 3 or from 1 to 10 or in agile procedures with absolute priority numbers, so that each individual request has an individual priority.
In addition, it is often recommended to use other attributes: Risks, typing, effort, assigned release, legal liability, customer satisfaction and customer dissatisfaction, business objects, business processes, follow-up material, responsible employees, comments, open points, relationships to other requirements or other objects of the development process, etc.
Attributes in Project Management
What applies to requirements can, of course, also apply to all other objects in the course of a development. Risks also know attributes (e.g. damage classes, expected probabilities of occurrence, extent and extent of damage). And change requests, test cases, test runs, goals as well as UML or SysML diagrams or objects. Also in project management there are numerous attributes like e.g.
- project ID, project abbreviation and project name
- project start, project duration, project end
- project budget
- project responsibility, project manager, organizational unit
- project status
- project type
- project process
- …
It is important to note that static and dynamic characteristics exist for all attributes, whether they be requirements, change requests, or projects. Example: A project knows a planned and an actual project start. Planned information is usually dynamic, i.e. it can change. A project start can be planned for 01 February and start in reality on 01 March. If the project is started, it concerns a static, no longer changeable attribute.
Advantages of Attributation
Basically the use of attributes offers some advantages:
- The understanding and the knowledge to a single object or a group of objects rises.
- The structuring and comparability of objects is promoted.
- The search for concrete characteristics of individual objects is made possible.
- The evaluation of properties is supported.
For these advantages to be effective, organisations should specify a common set of attributes for corresponding objects (requirements, change requests, risks, test cases, diagrams, etc.) and determine how mandatory the recording of characteristics per object is.
In requirements management, there are a number of specialized software solutions that allow both the free definition of own attributes or attribute types, the easy capture of attributes using simple input masks and the evaluation via database queries. This enables companies to trace and verify the information they need. This is called traceability.
Here you will find additional information from our Smartpedia section: