Rebecca Wirfs-Brock

Last updated
Rebecca J. Wirfs-Brock
Born1953 (age 6970)
Nationality American
Alma mater University of Oregon
Known for Responsibility-driven design
PartnerAllen Wirfs-Brock
Website www.wirfs-brock.com

Rebecca J. Wirfs-Brock (born 1953 in Portland, Oregon) is an American software engineer and consultant in object-oriented programming and object-oriented design, the founder of the information technology consulting firm Wirfs-Brock Associates, and inventor of Responsibility-Driven Design, the first behavioral approach to object design.[ citation needed ]

Contents

Wirfs-Brock holds a B.A. in computer and information science and psychology from the University of Oregon. [1] She worked at Tektronix for 15 years as a software engineer before moving on to Instantiations (founded by her husband Allen Wirfs-Brock), which was acquired by Digitalk which merged with Parc Place Systems to become ParcPlace-Digitalk in 1995. She was the Chief Technologist for the professional services organization of a Smalltalk language vendor.

She holds a U.S. Patent #4,635,049 "Apparatus for Presenting Image Information for Display Graphically" together with Warren Dodge.

Wirfs-Brock first coined the "-driven" meme in an OOPSLA 1989 paper she co-authored with Brian Wilkerson. [2] Before that time, the most prevalent way of structuring objects was based on entity-relationship modeling ideas (popularized by James Rumbaugh, Steve Mellor and Sally Shlaer).

She wrote about object role stereotypes in 1992 in a Smalltalk Report article and this influenced the UML notion of stereotypes. Her invention of the conversational (two-column) form of use cases was then popularized by Larry Constantine. Most of the more recent "driven" design approaches acknowledge their roots and the influence of RDD, of which class-responsibility-collaboration cards are one popular technique. She was the design columnist for IEEE Software until December 2009.

Bibliography

Related Research Articles

<span class="mw-page-title-main">Kent Beck</span> American software engineer

Kent Beck is an American software engineer and the creator of extreme programming, a software development methodology that eschews rigid formal specification for a collaborative and iterative design process. Beck was one of the 17 original signatories of the Agile Manifesto, the founding document for agile software development. Extreme and Agile methods are closely associated with Test-Driven Development (TDD), of which Beck is perhaps the leading proponent.

<span class="mw-page-title-main">Smalltalk</span> Object-oriented programming language first released in 1972

Smalltalk is a purely object oriented programming language (OOP), created in the 1970s for educational use, specifically for constructionist learning, at Xerox PARC by Learning Research Group (LRG) scientists, including Alan Kay, Dan Ingalls, Adele Goldberg, Ted Kaehler, Diana Merry, and Scott Wallace.

<i>Design Patterns</i> 1994 software engineering book

Design Patterns: Elements of Reusable Object-Oriented Software (1994) is a software engineering book describing software design patterns. The book was written by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, with a foreword by Grady Booch. The book is divided into two parts, with the first two chapters exploring the capabilities and pitfalls of object-oriented programming, and the remaining chapters describing 23 classic software design patterns. The book includes examples in C++ and Smalltalk.

In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system.

<span class="mw-page-title-main">Adele Goldberg (computer scientist)</span> American computer scientist

Adele Goldberg is an American computer scientist. She was one of the co-developers of the programming language Smalltalk-80 and of various concepts related to object-oriented programming while a researcher at the Xerox Palo Alto Research Center (PARC), in the 1970s.

<span class="mw-page-title-main">Model–view–controller</span> Software design pattern

Model–view–controller (MVC) is a software design pattern commonly used for developing user interfaces that divides the related program logic into three interconnected elements. This is done to separate internal representations of information from the ways information is presented to and accepted from the user.

In computer science, a metaobject is an object that manipulates, creates, describes, or implements objects. The object that the metaobject pertains to is called the base object. Some information that a metaobject might define includes the base object's type, interface, class, methods, attributes, parse tree, etc. Metaobjects are examples of the computer science concept of reflection, where a system has access to its own internal structure. Reflection enables a system to essentially rewrite itself on the fly, to alter its own implementation as it executes.

