scispace - formally typeset
Search or ask a question

Showing papers in "Information & Software Technology in 1987"



Journal ArticleDOI
TL;DR: It is argued that the approach described here is most appropriate for defining and evaluating more appropriate structural measures than those which currently exist, since the level of subjectivity is kept to a clearly defined minimum.
Abstract: This paper has two objectives. First, very briefly, the status, limitations and use of software metrics is reviewed in a quite general sense. It is argued that research in this area has been largely impenetrative because proposed metrics have attempted to characterize notions of structure for which no formal model or theory exists. The classic example is the class of control or logic structure metrics which some have claimed are capable of characterizing such diverse notions as comprehensibility through to maintainability. In fact these first need to characterize the structure of control flow, a notion which in itself has not even been properly formalized. Thus the second objective is to create the necessary formal environment in which questions about structure can at least be sensibly posed. Thus a theory is described from which is proved that there is always a unique hierarchical decomposition in terms of a tree of prime structures. The importance of the prime structures in software design is discussed and it is shown that the decomposition tree can be used to generate automatically all well known control flow (and many other) metrics in an elegantly simple manner. In this respect the paper also provides a novel survey of such metrics, while placing diverse research in this area within a unified framework. It is argued that the approach described here is most appropriate for defining and evaluating more appropriate structural measures than those which currently exist, since the level of subjectivity is kept to a clearly defined minimum. The implications of the work for design and specification metrics is discussed. The work has been carried out at the Centre for Software and Systems Engineering, South Bank Polytechnic, under support of Alvey grant SE/69 and British Telecom Project 610287.

54 citations


Journal ArticleDOI
TL;DR: Why it is important to calibrate a model and how the inexperienced user can be helped by an expert system are indicated and the development of, and experience with, the prototype of an expert systems are described.
Abstract: Calibration, has been found to be difficult in practice. Wide experience in using the estimation model is necessary; experience which the beginner naturally lacks. This paper indicates why it is important to calibrate a model and how the inexperienced user can be helped by an expert system. In addition, the development of, and experience with, the prototype of an expert system are described. The system dealt with here is intended for the calibration of the PRICE SP estimation.

41 citations


Journal ArticleDOI
TL;DR: User Interface Management Systems (UIMS) offer many potential benefits to users although problems still exist: interaction ergonomic, dialogue control and separation.
Abstract: User Interface Management Systems (UIMS) offer many potential benefits to users although problems still exist. Three main problems are discussed: interaction ergonomics, dialogue control and separation.

29 citations


Journal ArticleDOI
TL;DR: A small-scale pilot study based on forty-two functions, grouped into nine modules, demonstrates the feasibility of these metrics as predictors of implementation metrics which may be used to predict software costs.
Abstract: Metrics for algebraic specifications are examined with a view to predicting the initial cost of software developed from such specifications A small-scale pilot study based on forty-two functions, grouped into nine modules, demonstrates the feasibility of these metrics as predictors of implementation metrics which, in turn, may be used to predict software costs

28 citations


Journal ArticleDOI
TL;DR: A process engineering approach that treats the software development process in its entirety and distinct from its unique application to any specific project is described, which concludes that productivity improvement must begin with attention to quality.
Abstract: Quality and productivity considerations have become increasingly important in software development. Many different tools and techniques have been developed to improve individual activities within the software process. Software development is a complex interacting system of activities that cannot be isolated from each other. The paper describes a process engineering approach that treats the software development process in its entirety and distinct from its unique application to any specific project. Its central thesis is that productivity improvement must begin with attention to quality.

20 citations


Journal ArticleDOI
TL;DR: The goal of the discriminant analysis tool and classification model for software complexity metrics is to automate the process of collecting software measurements and develops a methodology to determine the robustness of several combined metrics and offers a norm against which measurements can be compared.
Abstract: The potential of software complexity measurements has not been fully explored for lack of a systematic approach to collect, evaluate and use these measurements. The goal of the discriminant analysis tool and classification model for software complexity metrics is to automate the process of collecting software measurements. It also develops a methodology to determine the robustness of several combined metrics and offers a norm against which measurements can be compared. The model acts as an evaluator of the many metrics that have been and may be suggested in the literature and offers programmers a systematic approach to choose the ones that best fit their particular type of system, problem domain and environment.

