4,951 papers · page 184 of 248
David Coppit, Kevin J. Sullivan
We present Galileo, an innovative engineering modeling and analysis tool built using an approach we call package-oriented programming (POP). Galileo represents an ongoing evaluation of the POP approach, where multiple large, architecturally coherent components are tightly integra…
James C. Corbett, Matthew B. Dwyer, John Hatcliff, Shawn Laubach, Corina S. Pasareanu, Robby, Hongjun Zheng
Finite-state verification techniques, such as model checking, have shown promise as a cost-effective means for finding defects in hardware designs. To date, the application of these techniques to software has been hindered by several obstacles. Chief among these is the problem of…
James C. Corbett, Matthew B. Dwyer, John Hatcliff, Robby
Despite emerging tool support for assertion-checking and testing of object-oriented programs, providing convincing evidence of program correctness remains a difficult challenge. This is especially true for multi-threaded programs. Techniques for reasoning about finite-state syste…
Ivica Crnkovic, Magnus Larsson
Building software systems with reusable components brings many advantages. The development becomes more efficient, the realibility of the products is enhanced, and the maintenance requirement is significantly reduced. Designing, developing and maintaining components for reuse is,…
Bill Curtis
This paper describes lessons learned during the author's five lives in technology transfer. The author's first life came in General Electric's Space Division where he performed research on software metrics and structured programming, and transferred technology to the pages of tec…
Bill Curtis
No abstract available.
Yousef H. Daabaj
One of the major and continuing problems for the information technology community is the tendency to create technically excellent and advanced products, which do not meet the needs of the real users. Capturing and analysis of user requirements and tasks are concepts that have fre…
Zhe Dang, Richard A. Kemmerer
ASTRAL is a high-level formal specification language for real-time systems. It has structuring mechanisms that allow one to build modularized specifications of complex real-time systems with layering. Based upon the ASTRAL symbolic model checler reported in [13], three approximat…
Ray Dawson
Many employers find that graduates and sandwich students come to them poorly prepared for the every day problems encountered at the workplace. Although many university students undertake team projects at their institutions, an education environment has limitations that prevent th…
John C. Dean
No abstract available.
Giovanni Denaro
A study is carried out to investigate whether a correlation exists between the fault-proneness of the software and the measurable attributes of the code and of the testing. A suitable variety of case studies is selected to investigate a methodology applicable to classes of homoge…
Jing Dong
The design of a large component-based software system typically involves the composition of different components. The lack of rigorous reasoning about the correctness of composition is an important barrier towards the promise of “plug and play”. In this paper, we describe a rigor…
Anke Drappa, Jochen Ludewig
Simulation is frequently used for training in many application areas like aviation and economics, but not in software engineering. We present the SESAM project which focuses on software engineering education using simulation. In the SESAM project a simulator was developed. Using …
Alastair Dunsmore, Marc Roper, Murray Wood
Software inspection is now widely accepted as an effective technique for defect detection. This acceptance is largely based on studies using procedural program code. This paper presents empirical evidence that raises significant questions about the application of inspection to ob…
Stephen Edwards
This article briefly presents a case study in on-line asynchronous course delivery. It sketches the design of a graduate computer science course entitled “Software Design and Quality,” illustrating an effective approach to distance learning that accommodates learning by doing, te…
Wolfgang Emmerich, Cecilia Mascolo, Anthony Finkelstein
We demonstrate how XML and related technologies can be used for code mobility at any granularity, thus overcoming the restrictions of existing approaches. By not fixing a particular granularity for mobile code, we enable complete programs as well as individual lines of code to be…
Michael D. Ernst, Adam Czeisler, William G. Griswold, David Notkin
Explicitly stated program invariants can help programmers by characterizing certain aspects of program execution and identifying program properties that must be preserved when modifying code. Unfortunately, these invariants are usually absent from code. Previous work showed how t…
Stuart R. Faulk
Many educational institutions are developing graduate programs in software engineering targeted to working professionals. These educators face the dilemma of providing programs with both industrial relevance and academic excellence. This paper describes our experience and lessons…
Roy T. Fielding, Richard N. Taylor
The World Wide Web has succeeded in large part because its software architecture has been designed to meet the needs of an Internet-scale distributed hypermedia system. The modern Web architecture emphasizes scalability of component interactions, generality of interfaces, indepen…
Garry Froehlich, Amr Kamel, Paul G. Sorenson
Object-oriented application frameworks are becoming an increasingly popular part of software development but there has been little work on studying how they are actually used. An object-oriented application framework comprises a design and an object-oriented implementation of tha…