<span class="mw-page-title-main">Craig Larman</span> Canadian-born computer scientist, author, and organizational development consultant

Craig Larman is a Canadian computer scientist, author, and organizational development consultant. With Bas Vodde, he is best known for formulating LeSS, and for several books on product and software development.

OOPSLA is an annual ACM research conference. OOPSLA mainly takes place in the United States, while the sister conference of OOPSLA, ECOOP, is typically held in Europe. It is operated by the Special Interest Group for Programming Languages (SIGPLAN) group of the Association for Computing Machinery (ACM).

<span class="mw-page-title-main">Dan Ingalls</span> American computer scientist

Daniel Henry Holmes Ingalls Jr. is a pioneer of object-oriented computer programming and the principal architect, designer and implementer of five generations of Smalltalk environments. He designed the bytecoded virtual machine that made Smalltalk practical in 1976. He also invented bit blit, the general-purpose graphical operation that underlies most bitmap computer graphics systems today, and pop-up menus. He designed the generalizations of BitBlt to arbitrary color depth, with built-in scaling, rotation, and anti-aliasing. He made major contributions to the Squeak version of Smalltalk, including the original concept of a Smalltalk written in itself and made portable and efficient by a Smalltalk-to-C translator.

Object-oriented role analysis and modeling (OOram) is a method, based on the concept of role, for performing object-oriented modeling.

Object-oriented analysis and design (OOAD) is a technical approach for analyzing and designing an application, system, or business by applying object-oriented programming, as well as using visual modeling throughout the software development process to guide stakeholder communication and product quality.

David A. Thomas, sometimes known as "Big" Dave Thomas is a software developer, researcher and entrepreneur. He was founder and CEO of Object Technology International, which created the products that became IBM VisualAge and eventually Eclipse.

In computer programming, data-driven programming is a programming paradigm in which the program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken. Standard examples of data-driven languages are the text-processing languages sed and AWK, and the document transformation language XSLT, where the data is a sequence of lines in an input stream – these are thus also known as line-oriented languages – and pattern matching is primarily done via regular expressions or line numbers.

<span class="mw-page-title-main">Trygve Reenskaug</span> Norwegian computer scientist

Trygve Mikkjel Heyerdahl Reenskaug is a Norwegian computer scientist and professor emeritus of the University of Oslo. He formulated the model–view–controller (MVC) pattern for graphical user interface (GUI) software design in 1979 while visiting the Xerox Palo Alto Research Center (PARC). His first major software project, "Autokon," produced a successful computer-aided design – computer-aided manufacturing (CAD/CAM) program which was first used in 1963, and continued in use by shipyards worldwide for more than 30 years.

Etoys is a child-friendly computer environment and object-oriented prototype-based programming language for use in education.

In computing, an object-oriented user interface (OOUI) is a type of user interface based on an object-oriented programming metaphor, and describes most modern operating systems such as MacOS and Windows. In an OOUI, the user interacts explicitly with objects that represent entities in the domain that the application is concerned with. Many vector drawing applications, for example, have an OOUI – the objects being lines, circles and canvases. The user may explicitly select an object, alter its properties, or invoke other actions upon it. If a business application has any OOUI, the user may be selecting and/or invoking actions on objects representing entities in the business domain such as customers, products or orders.

Aida/Web is an object-oriented, open source Smalltalk web application server using the model-view-controller (MVC) architectural pattern.

Responsibility-driven design is a design technique in object-oriented programming, which improves encapsulation by using the client–server model. It focuses on the contract by considering the actions that the object is responsible for and the information that the object shares. It was proposed by Rebecca Wirfs-Brock and Brian Wilkerson.

Object-Oriented Programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields, and the code is in the form of procedures.

References

  1. Online C.V
  2. Wirfs-Brock, Rebecca; Wilkerson, Brian (1989). "Object-oriented design: A responsibility-driven approach". Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '89. New York: ACM. pp. 71–75. doi:10.1145/74877.74885. ISBN   0897913337. S2CID   7372657.{{cite book}}: CS1 maint: date and year (link)