19 citations


Journal ArticleDOI
TL;DR: In this article, the authors examined the reasons why software prototyping is an effective validation tool and the technical facilities that are currently available to carry out the process, concluding that much more research and development work is needed into the managerial aspects.
Abstract: Software prototyping consists of providing a working version of a system early in the software life-cycle. This paper examines the reasons why this activity is an effective validation tool and the technical facilities that are currently available to carry out the process. The paper concludes with a description of some of the outstanding problems for which research still remains. The conclusion reached is that the technical feasibility of prototyping has been demonstrated but that much more research and development work is needed into the managerial aspects.

18 citations


Journal ArticleDOI
TL;DR: A UK management consultancy has developed a user interface management system which gives the user a variety of options and at present, the Software Engineering Toolkit has six components.
Abstract: An interface should offer more facilities than just the ability to get data in and out. Each user has different preferences such as icons, mouse or prompt commands. A UK management consultancy has developed a user interface management system which gives the user a variety of options. At present, the Software Engineering Toolkit has six components, others are under development.

18 citations


Journal ArticleDOI
TL;DR: This paper discusses the implementation of a methodology as a special case of the management of change in the information systems industry.
Abstract: Many good information systems methodologies are not used to full effectiveness by the organizations that acquire them. This is often due to inadequate planning of the implementation of the methodology and inadequate consideration of the opportunities for organizational change that the methodology creates. This paper discusses the implementation of a methodology as a special case of the management of change.

18 citations


Journal ArticleDOI
TL;DR: The results of SEL investigations in the areas of design practices, coding techniques, test/verification methods, and computer utilization are summarized.
Abstract: A wealth of potentially beneficial software engineering tools, practices, and techniques has emerged in the past few years. However, many of these innovations have never been empirically validated. The Software Engineering Laboratory (SEL), a cooperative project of the National Aeronautics and Space Administration, Computer Sciences Corporation, and the University of Maryland, conducts an extensive technology evaluation program. The SEL studies the production of FORTRAN software for spacecraft navigation systems. This paper summarizes the results of SEL investigations in the areas of design practices, coding techniques, test/verification methods, and computer utilization. An earlier version of this paper appears in The Annals of XVIII Brazilian National Informatics Congress , September 1985.

Journal ArticleDOI
TL;DR: This paper summarizes the state-of-the-art of software reliability assessment, and briefly outlines several of the better-known software reliability models within a framework defined recently by D Miller and C T Gray.
Abstract: This paper summarizes the state-of-the-art of software reliability assessment, and briefly outlines several of the better-known software reliability models within a framework defined recently by D Miller and C T Gray. It also contains a guide to several arguments now going on concerning the validity of the whole approach, and a brief note about practical experience with software reliability models, though its main thrust is theoretical. It is intended to be readable by the novice, and also provide a map of the area for the experienced software engineer and reliability theoretician.

Journal ArticleDOI
TL;DR: This paper describes the many alternative granularities and explains the choices made for Marvel, a knowledge-based programming environment that assists software development teams in performing and coordinating their activities.
Abstract: Marvel is a knowledge-based programming environment that assists software development teams in performing and coordinating their activities. While designing Marvel, several granularity issues were discovered that have a strong impact on the degree of intelligence that can be exhibited, as well as on the friendliness and performance of the environment. The most significant granularity issues include the refinement of software entities in the software database and decomposition of the software tools that process the entities and report their results to the human users. This paper describes the many alternative granularities and explains the choices made for Marvel.

Journal ArticleDOI
TL;DR: The schema and component architectures of a prototype multidatabase management system, EDDS, which is used for research and teaching purposes in the authors' laboratories, are presented.
Abstract: This paper presents the schema and component architectures of a prototype multidatabase management system, EDDS, which is used for research and teaching purposes in the authors' laboratories. Many of the features are shared with other distributed database management systems but some novel features, such as the gateway feature which allows personal computers to share distributed database functionality, are particularly attractive in many of the specific real-world scenarios for which the system was designed. The system is written in C on Unix, and in PASCAL on DEC VMS, and several PC ports have been implemented.

