Adele Goldberg
Xerox
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Adele Goldberg.
Communications of The ACM | 1992
Kenneth S. Rubin; Adele Goldberg
Object Behavior Analysis nalysis is the study and modeling of a given problem domain, within the context of stated goals and objectives. It focuses on what a system is supposed to do, rather than how it is supposed to do it (which we consider the design aspects). In addition , it must embody the rule of traceability (why), which justifies the existence of a given result by tying it back to the stated goals and objectives. The components of the problem domain can be described as anything that end users of the system, both humans and machines, view as part of the problem context. This may include technical issues, if the users view such issues as part of the problem. • • • • • • • • • • • • • • • • We want the analysis process to be carried out in a predictable and controllable manner. In taking an object-oriented approach to analysis , our goal on completion is that we have a clear understanding of the behaviors exhibited by the system , the objects that exhibit these behaviors, the relationships among the objects, and how the objects interact with one another (the system dynamics). This must all be specified in a clear and well-defined language of object and behavior names, chosen from the problem domain. In addition, any implementation code must be traceable back to the results of the analysis. This means that the vocabulary and structures apparent in the design and implementation must clearly reflect the vocabulary and structures that result from the analysis. Object-oriented analysis endeavors to model a situation in terms of a collection of interacting entities, each of which provides a well-defined set of behaviors and attributes. Most published approaches describe conceptually similar definitions , although they adopt alternate terminologies [2, 3, 10]. There is a high degree of agreement on the desired structure of the end result; we differ in how to get to the end result. Many approaches recommend first searching for the tangible objects , notably seeking the nouns in a requirements specification and any applicable verbs and adjectives. With nouns as the objects, the message interface is determined from the verbs, and the logical properties are derived from the adjectives. Although this basic approach may work for small systems, it is our experience that it simply will not scale up. First, it assumes that a complete, …
conference on object-oriented programming systems, languages, and applications | 1995
Adele Goldberg
Object-oriented technology offered yet another way to explicitly support, through languages and their tool environments, long discussed strategies to help structure large software systems. But objectoriented technologies of the 80s challenged the system builders of the 90s in profound ways: system structure would be more visible; team structure and management would be a more critical project success factor; and retraining experienced personnel would be required. This paper proposes a curriculum and development tools for a new course on software engineering practices especially designed to meet these-challenges.
Communications of The ACM | 1997
Adele Goldberg; Steven T. Abell; David Leibs
LearningWorks is implemented as the composition of four frameworks: a LearningBook presentation and interaction framework that supports the basic user model, a programming framework with access to a library of reusable software components, an authoring framework for creating LearningBooks, and a team communications framework. Using the communications framework, a team of students can work together to create network-based simulations of virtual worlds. An author creates curriculum to be delivered using these four frameworks. The curriculum itself can be designed as a framework of activities or microworlds. The purpose of this brief article is to outline the structure of the four frameworks. Design goals, implementation details, and examples are provided in more detail in [4]. The LearningWorks prototype, which is available at no charge for educational and training purposes, is available for downloading at www.neometron.com/learningworks. LearningWorks information and activities are accessible from windows on the display screen that emulate the structure of a book, as shown in Figure 1. We refer to these online books as LearningBooks. LearningBooks provide the only way in which courseware activities—projects and software development assignments—are carried out. You read a book by selecting sections and, within a section, by selecting pages. Pages contain activities or applications that students interact with in order to explore various topics of a course of study. Pages can also contain programming tools for exploring existing object definitions and creating new ones. A typical book will contain information and exercises about a concept that the student must understand. The LearningBook framework manages the composition and execution of book components. Sections can have section themes, which are sets of interactive components that persist across all pages of the section. Any information created within a section theme can be shared with each page activity. In Figure 1, the section theme presents a scrollable list of shapes and shares the current selection.
Communications of The ACM | 1995
Adele Goldberg
Smalltalk is a single paradigm language with very simple semantics and syntax for specifying elements of a system and for describing system dynamics [1]. When the language is used to describe an application system, the developer extends Smalltalk, creating a domain-specific language by adding a new vocabulary of language elements while maintaining the same semantics and syntax. Using most Smalltalk systems, it is easy to invent ones own development environment through inclusion of new system parts in the library and extension of the development tools. Moreover, it is possible to make changes to the environment, and to applications written using the environment, while the system is executing. These system characteristics create a flexible and enjoyable software development experience.
Communications of The ACM | 1985
Adele Goldberg
Contrary to the myth that computer systems are infallible, in fact computer systems can and do fail. Consequently, the reliability of computerbased systems cannot be taken for granted. This reality applies to all computer-based systems, but it is especially critical for systems whose failure would result in extreme risk to the public. Increasingly, human lives depend upon the reliable operation of systems such as air traffic and high-speed ground transportation control systems, military weapons delivery and defense systems, and health care delivery and diagnostic systems.
conference on object oriented programming systems languages and applications | 1993
Dave A. Thomas; Adele Goldberg; James O. Coplien; Peter Coad; Geir Magne Høydalsvik
The basic statement in this paper is appealing, that is, that the various methodologies labeled OOA do not fulfill the obligations appropriate to an analysis methodology, and to a large extent do not sufficiently capture the information needed for a smooth transition to design. I will not debate the conclusion, indeed I agree with it as should be obvious since the authors have referenced my own writing as saying as much. There are two issues I will raise. The first is whether we are to understand from the authors that the problems they cite are inherent in the notion of using object modeling as the language for analysis. The authors appear to use strong language that could lead the reader to this conclusion. This could unfortunately lead a reader to ignore OOA in areas where it is both appropriate and beneficial. I believe it would be useful for the authors (an d others) to provide a much more concise characterization of what is meant by an OOA, and then formally determine the implications as to what domains are appropriate for use of the object techniques.
conference on object-oriented programming systems, languages, and applications | 1997
Laura Hill; Bruce Anderson; Adele Goldberg; Gregor Kiczales; Colin Scott; Kevin Tyson
Over the past years, the Object Technology community has seen the birth of a number of new technology ideas that have changed the way we do computing. These ideas have affected compiler design, analysis approaches, project management techniques, user interface design, deployment strategies and implementation tactics. But where do these ideas come from? And how do they evolve? Do they address the needs as specified by members of the Object Community? Is there a way we can nurture the introduction and assimilation of these ideas to and by the community at large? And what are the market forces that bend ideas to their will. This panel will look at new ideas in Object Technology from a variety of perspectives and will attempt to get to the heart of the way that we, as technologists, create, buy, sell and grow ideas.
conference on object oriented programming systems languages and applications | 1993
Kenneth S. Rubin; Adele Goldberg
Object-oriented projects have to be managed properly to obtain the most benefits from object-oriented technology. This tutorial explains the effect of object-oriented technology on costs, staffing ...
Archive | 1995
Adele Goldberg; Kenneth S. Rubin
Archive | 1999
Adele Goldberg; David Leibs; Wlodek P. Kubalski