By Topic

Software Engineering, IEEE Transactions on

Issue 5 • Date Sept. 1979

Filter Results

Displaying Results 1 - 18 of 18
  • IEEE Transactions on Software Engineering - Table of contents

    Page(s): c1
    Save to Project icon | Request Permissions | PDF file iconPDF (416 KB)  
    Freely Available from IEEE
  • IEEE Computer Society

    Page(s): c2
    Save to Project icon | Request Permissions | PDF file iconPDF (297 KB)  
    Freely Available from IEEE
  • Development and Structure of an X.25 Implementation

    Page(s): 429 - 439
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (2685 KB)  

    This paper describes experience with an implementation of the X25 communication protocols for accessing public data networks. Ihe implementation effort is characterized by: 1) the development of a formalized protocol specification on which all further implementation work is based, and 2) the use of Concurrent Pascal as the implementation language. The main features of the formalized protocol specification are given, and a method for deriving a protocol implementation based on parallel processes, monitors, and classes is explained. The overall structure of the system and the step-wise refinements leading to the complete implementation are discussed. Some comments on the possible implementation on multiple microprocessors are also given. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Distributed Simulation: A Case Study in Design and Verification of Distributed Programs

    Page(s): 440 - 452
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3896 KB)  

    The problem of system simulation is typically solved in a sequential manner due to the wide and intensive sharing of variables by all parts of the system. We propose a distributed solution where processes communicate only through messages with their neighbors; there are no shared variables and there is no central process for message routing or process scheduling. Deadlock is avoided in this system despite the absence of global control. Each process in the solution requires only a limited amount of memory. The correctness of a distributed system is proven by proving the correctness of each of its component processes and then using inductive arguments. The proposed solution has been empirically found to be efficient in preliminary studies. The paper presents formal, detailed proofs of correctness. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An Exercise in Automatic Program Verification

    Page(s): 453 - 458
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (2056 KB)  

    This paper describes in some detail the computer-aided proof of a permutation program obtained using the Stanford Pascal verifier. We emphasize the systematic way in which a proof can be developed from an intuitive understanding of the program. The paper fillustrates the current state of the art in automatic program verification. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Conditional Capabilities

    Page(s): 458 - 464
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3288 KB)  

    Protection in capability-based operating systems is comsidered. The concept of a conditional capability, which is a generalization of a conventional capability, is proposed. The conditional capability can only be exercised when certain conditions relating to the context of its use are satisfied. It is shown that such capabilities form a basis upon which features such as domains of protection, revocation, and type extension can be built. The implementation of these features can be isolated into sepuate modules thus leaving the basic protection module uncluttered and simplifying the overall structure of the system. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Deadlock Detection and Avoidance for Shared Logical Resources

    Page(s): 465 - 471
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (2552 KB)  

    Logical resources are defined as shared passive entities that can be concurrently accessed by multiple processes. Concurrency restrictions depend upon the mode or manner in which a process may manipulate a resource. Models incorporating these single unit resources can be used to analyze information locking for consistency and integrity purposes. Mode compatibility is defined and used to derive dead-lock detection and avoidance methods. These methods generalize well-known deadlock results for single unit resources by permitting greater concurrency while still guaranteeing data consistency. This model is applicable to the standard shared (read-only) and exclusive (read-write) access modes as well as a useful subset of those proposed in the CODASYL DBMS report. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Evaluating and Improving Recursive Descent Parsers

    Page(s): 472 - 480
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (2064 KB)  

    Time formulas are symbolic formulas which express the execution time of a program as a function of its input data and of variables representing the time to execute individual operations (e.g., push, pop, transfer, etc.). It is shown that in many cases the time formulas for recursive descent parsers may be generated automatically by a simple inspection of the parser code. These time formulas are instrumental in estimating the gains attained by various types of optimizations. Several of these optimizations are presented and their efficiency gains are estimated. A parser for a simple programming language is generated, optimized, and evaluated using the proposed techniques. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • CSDL: A Conceptual Schema Definition Language for the Design of Data Base Applications

    Page(s): 481 - 496
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3408 KB)  

    A language to support the incremental design of the conceptual schemata of data bases is presented. Abstractions are expressed in terms of high-evel constructs and operations on these abstractions allow the definition of other abstractions. Both abstractions and operations on them are totally independent from the underlying internal representation of the schema, which is created consistently by applying the operators of the language. In addition, the language offers a. number of support facilities for type checking of relationships and graphical displays of the conceptual schemata for easier understanding. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Dynamic Software Science with Applications

    Page(s): 497 - 504
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (2304 KB)  

    Two disciplines have been developed during the past few years for the study of computer software. Software physics has as its purpose the analysis of execution characteristics of programs. Basic measures of software work, time, and shortage occupancy are used to derive measures such as power, capacity usage, and storage work, with applications to the choice of processor and device speeds. Software science is related to information theory. Occurrences of operators and operands in the text of programs are counted to provide measures for a number of relationships; among them are estimates for program length, program and language level, and programming time. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Quantitative Estimates of Debugging Requirements

    Page(s): 504 - 514
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3768 KB)  

    A major portion of the problems associated with software development might be blamed on the lack of appropriate tools to aid in the planning and testing phases of software projects. As one step towards solving this problem, this paper presents a model to estimate the number of bugs remaining in a system at the beginning of the testing and integration phases of development. The model, based on software science metrics, was tested using data currently available in the literature. Extensions to the model are also presented which can be used to obtain such estimates as the expected amount of personnel and computer time required for project validation. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Tidy Drawings of Trees

    Page(s): 514 - 520
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3064 KB)  

    Trees are extremely common data structures, both as internal objects and as models for program output. But it is unusual to see a program actually draw trees for visual inspection. Although part of the difficulty lies in programming graphics devices, most of the problem arises because naive algorithms to draw trees use too much drawing space and sophisticated algorithms are not obvious. We survey two naive tree drawers, formalize aesthetics for tidy trees, and descnbe two algorithms which draw tidy trees. One of the algorithms may be shown to require the minimum possible paper width. Along with the algorithms proper, we discuss the reasoning behind the algorithm development. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • On Path Cover Problems in Digraphs and Applications to Program Testing

    Page(s): 520 - 529
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3984 KB)  

    In this paper various path cover problems, arising in program testing, are discussed. Dilworth's theorem for acyclic digraphs is generalized. Two methods for fmding a minimum set of paths (minimum path cover) that covers the vertices (or the edges) of a digraph are given. To model interactions among code segments, the notions of required pairs and required paths are introduced. It is shown that rmding a minimum path cover for a set of required pairs is NP-hard. An efficient algorithm is given for findng a minimum path cover for a set of required paths. Other constrained path problems are contsidered and their complexities are discussed. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An Approximate Analytical Method for General Queueing Networks

    Page(s): 530 - 538
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1768 KB)  

    In this paper, we present an approximate solution for the asymptotic behavior of relatively general queueing networks. In the particular case of networks with general service time distributions (i.e., fixed routing matrix, one or many servers per station, FIFO discipline), the application of the method gives relatively accurate results in a very short time. The approximate stationary state probabilities are identified with the solution of a nonlinear system. The proposed method is applicable to a larger class of queueing networks (dependent routing matrix, stations with fimite capacity, etc.). In this case, the structure of the network studied must satisfy certain decomposability conditions. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Full text access may be available. Click article title to sign in or learn about subscription options.
  • Call for Papers

    Page(s): 538
    Save to Project icon | Request Permissions | PDF file iconPDF (263 KB)  
    Freely Available from IEEE
  • IEEE Computer Society Publications

    Page(s): 538-c
    Save to Project icon | Request Permissions | PDF file iconPDF (224 KB)  
    Freely Available from IEEE
  • Announcing... The IEEE Computer Society's Tutorial Week79

    Page(s): 538-d
    Save to Project icon | Request Permissions | PDF file iconPDF (1992 KB)  
    Freely Available from IEEE

Aims & Scope

The IEEE Transactions on Software Engineering is interested in well-defined theoretical results and empirical studies that have potential impact on the construction, analysis, or management of software. The scope of this Transactions ranges from the mechanisms through the development of principles to the application of those principles to specific environments. Specific topic areas include: a) development and maintenance methods and models, e.g., techniques and principles for the specification, design, and implementation of software systems, including notations and process models; b) assessment methods, e.g., software tests and validation, reliability models, test and diagnosis procedures, software redundancy and design for error control, and the measurements and evaluation of various aspects of the process and product; c) software project management, e.g., productivity factors, cost models, schedule and organizational issues, standards; d) tools and environments, e.g., specific tools, integrated tool environments including the associated architectures, databases, and parallel and distributed processing issues; e) system issues, e.g., hardware-software trade-off; and f) state-of-the-art surveys that provide a synthesis and comprehensive review of the historical development of one particular area of interest.

Full Aims & Scope

Meet Our Editors

Editor-in-Chief
Matthew B. Dwyer
Dept. Computer Science and Engineering
256 Avery Hall
University of Nebraska-Lincoln
Lincoln, NE 68588-0115 USA
tseeicdwyer@computer.org