Tuesday Morning

8:30 am -10:00 am
Convention Center — Ballroom B-C
Welcome and Introduction
Conference Chair:

Linda Northrop, Software Engineering Institute

Program Chair:
John Vlissides, IBM T.J. Watson Research Center

Keynote Address
Success and Failure in Design
Henry Petroski, A.S. Vesic Professor of Civil Engineering and Professor of History, Duke University

This illustrated lecture will present a historical perspective on the interrelationship between success and failure in design. Case studies will range from ancient Greek and Roman construction practices to modern American packaging and merchandizing, emphasizing the timelessness and cultural independence of design principles as applied to objects of all kinds.

Henry Petroski is the Aleksandar S. Vesic Professor of Civil Engineering and a professor of history at Duke University. Before moving to Duke in 1980, he was on the faculty of the University of Texas at Austin and on the staff of Argonne National Laboratory.

Petroski has written on many aspects of engineering and technology, including design, success and failure, error and judgment, the history of bridges, and the use of case studies in education and practice. His books on these subjects, which are intended for professional engineers and laypersons alike, include To Engineer Is Human, which was adapted for a BBC-television documentary; The Pencil; The Evolution of Useful Things; Design Paradigms; Engineers of Dreams; Invention by Design; and Remaking the World. Among the languages into which his books have been translated are Chinese, Finnish, German, Hebrew, Korean, Japanese, and Spanish. His latest book, a history of books as artifacts and the structures that have housed them from ancient times to the computer age, is entitled The Book on the Bookshelf.

In addition to publishing the usual technical articles in the refereed journals of his field, Petroski has published numerous articles and essays in newspapers and magazines, including the New York Times, Washington Post, Wall Street Journal, and Scientific American. Since 1991 he has been writing the engineering column in the bimonthly magazine American Scientist, and since 2000 has been writing a column on the engineering profession for ASEE Prism.

Henry Petroski has been a Guggenheim Fellow, a National Endowment for the Humanities Fellow, and a Fellow of the National Humanities Center. Among his other honors are the Ralph Coats Roe Medal from the American Society of Mechanical Engineers, the Civil Engineering History and Heritage Award from the American Society of Civil Engineers, honorary degrees from Clarkson University, Trinity College (Hartford, Conn.) and Valparaiso University, and distinguished engineering alumnus awards from Manhattan College and the University of Illinois at Urbana-Champaign. He is a Fellow of the American Society of Civil Engineers and the Institution of Engineers of Ireland and is a member of the National Academy of Engineering.

10:30 am -12:00 pm
Convention Center — Ballroom B-C
Session A
Somewhere Between Anarchy and Monarchy: Choosing the Appropriate Process for Your Next Project.
Moderator: John Daniels, Syntropy, Ltd.

The rise of the agile process movement has received a good deal of attention lately, but many questions remain regarding when such process models are appropriate. Determining which process model is the right one for your project is a critical factor in success. In this panel, the topic of when and why a given process model should be applied will be discussed. To maximize the value of the discussion, panelists will be asked to respond to specific questions based on real-world issues.
Scheduled panelists:

Ron Jeffries, Object Mentor, Inc.
Craig Larman, Valtech
Ivar Jacobson, Rational Software Corp.
Alistair Cockburn, Humans and Technology
Jim Highsmith, Information Architects, Inc.
Bob Marcus, Rogue Wave

Convention Center — Ballroom A
Session B
Papers: Languages I
Chair: Joseph Kiniry, California Institute of Technology

The papers in this session are excellent examples of theory successfully applied to OO problems. Findler and Felleisen address contract soundness with respect to annotated Java in its various incarnations. Their results will be relevant to anyone applying formal specification to Java using tools like iContract, JML, and Jass. Ancona, et al., solidify the type theoretic and algebraic foundations of Java’s semantics, a highly pertinent area given the popularity of that language. Finally, Bachrach shows how to do macros “right” in Java—à la Dylan and Lisp, with several new twists.

Contract Soundness for Object-Oriented Languages
Robert Bruce Findler, Rice University
Matthias Felleisen, Rice University and Northeastern University

A Core Calculus for Java Exceptions
Davide Ancona, DISI - Università di Genova
Giovanni Lagorio, DISI - Università di Genova
Elena Zucca, DISI - Università di Genova

The Java Syntactic Extender
Jonathan Bachrach, MIT AI Lab
Keith Playford, Functional Objects, Inc.

Convention Center — Ballroom D
Session C
Practitioner Reports: Distributed Systems
Chair: Gerard Meszaros, ClearStream Consulting

Distributed architectures are both a blessing and a curse: With careful planning and design, they can help with reliability and scalability, but “getting it right” is no small challenge. In this session, two reports describe how distributed systems were successfully developed to provide scalable business applications, and the third author presents an approach for certifying performance of a distributed system.

SPCQuote: The Evolution of a Client Application to Distributed Service Processing
Karen Hope, The St. Paul, Inc.
John Finegan,
The St. Paul, Inc.

The Business Foundation System (BFS) writes and manages small business commercial insurance policies for The St. Paul Fire & Marine insurance companies. The original system, deployed in 1996, was a client-based VSE Smalltalk application. By the time of its third release, it supported 120 internal users in three locations. Since its deployment the system has had over 30 subsequent releases to increase and improve its functionality, the most notable of these occurring with BFS’s SPCQuote release in April 2000. SPCQuote significantly changed both the system architecture and its development environment and satisfied many disparate key business objectives. Today the system supports over 7500 users in over 3200 locations. It manages over 120,000 policies with policy premiums totaling over $500,000,000. This paper describes the evolution of the smart-client VSE Smalltalk application to an n-tier distributed service model supported by two Smalltalk dialects, Java servlets running within Websphere, and XML as a means of data abstraction.

Business Automation with Distributed Objects
Jason Rogers, Ontario Teachers’ Pension Plan Board
Dean Mackie, Ontario Teachers’ Pension Plan Board
Angus MacArthur, Ontario Teachers’ Pension Plan Board

A large financial institution was faced with the challenge of having to process twice the normal yearly workload without increasing their workforce. The challenge was met by reusing components of an existing object-oriented application in a distributed, fully automated configuration. That solution is discussed, along with subsequent system architecture evolution, resulting improvements to development practices, and the ripple effects of changing the culture of senior management that it was designed to serve.

Certifying Component Performance in Synchronous Distributed Client/Server Systems
Dong-Lih Denq, AT&T-Network Services
Irwin Dunietz, AT&T-Network Services
John Eddy, AT&T-Network Services
Willa Ehrlich, AT&T-Network Services
Don Gerth, AT&T-Network Services
Brian Larson, AT&T-Network Services
Geetha Sivaprasad, AT&T-Network Services

This paper describes an approach for certifying performance of a distributed system that utilizes synchronous interprocess communication. The system is composed of multiple managed objects implemented in object server processes (i.e., components) that communicate via CORBA middleware. Component performance is certified empirically through “pairwise” testing that emphasizes interactions between a component and its lower-level servers. The applicability of this approach is demonstrated for an AT&T provisioning system.

Jump to: Tuesday morning || afternoon Wednesday morning || afternoon Thursday morning || afternoon
Full descriptions of entire Technical Program

Back To Final Program