Journal ArticleDOI
TL;DR: In this article, a UK company specializing in CAE products conducted a requirements analysis for its products and a procedure call paradigm for interfaces was used, with rigid standards for naming conventions.
Abstract: Software reuse is becoming an important factor to meet user demand. A UK company specializing in CAE products conducted a requirements analysis for its products. This led to a need to have more control over the building of software. A procedure call paradigm for interfaces was used, with rigid standards for naming conventions. The paper also discusses the Advisory Council for Applied Research and Development (ACARD) proposals on software reuse.

Journal ArticleDOI
TL;DR: An ESPRIT project researching intelligent help systems has implemented an easy-to-use user support system, called EuroHelp, which aims to help both the inexperienced and more experienced user by prompts, suggestions and advice.
Abstract: User support is important Many systems are still too complicated to use easily Manuals, instructors and computer-aided instruction are only part of the answer An ESPRIT project researching intelligent help systems (IHS) has implemented an easy-to-use user support system, called EuroHelp, which aims to help both the inexperienced and more experienced user by prompts, suggestions and advice It works in a similar way to a teacher-pupil situation

Journal ArticleDOI
TG Gough1

Journal ArticleDOI
TL;DR: Three areas of general weakness in design methodologies are discussed: business strategy, technological progress and organizational aspects.
Abstract: The existence of information systems is no longer a novelty. Two things now rightly attract critical management attention: how good the systems are, and how well they were produced. Thus the key to information systems innovation is the methodologies whereby they are built. Three areas of general weakness in design methodologies are discussed: business strategy, technological progress and organizational aspects.

Journal ArticleDOI
TL;DR: One UK software house shows how conflicts can be avoided through clearly defined project roles and adoption of a workable methodology.
Abstract: It is common these days to build prototype systems before delivering an expensive system. However, there can be much conflict between developer and user about timescales, adjustments and a deliverable end result. One UK software house shows how conflicts can be avoided through clearly defined project roles and adoption of a workable methodology.

Journal ArticleDOI
TL;DR: This paper describes ongoing work at the Institute dealing with the translation of the prototyping language SETL into the production language ADA, and discusses the reasons for selecting ADA as a target language.
Abstract: This paper describes ongoing work at the Institute dealing with the translation of the prototyping language SETL into the production language ADA. Funded in part by ESPRIT, contract number 1227 (1271), a preliminary version was presented at WG '87—Graphictheoretic Concepts in Computer Science, July 1987, Kloster Banz, FRG. In order to place this work in the proper context in software engineering, a brief overview is given of the relatively recent methodology of prototyping using executable specifications. Then the very high level language SETL is characterized and the programming environment Mentor is briefly introduced. Program transformations are also discussed. After discussing the reasons for selecting ADA as a target language, a translation of SETL's data will be discussed as well as control structures in ADA. The latter point will exemplify how this is done using the transformation of abstract syntax trees. Finally, a brief example of a SETL program and its translation into ADA will be given to convey the flavour of this translation.

Journal ArticleDOI
TL;DR: The goal of the PMS project is to produce an environment in which the intelligent online assessment of the design for large-scale ADA programming projects is provided, with focus on the representation of knowledge about the design process for an individual module.
Abstract: The goal of the PMS project is to produce an environment in which the intelligent online assessment of the design for large-scale ADA programming projects is provided. The focus is on the representation of knowledge about the design process for an individual module. Changes in pseudocode complexity are measured in terms of partial metrics. These metrics can take the designers inferences about the pseudocode program structure into account when assessing module complexity. Next, a model of the stepwise refinement process is given which demonstrates how pseudocode elaboration decisions can be modelled in partial metric terms. Finally, the decisions associated with each refinement step for 17 example refinements taken from the computer science literature are described using partial metrics.

Journal ArticleDOI
TL;DR: This paper explains how European commerical companies have implemented and marketed a product called Emeraude on the Bull and Sun workstations offering the standard public common tool interface (PCTI) defined in the PCTE specification.
Abstract: Portable common tool environment (PCTE) corresponds to the kernel of the IPSE, and is a crucial interface and environment for improving software productivity. This paper details the background of PCTE. It explains how European commerical companies have implemented and marketed a product called Emeraude on the Bull and Sun workstations offering the standard public common tool interface (PCTI) defined in the PCTE specification.

