Path: utzoo!attcan!uunet!lll-winken!ncis.llnl.gov!helios.ee.lbl.gov!pasteur!ucbvax!smu.UUCP!leff From: leff@smu.UUCP (Laurence Leff) Newsgroups: comp.doc.techreports Subject: tr-input/mcc Message-ID: <8901200529.AA18342@smu.edu> Date: 20 Jan 89 05:29:25 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 971 Approved: trlist@smu.edu The following abstracts describe Non-Proprietary Technical Reports available from MCC's Software Technology Program. Please send requests for SINGLE copies to the person below. INCLUDE your U.S. MAIl address since copies cannot be electronically distributed. Jim Babcock ###################################################################### STP Technical Reports ------------------------------------------------------------------------- NON - PROPRIETARY ABSTRACTS for TRs ISSUED Mid-1987 Thru NOVEMBER 1988 ------------------------------------------------------------------------- __________________________________________________________________ Rpt num : STP-132-87 Date : May 01, 1987 Author : B.Curtis # pages : 23 Title : Five Paradigms in the Psychology of Programming Abstract: This is a review chapter prepared for the Handbook of Human-Computer Interaction to be published by North-Holland in 1987. -- Since the 1950s, psychologists have studied the behavioral aspects of computer programming. However, it has been difficult to integrate their data with theory because of the mixture of psychological paradigms that have guided their research. This chapter will review the research results that have been generated under the five psychological paradigms used most often in exploring programming problems. These five paradigms are 1) individual differences, 2) group behavior, 3) organizational behavior, 4) human factors/cognitive ergonomics, and 5) cognitive science. The major theoretical and practical contributions of each area to the theory and practice of software engineering will be discussed. Based on current trends, it appears that research guided by the paradigm of cognitive science will be the easiest to integrate with new developments in artificial intelligence and computer science theory. __________________________________________________________________ Rpt num : STP-257-87 Date : February 24, 1988 Author : D.Volpano # pages : 24 Title : STS - Software Templates System Abstract: The Software Templates System (STS) is described. STS is a collection of tools that permits you to build abstract specifications of algorithms called software templates and instantiate them for use in many different applications. This document is intended to serve as a description as well as a manual for users of STS. A portion of STS is bootstrapped using STS itself. This bootstrapping process is used to illustrate the features of STS. __________________________________________________________________ Rpt num : STP-299-87 Date : September 24, 1987 Author : B.Curtis # pages : 13 Title : Cognitive Issues in Reusing Software Artifacts Abstract: This paper reviews the cognitive aspects of reusing the artifacts of computer programming. This paper will first review how programming knowledge is organized and used. It will then discuss how professionals design programs and where the information they use comes from. It will end by describing the requirements for reusability tools generated by a cognitive analysis of programming. The thesis is that programmers' primary source of information during programming is their store of problem specific design schema, and that a body of reusable artifacts must provide links into these schema in order for programmers to be able to search and retrieve information effectively from a store external to their own memory. __________________________________________________________________ Rpt num : STP-304-87 Date : November 04, 1987 Author : C.Potts;G.Bruns # pages : 25 Title : Recording the Reasons for Design Decisions Abstract: We outline a generic model for representing design deliberat ion and its relation to the generation of method-specific artifacts. A design history is regarded as a network consisting of artifacts and deliberation nodes. Artifacts include specifications or design documents. Deliberation nodes represent issues, alternatives or justifications. Existing artifacts give rise to issues about the evolving design, an alternative is one of several positions that respond to the issue (perhaps calling for the creation or modification of an artifact), and a justification is a statement giving the reasons for and against selecting the related alternative. The model is applied to the development of a text formatter. The example necessitates some tailoring of the generic model to the method adopted in the development, Liskov and Guttag's design method. We discuss the experiment and the method-specific extensions. The example development has been represented in hypertext and as a Prolog database, the two representations being shown to complement each other. We conclude with a discussion of the relation to this model with other work, and its implications for tool support and methods. __________________________________________________________________ Rpt num : STP-316-87 Date : November 10, 1987 Author : P.Cook # pages : 20 Title : The Role of Champions in Successful Computer Applications Abstract: A structure to understand the reasons for computer success or failure is reported. It is represented as a matrix, where the rows relate to the elements of a successful application, and the columns are derived from diffusion theory as it relates to technology transfer. Vertically listed is the result of a number of years of implementation efforts and observation of the efforts of others. It asserts that to be successful, a computer application must have: A real need, Good hardware, Adequate software, A receptive environment, and A champion. The column structure is derived from diffusion theory, particularly the work of Everett Rogers. It categorizes user environments into four categories: Innovator, Early adopter, Majority, and Late Adopter. Observations are made about each of the cells of the resulting matrix. _________________________________________________________________ Rpt num : STP-320-87 Date : November 20, 1987 Author : F.Halasz # pages : 22 Title : Reflections on Notecards: Seven Issues for the Next Generation of Hypermedia Systems Abstract: NoteCards is a general hypermedia environment designed to help people work with ideas. Its intended users are authors, designers, and other intellectual laborers engaged in analyzing information, designing artifacts, and generally processing ideas. The system provides these users with a variety of hypermedia-based tools for collecting, representing, managing, interrelating, and communicating ideas. This paper presents the NoteCards systems as a foil against which to explore some of the major limitations of the current generation of hypermedia systems. These seven issues are: search and query, composite nodes, virtual structures, computational engines, versioning, collaborative work, and tailorability. For each of these issues, the papers describes the limitations inherent in NoteCards and the prospects for doing improving the situation in future systems. __________________________________________________________________ Rpt num : STP-340-87 Date : March 25, 1988 Author : P.Attie # pages : 61 Title : A Guide to Raddle87 Semantics Abstract: Defines the Raddle87 design language. Describes syntax and an operational semantics. __________________________________________________________________ Rpt num : STP-353-87 Date : November 06, 1987 Author : X.Liangfang;K.Fairchild # pages : 7 Title : Harnessing the Computer Revolution to Further Modernization in China Abstract: The People's Republic of China has a commitment to develop expertise and sweeping changes in science and technology. This paper describes many of the authors' observations about China's growing computer technology abilities. First, we discuss the problems and existing capabilities that influence China's entry into the computer revolution. Then we discuss several of the recent success stories and we close with suggestions about two new research areas that might be particularly useful to further computer modernization. __________________________________________________________________ Rpt num : STP-362-87 Date : October 19, 1987 Author : B.Curtis # pages : 41 Title : The Tarpit and a Rope: A Presentation to Aetna on STP Abstract: These viewgraphs constitute the presentation made by the author to the Aetna's Information Systems Executives Conference on October 19, 1987. The presentation started with a description of systems development problems observed in the STP Field Study and then described how the research program of STP is developing technology to reduce or eliminate some of these problems. __________________________________________________________________ Rpt num : STP-365-86 Date : January 08, 1987 Author : P.Marks # pages : 19 Title : System Development as a Performing Art Abstract: This report explores a view of system development, drawn by analogy to performing arts like theater and competitive sports, as an ongoing progression of Practice-Performance-Postmortem cycles. These stages are defined with regard to their treatment of errors, and the roles of Performer, Audience, and Coach. Potential impact of this model on STP's part in building Leonardo" is suggested. __________________________________________________________________ Rpt num : STP-368-87 Date : November 20, 1987 Author : F.Halasz # pages : 22 Title : Reflections on the State of the Art: Seven Issues for the Next Generaton of Hypermedia Systems Abstract: These slides briefly review the state of the art in workstation-based hypermedia systems (e.g., NoteCards, Neptune, and Intermedia). Seven major issues for the next generation of hypermedia systems are then presented and briefly discussed. These slides accompany the paper contained in MCC Technical Report STP-320-87. These slides were presented at Hypertext '87, Chapel Hill, NC, November, 1987. __________________________________________________________________ Rpt num : STP-375-87 Date : December 17, 1987 Author : I.Baxter # pages : 53 Title : PCL: A Production Control Language (A Proposal) Abstract: A program development [Wile83a] or metaprogram ([Feather86a]) is a description of the steps necessary to convert a specification into an implementation using a transformation system (we prefer the term metaprogram). PCL is a metaprogramming language intended as part of an Implementation Maintenance System, a software package whose goal is the efficient re-derivation of transformationa l implementations given a change to a specification. This document specifies PCL. __________________________________________________________________ Rpt num : STP-383-87 Date : December 31, 1987 Author : L.Power # pages : 10 Title : OOPSLA'87 Panel Discussion: Object-Oriented Concurrency conference held at OOSPLA'87. Abstract: This report covers the panel discussion on object-oriented concurrency held at OOPSLA '87, the ACM-sponsored object-oriented programming conference, held in Orlando, Florida, October, 1987. The panelists were Barbara Liskov, Akinori Yonezawa, David A. Thomas, and Carl Hewitt. In addition to a summarizing the panelists' comments and questions from the floor, the author has included background material on the panelists' object models. Characterizing these as variations on active objects", the author identifies important issues and trade-offs for future research. __________________________________________________________________ Rpt num : STP-386-87 Date : March 24, 1988 Author : V.Shen # pages : 62 Title : Using Superimposition to Add Fault to an EFT System Abstract: Describes the application of a new control construct, the superimposition, to the design of a distributed system expressed in Raddle. __________________________________________________________________ Rpt num : STP-016-88 Date : January 12, 1988 Author : J.Conklin;M.Begeman # pages : 6 Title : gIBIS: A Hypertext Tool for Team Design Deliberation Abstract: This paper describes an application specific hypertext system designed to facilitate the capture of early design deliberations. It implements a specific method, called Issue Based Information Systems (IBIS), which has been developed for use on large, complex design problems. The hypertext system described here, gIBIS (for graphical IBIS), makes use of color and a high speed relational database server to facilitate building and browsing typed IBIS networks. Further, gIBIS is designed to support the collaborative construction of these networks by any number of cooperating team members spread across a local area network. Early experiments suggest that the IBIS method is still incomplete, but there is a good match between the tool and method even in this experimental version. __________________________________________________________________ Rpt num : STP-018-88 Date : April 08, 1988 Author : G.Rein;C.Ellis # pages : 36 Title : The Nick Summer Experiment: A Field Study on the Usage of Meeting Support Technology by Software Design Teams Abstract: Presents the study, results and interpretations of this experimentation to explore and increase the understanding of the use of the prototype Nick electronic meeting room by software design teams working on fuzzy, high-level design problems. __________________________________________________________________ Rpt num : STP-025-88 Date : January 19, 1988 Author : M.Lubars # pages : 10 Title : Code Reusability in the Large Versus Code Reusability in the Small Abstract: As a general rule, the goals of software engineering involve the development of techniques for improving software development productivity. It is no surprise, then, that a lot of attention has been focused on facilitating the reuse of program code. However, much of this attention has been directed with only shortsighted and self-supporting goals, and has thus condemned code reuse techniques to limited areas of success. This paper brings to light some of the issues involving code reusability and contrasts the two ends of the reusability spectrum; code reusability in the large" and code reusabilaity in the small". Methods for possibly improving code reusability are examined. __________________________________________________________________ Rpt num : STP-048-88 Date : March 03, 1988 Author : P.Cook;C.Ellis;G.Rein # pages : 20 Title : Meetings Research - A Nick Retrospective Abstract: Overview of research work performed by the Nick project team since its inception in late 1985. States the motivation and scope of the research followed by an explanation of the modeling work, systems building work and experimentation work. __________________________________________________________________ Rpt num : STP-042-88 Date : February 08, 1988 Author : S.Gibbs # pages : 9 Title : LIZA: An Extensible Groupware Toolkit Abstract: Software for supporting groups of collaborating users - groupware - raises a number of problems in such areas as communication, distribution, concurrency control and user interface design. This paper gives a definition of groupware and presents a high-level model of groupware systems. The model has been applied to the design and implementation of an extensible groupware toolkit known as LIZA in terms of their user interface and functionality. __________________________________________________________________ Rpt num : STP-047-88 Date : February 16, 1988 Author : C.Ellis;G.Rein;S.Jarvenpaa # pages : 15 Title : Nick Experimentation: Some Selected Results Abstract: Presents the study, results and interpretations of this experimentation to explore and increase the understanding of the use of the prototype Nick electronic meeting room by software design reams working on fuzzy, high-level design problems. __________________________________________________________________ Rpt num : STP-058-88 Date : February 10, 1988 Author : M.Lubars;M.Harandi # pages : 31 Title : Addressing Software Reuse Through Knowledge-Based Design Abstract: The reuse of available software components is one important method for improving the productivity of new software product development. Software reuse benefits are especially apparent during specification and design where the foundations are established for the development and maintenance of the software product. Effective reuse of software designs requires a collection of good design components, knowledge about how to locate the components, and strategies for combining and customizing them into new designs. Schemes are also required for representing and manipulating reusable software components and various types of rules and heuristics for design construction. This paper presents both the philosophical and practical aspects of a knowledge-based design environment, called IDeA. __________________________________________________________________ Rpt num : STP-061-88 Date : February 24, 1988 Author : D.Volpano # pages : 9 Title : The Templates Approach to Software Reuse Abstract: Programs written in conventional, imperative languages usually cannot be reused in other applications because commitments have been made to specific types and representations of data. A software template is an algorithm specification that is free of these kinds of commitments. A template is expressed in a typed, functional notation. As a separate programming activity, abstract types are implemented in an imperative language. Templates for standard algorithms, and implementations of commonly-used data types are catalogued for reuse. A programmer chooses implementations for a template's data types at which time the template is translated into a program tailored to the chosen implementations. __________________________________________________________________ Rpt num : STP-081-88 Date : April 08, 1988 Author : R.Miller # pages : 26 Title : Representing Communication Protocols Abstract: Aims at showing how some of the ways of representing protocols can be directly converted into Raddle representations. __________________________________________________________________ Rpt num : STP-082-88 Date : March 09, 1988 Author : J.Conklin;M.Begeman # pages : 23 Title : gIBIS: A Hypertext Tool for Exploratory Policy Discussion Abstract: This paper describes an application specific hypertext system designed to facilitate the capture of early design deliberations. It implements a specific method, called Issue Based Information Systems (IBIS), which has been developed for use on large, complex design problems. The hypertext system described here, gIBIS (for graphical IBIS), makes use of color and a high speed relational database server to facilitate building and browsing typed IBIS networks. Further, gIBIS is designed to support the collaborative construction of these networks by any number of cooperating team members spread across a local area network. Early experiments suggest that the IBIS method is still incomplete, but there is a good match between the tool and method even in this experimental version. __________________________________________________________________ Rpt num : STP-088-88 Date : March 11, 1988 Author : T.Biggerstaff # pages : 12 Title : The Ada Reuse Picture: What is Wrong with this Picture? Abstract: This presentation argues that the reuse oriented structure provided by Ada, or any programming language for that matter, are insufficient to produce payoffs that approach an order of magnitude and in fact, will tend to be in the range of 20% to 30% at absolute best. Further, such reuse improvements derived through reuse of program language code are a part of, not in addition to, other improvements derived by modern programming practices. To gain larger improvements, it is argued one must reuse design abstractions and this will require the development of an environment infrastructure for dealing with such constructs. Thus, the reuse (design/maintenance) problem is not a language problem, but an environment problem. __________________________________________________________________ Rpt num : STP-187-88 Date : July 18, 1988 Author : R.Miller;I.Forman # pages : 6 Title : The Readers-Writers Problem Using Interactions Abstract: Short technical note to record an interesting problem in the expressive power of Raddle. __________________________________________________________________ Rpt num : STP-120-88 Date : April 29, 1988 Author : M.Lubars # pages : 6 Title : Environmental Support for Reuse Abstract: Discusses reuse methods which should be embedded with CASE tools and environments as an integral part of the methodology, rather than treated as a separate problem. __________________________________________________________________ Rpt num : STP-122-88 Date : April 12, 1988 Author : G.Bruns # pages : 12 Title : Germ: A Metasystem for Browsing and Editing Abstract: Focuses on the modeling primitives underlying a Germ schema and how they relate to the features of browsing and editing tools. __________________________________________________________________ Rpt num : STP-182-88 Date : June 18, 1988 Author : V.Shen # pages : 64 Title : Problem-Driven Software Engineering Research Abstract: Contains the charts presented at a workshop in Taipei, July 18-22, 1988. __________________________________________________________________ Rpt num : STP-155-88 Date : May 18, 1988 Author : S.Gerhart # pages : 25 Title : A Broad Spectrum Toolset for Upstream Testing, Verification, and Analysis Abstract: Describes a suite of tools to analyze properties of sequences associated with a specification, with input or output to a program, or with simple behavioral models of a system under design. __________________________________________________________________ Rpt num : STP-186-88 Date : June 10, 1988 Author : G.Bruns;C.Potts # pages : 36 Title : Domain Modeling Approaches to Software Development Abstract: Reviews and discusses a representative sample of software design approaches that contain a domain modeling component. __________________________________________________________________ Rpt num : STP-195-88 Date : June 20, 1988 Author : S.Gibbs;C.Ellis # pages : 12 Title : Action Objects: Realities and Possibilities Abstract: Defines and explains the concept of active object. Presents and justifies examples of active objects. __________________________________________________________________ Rpt num : STP-206-88 Date : July 21, 1988 Author : E.Gullichsen;D.D'Souza;P.Lincoln;K.The # pages : 44 Title : The PlaneTextBook Abstract: Describes PlaneText as a hypertext system written in C to run under the SunView window manager on a SUN workstation. Users can create and share a general graph structure of nodes. __________________________________________________________________ Rpt num : STP-214-88 Date : July 07, 1988 Author : R.Guindon # pages : 15 Title : Software Design Tasks as Ill-Structured Problems, Software Design as an Opportunistic Process Abstract: Reviews the main cognitive studies of software design and their findings contrasted to informal observations by practitioners and researchers in software development. __________________________________________________________________ Rpt num : STP-236-88 Date : July 22, 1988 Author : P.Attie # pages : 13 Title : The Generation of ADA Code from RADDLE/VERDI Designs Abstract: Addresses the problem that, given a suitably low level VERDI design, what the problems involved in generating ADA code from this design. Discusses the problems, presents suggestions for solutions and gives an example of VERDI to ADA translation. __________________________________________________________________ Rpt num : STP-250-88 Date : August 02, 1988 Author : M.Evangelist;I.Forman;G.Bruns # pages : 26 Title : Tebasco: A Team-Based Coordination System Abstract: Proposes on how such a system should operate. __________________________________________________________________ Rpt num : STP-263-88 Date : September 14, 1988 Author : C.ElLIS;S.Gibbs;G.Rein # pages : 12 Title : Design and Use of a Group Editor Abstract: GROVE is a prototype outline editor specifically designed for use by a group of people working simultaneously on the same text outline. It has been used in work sessions by several groups ranging in size from two to six people, in both face-to-face and distributed modes, for a variety of design tasks. This paper describes the function of GROVE and presents some of the important observations from these work sessions. __________________________________________________________________ Rpt num : STP-256-88 Date : September 07, 1988 Author : M.Lubars;M.Harandi # pages : 7 Title : The Knowledge-Based Refinement Paradigm and IDeA: Concepts, Limitations, and Future Directions Abstract: The knowledge-based refinement paradigm of software development is a paradigm that views the software development process as a succession of knowledge-based refinements to an initial model of a desired system. IDeA (Intelligent Design Aid) was developed as a prototypical design environment to support the knowledge-based refinement paradigm. This paper outlines the knowledge-based refinement paradigm, capabilities of IDeA, and evaluates IDeA's effectiveness in supporting the paradigm. Suggestions are made for improving the paradigm and for constructing future supporting environments. __________________________________________________________________ Rpt num : STP-270-87 Date : September 13, 1988 Author : I.Forman # pages : 16 Title : Leader Election: An Exercise in Raddle Design Abstract: This report presents three Raddle solutions to the Leader Election Problem. The solutions demonstrate three strengths of Raddle: (1) The use of the N-party interaction to express algorithms that are independent of architectural and optimization considerations. In this way Raddle supports the extreme upstream phase of the design process in that designers can express concepts that were previously unexpressible in any design notations for distributed systems. (2) The decomposition of N-party interactions to achieve optimization and customization to specific architectures. This supports the designer in his second problem: how the performance requirements can be achieved. (3) The composition of library teams to obtain a desired team. This supports designers in their quest to reuse designs. __________________________________________________________________ Rpt num : STP-033-88 Date : January 27, 1988 Author : C.Ellis;S.Gibbs;G.Rein # pages : 23 Title : The Groupware Project: An Overview Abstract: This paper is an overview of the groupware project, a computer-supported collaborative work research project at MCC in the Software Technology Program. We present the goals of the groupware project and the design philosophy of our prototype systems. The paper is organized into three sections: The Early Work, the Current Work, and the Future Vision. Highlights of the past work on Project Nick are presented, including a description of the electronic meeting room (hardware and software) and a summary of the key findings from an extensive empirical study conducted at STP during the summer of 1987. Other early groupware systems (HyperMate and LIZA) are briefly described. Then we describe our current activity to build a group outlining tool (grove), and conclude with a description of our long term vision. __________________________________________________________________ Rpt num : STP-289-88 Date : September 09, 1988 Author : T.Biggerstaff # pages : 6 Title : The Nature of Semi-Formal Information in Domain Models Abstract: This position paper describes the nature and importance of informal and semi-formal information in the understanding, interpretation and reuse of large complex programs. The understanding of large, complex, existing programs is sometimes called the "dusty deck" problem. The emphasis of this research is on how one might create a model of a domain that would help in the job of understanding and eventually reusing large scale designs from large, complex and generally unmastered existing programs. The role of informal and semi-formal information is central to this domain model. __________________________________________________________________ Rpt num : STP-233-88 Date : August 01, 1988 Author : B.Curtis;H.Krasner;N.Iscoe # pages : 30 Title : A Field Study of the Software Design Process Abstract: We studied the major problems experienced in designing large software systems by interviewing personnel from 17 large projects. We use a layered behavioral model to analyze how three of these problems - the thin spread of application knowledge, fluctuating and conflicting requirements, and communication bottlenecks and breakdowns - affected software productivity and quality through their impact on cognitive, social and organizational processes. __________________________________________________________________ Rpt num : STP-294-88 Date : September 09, 1988 Author : M.Lubars # pages : 19 Title : The IDeA Design Environment Abstract: The design of software is a complex process requiring the software designer to simultaneously perform a variety of activities. These include the intellectual activities of exploring and analyzing design alternatives, the consideration and reuse of previous solutions, the organizational tasks of managing design goals, dependencies, and partial solutions, and the clerical aspects of recording design decisions. Very few environments have been developed that provide all of these aspects of design support. The IDeA system is a prototypical design environment that was developed to demonstrate that a single environment could integrate many different aspects of software design support. This report describes the IDeA environment and the aspects of design support that it provides. __________________________________________________________________ Rpt num : STP-275-88 Date : August 18, 1988 Author : S.Smith;S.Gerhart # pages : 52 Title : STATEMATE and Cruise Control: A Case 2 Study Abstract: The STATEMATE system uses a state transition formalism embodied in activity and control charts and supported by simulation, analysis, and documentation tools. This paper describes its application to an automobile cruise control system, emphasizing the methodology lessons of the case study. __________________________________________________________________ Rpt num : STP-249-88 Date : July 29, 1988 Author : J.Conklin # pages : 16 Title : Design Rationale and Maintainability Abstract: Design decisions and assumptions occur within and during the process of system design, but are not documented. This rationale is thus generally lost. The careful deliberation and much of the domain learning that went into resolving key design issues is thus wasted, increasing overall system costs. This cost is most apparent during maintenance, when a significant portion of engineer's time is spent trying to recover the lost rationale of the system structure. An approach is proposed for capturing this process oriented material during development, indexed so that it provides this critical information to maintainers. __________________________________________________________________ Rpt num : STP-252-88 Date : August 04, 1988 Author : J.Conklin;M.Begeman # pages : 20 Title : gIBIS: A Tool for all Reasons Abstract: This paper describes an application specific hypertext system designed to facilitate and capture policy and design discussions. The system, gIBIS, implements a specific method, called Issue Based Information Systems (IBIS), which was developed for use on large, complex design problems. gIBIS (for graphical IBIS) makes use of color and a high speed relational database server to facilitate building and browsing typed IBIS networks. Further, gIBIS supports the collaborative construction of these networks by any number of cooperating team members spread across a local area network. Experience to date suggests that the gIBIS tool is quite useful tool for communication and organizing informal information. __________________________________________________________________ Rpt num : STP-400-87 Date : October 12, 1988 Author : C.Ellis;F.Harary # pages : 23 Title : The Forced Color Assignment Problem Abstract: The 4-color problem has received widespread attention within mathematical circles; it is concerned with coloring nodes of a graph in such a way that no adjacent nodes have the same color. This paper introduces and investigates a new, related concept within graph theory which is motivated by the needs of software engineering. The concept is a graph invariant, f(G) which we call the node color forcing number of G. This invariant specifies the minimum number of nodes of a graph G which must be colored in order to completely determine all remaining node colors. A significant open problem is how to characterize f(G). __________________________________________________________________ Rpt num : STP-363-88 Date : October 26, 1988 Author : T.Biggerstaff # pages : 23 Title : Reuse of Very Large Scale Components Abstract: This presentation argues that the reuse of very large scale components (10KLOC and above) is where we can expect the increase in productivity and quality to approach an order of magnitude. For smaller components, the improvements to the overall project are significantly less. In addition to productivity and quality, other factors change as one scales up the size of components. In particular, the key research problems change. The problems of finding components and component standards are now overwhelmed by problems such as understanding the nature of the large components so that they can be modified and adapted to new situations. This introduces the need for a new kind of tool -- one that aids in recovering the design of a program. Such Design Recovery tools aid both in the population of libraries of reusable components as well as in the understanding and maintenance of existing programs. __________________________________________________________________ Rpt num : STP-213-88 Date : September 22, 1988 Author : I.Forman # pages : 14 Title : Data Flow Anomaly Detection for Raddle87 Abstract: The problem of detecting data flow anomalies in Raddle87, a language for the design of distributed systems, is addressed. An algebra A is described that is specialized for the detection of data flow anomalies by interpreting the regular expression for the paths in a program as an A expression. A method for efficiently computing data is presented; the method is based on the iterative algorithm of global data flow analysis. __________________________________________________________________ Rpt num : STP-335-88 Date : October 18, 1988 Author : J.Peterson # pages : 17 Title : XSCOPE: A Debugging and Performance Tool for X11 Abstract: The X Window System architecture consists of separate processes for the window server and its clients. When poor performance or errors are a problem in such a system, it may be difficult to determine if the problem is with the client, some client toolkit, or with the server. Xscope allows a programmer to view the actual request, reply, error, and event packets sent between the client and the server, providing the data needed to understand the system. The design of Xscope indicates some problems with the syntax of the X11 protocol. __________________________________________________________________ Rpt num : STP-298-88 Date : September 18, 1988 Author : R.Guindon # pages : 13 Title : A Framework for Building Software Development Environments: System Design as Ill-structured Problems and as an Opportunistic Process Abstract: One model of the design process is as a process of stepwise refinement, which is useful to describe the process of designing programs and simple software systems. Any theory or model, however, is an abstraction of the actual phenomenon studied and accounts only for a subset of the potentially relevant events. Other abstractions might more appropriately account for the process of designing realistic systems and have early impact on the building of environments to support software designers. An analysis of system design tasks reveals that they are ill-structured problems. An empirical study, using a system design task of realistic complexity, shows that the design process is highly opportunistic. Opportunistic planning is planning in which interim decisions can lead to subsequent decisions at arbitrary points in the planning space. On the basis of this analysis of system design tasks and the empirical results, implications for environments to support designers are derived. __________________________________________________________________ Rpt num : STP-271-88 Date : September 27, 1988 Author : E.Levy # pages : 34 Title : A Survey of Distributed Coordination Abstract: Distributed Coordination is a problem of implementing a synchronous communication event between an arbitrary number of processes in a distributed environment. The problem captures two primary aspects in distributed computing: exclusion and synchronization. After presenting a clear specification of the Distributed Coordination problem, the paper surveys and assesses algorithms for solving it. Both message passing and broadcast algorithms are discussed. Classes of algorithms which exhibit common properties are identified and analyzed. __________________________________________________________________ Rpt num : STP-295-88 Date : November 04, 1988 Author : M.Lubars # pages : 11 Title : Domain Analysis and Domain Engineering in IdeA Abstract: IDeA is a design environment that provides several forms of design assistance during the construction of software designs. IDeA concentrates in supporting the reuse of abstract software designs, represented as design schemas. Before IDeA can provide design reuse support, a designer experienced in certain application domains must populate IDeA's design reuse library with schemas for those domains. In performing a domain analysis, the analyst must consider which objects to include and to what degree they should be abstracted. After completing the analysis, the domain must be engineered to support reuse. This paper outlines the domain analysis and domain engineering steps for populating IDeA's reuse library and considers how much abstraction is appropriate within a reusable domain. __________________________________________________________________ Rpt num : STP-366-88 Date : November 04, 1988 Author : M.Lubars # pages : 31 Title : A Domain Modeling Representation Abstract: A serious problem in most software development projects is that key information fails to get recorded, and many other kinds of information are not uniformly integrated. A possible solution to the problem is to evolve a model of the software system that includes the relevant knowledge about its development. It is conjectured that if all this information could be recorded, its use would provide better quality software, facilitate communication between software engineers, enhance software maintenance, and provide software artifacts that are more reusable. This paper presents a domain modeling representation (DMR) that represents a large portion of the desired information. __________________________________________________________________ Rpt num : STP-367-88 Date : November 11, 1988 Author : D.Webster # pages : 35 Title : Mapping the Design Information Representation Terrain Abstract: This report attempts to establish a context for design information representation research, via a qualitative survey and comparison of a broad range of relevant technologies. We discuss associated representation requirements, and present a working "technology map", which reflects relationships among the surveyed technologies. Within the context provided by the map, we point out limitations of the representation mechanisms of conventional software development technologies, and prospects for overcoming them. __________________________________________________________________ ========== End of Data ========== -------