Browse Definitions :
Definition

GRASP (General Responsibility Assignment Software Patterns)

GRASP (General Responsibility Assignment Software Patterns) is a design pattern in object-oriented software development used to assign responsibilities for different modules of code.

As a tool for software developers, GRASP provides a means to solve organizational problems and offers a common way to speak about abstract concepts. The design pattern sets responsibilities for objects and classes in object-oriented program design.

GRASP with object-oriented programming classifies problems and their solutions together as patterns. With these problems and solutions well defined, they can be applied in other similar instances. GRASP assigns seven types of roles to classes and objects in order to make for clear delineation of responsibilities. These roles are:

  • Controller
  • Information Expert
  • Creator
  • High Cohesion
  • Low Coupling
  • Polymorphism
  • Protected Classes

GRASP is occasionally coupled with other design patterns such as SOLID. This combination makes for the convincing moniker of SOLID GRASP. Design patterns such as these help keep code simpler, more organized, more comprehensible, analyzable and reusable.

This was last updated in December 2018

Continue Reading About GRASP (General Responsibility Assignment Software Patterns)

Networking
  • What is wavelength?

    Wavelength is the distance between identical points, or adjacent crests, in the adjacent cycles of a waveform signal propagated ...

  • subnet (subnetwork)

    A subnet, or subnetwork, is a segmented piece of a larger network. More specifically, subnets are a logical partition of an IP ...

  • Transmission Control Protocol (TCP)

    Transmission Control Protocol (TCP) is a standard protocol on the internet that ensures the reliable transmission of data between...

Security
CIO
  • What is a startup company?

    A startup company is a newly formed business with particular momentum behind it based on perceived demand for its product or ...

  • What is a CEO (chief executive officer)?

    A chief executive officer (CEO) is the highest-ranking position in an organization and responsible for implementing plans and ...

  • What is labor arbitrage?

    Labor arbitrage is the practice of searching for and then using the lowest-cost workforce to produce products or goods.

HRSoftware
  • organizational network analysis (ONA)

    Organizational network analysis (ONA) is a quantitative method for modeling and analyzing how communications, information, ...

  • HireVue

    HireVue is an enterprise video interviewing technology provider of a platform that lets recruiters and hiring managers screen ...

  • Human Resource Certification Institute (HRCI)

    Human Resource Certification Institute (HRCI) is a U.S.-based credentialing organization offering certifications to HR ...

Customer Experience
Close