Journal ArticleDOI
TL;DR: A broad classification of the types of ill-formedness that can occur in person-machine communication is presented and a corpus of natural language dialogue is analysed from a variety of perspectives.
Abstract: This paper describes work carried out by the Communication Failure in Dialogue (CFID) project (ESPRIT contract no. AIP P527). The paper presents a broad classification of the types of ill-formedness that can occur in person-machine communication. A corpus of natural language dialogue is analysed from a variety of perspectives. Implications for the development of natural language dialogue interfaces are discussed.

Journal ArticleDOI
John Wordsworth1
TL;DR: Education and consultancy are key to the introduction of software engineering methods into the development process, and software engineering education must teach many new skills.
Abstract: Education and consultancy are key to the introduction of software engineering methods into the development process. Software engineering is a new activity, not just a way of writing better programs. It is demanding in its recording and communication requirements. Mathematics plays an important part. Software engineering education must teach many new skills. A workshop teaching these skills has been running over three years.

Journal ArticleDOI
Michael Dyer1
TL;DR: An approach to the definition and measurement of software reliability which is embodied in statistical testing concept is discussed and the statistical modelling techniques for the software case are described.
Abstract: This paper discusses an approach to the definition and measurement of software reliability which is embodied in statistical testing concept. Differences in the software and hardware reliability approaches are covered and the statistical modelling techniques for the software case are described. Statistical methods used in the random sampling of test inputs and the validation of model predictions are reviewed. Data from project experments is included to illustrate the application of the software reliability concepts in actual product developments.

Journal ArticleDOI
TL;DR: This paper discusses CASE tools, prototypes, and an integrated system development approach, based on an evolution of four successive phases: conceptualization, logical modelling, prototyping, and migration into a final system.
Abstract: Innovative computer-aided software engineering (CASE) tools and new software methodologies have had a significant impact on the software system development cycle. As a result, it is important to assess the variety of systems development methodologies and CASE products, and to construct principles of an integrated framework of methods and tools for rapid system development based on conceptual modelling and prototyping. This paper discusses CASE tools, prototyping, and an integrated system development approach, based on an evolution of four successive phases: conceptualization, logical modelling, prototyping, and migration into a final system. It also classifies CASE tools into categories and clarifies their relationship within the integrated framework. In addition, the different categories of prototypes are discussed.

Journal ArticleDOI
TL;DR: SAME is a flexible structured analysis tool and can be used as a vehicle for illustrating the importance of flexibility within a minimal fixed conceptual structure.
Abstract: A particular software tool, Structured Analysis Modelling Environment (SAME) is a member of family of executable system modelling tools. SAME is a flexible structured analysis tool and can be used as a vehicle for illustrating the importance of flexibility within a minimal fixed conceptual structure.

Journal ArticleDOI
TL;DR: It is argued that persistent programming provides a superior model for the support of a number of programming areas and a proposed standard for persistent programming systems is presented which provide support for data security at several levels: within process, interprocess interoperating system and inter computer.
Abstract: The persistent programming style supports secure object based computation. It is argued that persistent programming provides a superior model for the support of a number of programming areas. A proposed standard for persistent programming systems is presented which provide support for data security at several levels: within process, interprocess interoperating system and inter computer. Primitives to support data integrity at each level are presented. Estimates are given of the effective bandwidth of covert channels.

Journal ArticleDOI
TL;DR: The beneficial role of tension is discussed and how information systems can help or hinder this role is shown.
Abstract: Tension can manifest itself in a number of ways. Within a company or organization it can be either obstructive where conflict between departments, for example, causes breakdown, or it can be beneficial, fostering competition and challenge. This paper discusses the beneficial role of tension and shows how information systems can help or hinder this role.

Journal ArticleDOI
TL;DR: The system described is the Graphics Programming Environment, GRAPE, which includes advanced facilities in both language design techniques and interface design and handles them within a unified conceptual framework.
Abstract: A system based on established theoretical techniques which provides automatic code generation of interface management software is discussed and its implementation within a device-independent HCI design module. This makes the techniques readily available to a wider audience of system builders who are non-experts in language design techniques and interface design. The system described is the Graphics Programming Environment, GRAPE, which includes advanced facilities in both of these areas and handles them within a unified conceptual framework.