URDAD

From Wikipedia, the free encyclopedia

URDAD, the Use Case, Responsibility Driven Analysis and Design method is a methodology for technology neutral business process design. It is meant to provide an algorithmic design process for Model-driven development (MDD) in the spirit of the Model-Driven Architecture (MDA).

Contents

[edit] Core Principles behind URDAD

URDAD claims to be based on the following core principles

  • Business processes should be designed by business analysts, not developers. Developers focus on performing solid technology mappings of the technology neutral business processes onto the specified implementation architecture and technologies.
  • Architecture provides the infrastructure into which the business processes are to be deployed. It will typically span organizational and systems architecture. The architecture needs to ensure that the quality requirements/non-functional requirements are realized across the use cases deployed within it.
  • Enforce the single responsibility principle to increase simplicity, reusability and maintainability.
  • Assign responsibility domains to services contracts to enforce testability and provide a technology neutral approach.
  • Manage levels of granularity to increase simplicity, maintainability, reusability and to allow the design work to be performed across business analysts with different domains of specialization.

[edit] Steps of the URDAD design methodology

The URDAD methodology requires that analysis and technology neutral design for a use case is done across levels of granularity. For each level of granularity, URDAD defines the following steps:

  1. Analysis
    1. Stakeholder identification.
    2. Identifying for each stakeholder the functional requirements.
    3. User work flow specification.
    4. Specifying the requirements for the exchanged value objects.
    5. Specifying the contract, i.e. the pre- and post-conditions and quality requirements for the use case.
  2. Design
    1. Grouping of functional requirements into responsibility domains.
    2. Assigning of each responsibility domain to a separate services contract.
    3. Business process specification.
    4. Extraction of the collaboration context.
  3. Transition to next lower level of granularity.
    1. Select one of the services contracts as new subject.
    2. Select on of its services as use case for the next lower level of granularity and repeat the analysis and design for that level of granularity.

[edit] Outputs of URDAD

For each level of granularity URDAD delivers:

  1. The stakeholders and their functional requirements.
  2. The services contract for each service provider required in the business process at that level of granularity.
  3. The business process as assembled across the services offered by these service providers.

[edit] Value objects/business entities

Value objects are introduced in URDAD at the level of granularity where they are used. Further information is fed across levels of granularity into these value objects.

[edit] References

[edit] External links

A copy of the original URDAD paper is available from the downloads section of http://www.solms.co.za.