|
|
Pre-Conference Tutorials
Tutorial F1. Monday, September 22, Full Day
Inspecting Critical Software
David L. Parnas, McMaster University (Canada)
We describe a software inspection process based on the creation of precise (mathematical) documentation. The procedure assures that programs are studied systematically, a little bit at a time, and compared with an equally precise description of program requirements. An early version of the process presented was used by the Canadian Atomic Energy Control Board before approving the Darlington Nuclear Generating Station. The tutorial includes an explanation of the theory and a chance to apply it to a small example.
Dr. David L. Parnas holds the NSERC/Bell Industrial Research Chair in Software Engineering in the Faculty of Engineering at McMaster University in Canada. He is a Fellow of the Royal Society of Canada and the ACM. He has received honorary doctorates from the ETH Zurich (1986) and the Catholic University of Louvain (1996).
Tutorial H1. Monday, September 22, Morning
Software and Business Process Technology
Volker Gruhn, Universität Dortmund (Germany) and Wilhelm Schäfer, Universität Paderborn (Germany)
The tutorial presents the state-of-the-art technology in software process and business process technology and its exploitation in an industrial context. The technology presented includes languages, tools, and substrates (data base and operating system functionality) being used to model, analyze, and execute business and software processes. The industrial context is based on building, using, and selling a complete workflow environment including tools for modeling, analyzing, and executing workflows. This workflow environment has been built by especially exploiting available software process technology and adapting the technology to other business contexts. Besides presenting state-of-the-art technology, the tutorial demonstrates in particular that software process technology is applied successfully in the general workflow area.
Dr. Volker Gruhn has been chief technical officer of a German
software house called LION from 1992 to 1996. Since 1997 Volker Gruhn
has been associate professor in the computer science department at
the University of Dortmund.
Dr. Wilhelm Schäfer is a full professor in Computer Science at
the University of Paderborn, Germany. Prior appointments have been at
the University of Dortmund and McGill University in Montreal and a
position in industry where he served as the head of an R&D
department of a medium-size software house focussing on CASE tools
and information systems.
Tutorial H12. Monday, September 22, Morning
Distributed Software Architectures
Jeff Kramer and Jeff Magee, Imperial College, London (UK)
Software Architecture has been identified as a critical design concern when bridging the gap between system requirements and implementation, particularly for distributed software systems. The Software Architecture of a system describes its structure in terms of the constituent components and their interrelationships. It provides a clear and well-defined level at which to specify, understand, and analyse system designs, and forms the basis for system construction. This tutorial illustrates how an Architectural Description Language can be used for the specification, construction and behaviour analysis of distributed software systems.
Jeff Kramer is a Professor at Imperial College, and head of the
Distributed Software Engineering research section. His research
interests include requirements analysis techniques, design and
analysis methods, and software development environments for
distributed software systems.
Jeff Magee is assistant director of the Department of Computing at
Imperial College. His interests include software engineering of
parallel and distributed systems.
Tutorial H6. Monday, September 22, Morning
Introducing the UML
Stephen Morris, City University, London (UK)
This tutorial aims to provide a thorough introduction to the major
aspects of the Unified Modeling Language (UML). The UML is an
important step towards standardising representations for
object-oriented analysis and design, and facilitating communication
via object-oriented design artefacts, methods and research.
Participants can expect to learn about the nature and status of the
UML, its documentation, detailed notations and semantics, impact on
current working practices and availability of tools.
The tutorial assumes general familiarity with object-oriented
concepts. It is aimed at any professional wishing to widen the
intelligibility and usability of their work in this field.
Stephen Morris is a Research Fellow in the Department of Computer Science, City University, London. He has worked over the past year developing teaching material based on UML and incorporating it into existing approaches to object-oriented analysis and design.
Tutorial H3. Monday, September 22, Afternoon
A Primer on Empirical Studies
Dewayne E. Perry, Bell Laboratories (USA), Adam A. Porter, University of Maryland (USA), and Larry G. Votta, Bell Laboratories (USA) (Presented by Dewayne E. Perry)
We provide a sound empirical basis for software and process engineering and research by focusing on the basic characteristics of empirical studies. The key to empirical work is credibility - that is, their results have validity, are repeatable, and strive to show causality. Validity has three dimensions: internal (Is the study self-consistent?), external (How can I apply the results elsewhere?), and construct (Is the question important?). Repeatable studies are defined well enough that other experimenters can repeat it and retest its results (sometimes with different approaches and instruments). Finally, the ultimate goal of our studies is to identify causal mechanisms rather than simple correlations and thereby increase our knowledge of software engineering.
D. E. Perry, A. A. Porter, and L. G. Votta have a rich background in both software engineering research and practice, covering a broad range of technical and management aspects of engineering large and small software systems, and of software engineering research problems. In particular, they have been instrumental in forging a new approach to software engineering experimentation.
Tutorial H4. Monday, September 22, Afternoon
Technical Controlling in Software Projects
Christof Ebert, Alcatel Telecom (Belgium)
Technical controlling as the comprehensive discipline for including software metrics into practical project management are now accepted as a vital component of the software process. The tutorial offers field-proven techniques for improving software development and management effectiveness through sound software measurement. It starts by pulling together the different scopes of state-of-the-art metrics: Capability maturity assessment, goal-oriented measurement, software process and efficiency improvement, and quality management. A practical approach how to start or revitalise a software measurement program assisting developers and management in industry is outlined. Participants will learn about successful introduction of a metrics program.
Dr. Christof Ebert is currently Software Engineering Process Group Leader in Alcatel Telecom in Antwerp, Belgium. He co-ordinates the software metrics program of Alcatel Telecom's Switching Systems Division. He co-authored "Software Metrics in Industry" published by Springer, Germany in 1996.
Tutorial H5. Monday, September 22, Afternoon
Object-Oriented Enterprise Frameworks
Mohamed E. Fayad, University of Nevada, Reno (USA)
This topic has captured a great deal of attention in recent years since frameworks leverage, in practical terms, capital-intensive software investment through reuse and higher-level application programming interfaces, so that applications can be developed ten times faster. The emerging focus on object-oriented enterprise frameworks (OOEFs) in the OO community offers software developers both a new vehicle for reuse and a way for capturing the essence of successful architectures, components, policies, services, and programming mechanisms. OOEFs are important for software industry and academia at this time when software systems are becoming increasingly complex. I believe that the OOEFs will be at the core of the technology of the twenty-first century.
Dr. Mohamed Fayad is an Associate Professor & CE Faculty at University of Nevada. He has 15+ years of industrial experience and was actively involved in several OO projects. He is an IEEE Distinguished Speaker, Editorial Advisor & Columnist for CACM, EiC for IEEE-CS Press, guest editor of four theme issues, published articles, has given seminars at 50+ conferences, and is writing several books.
Tutorial H10. Monday, September 22, Afternoon
An Introduction to OMG/CORBA
Wolfgang Emmerich, City University, London (UK)
The Common Object Request Broker Architecture (CORBA) standard adopted by the Object Management Group is the industry standard middleware for heterogeneous and distributed object-oriented computing. Participants will be provided with an overview of the different constituents of CORBA, including the CORBA object model, the interface definition language, programming language bindings, dynamic invocation interface, interface repository and interoperability protocols. Although the main focus of the tutorial is on the standard and its rationales, participants will also be given a brief overview of the most important products implementing CORBA and a demo of a CORBA product will be provided.
Dr. Wolfgang Emmerich is a senior consultant of the OMG representative in Central Europe, LogOn Technology Transfer. He has given numerous CORBA training courses to the European software industry and is a consultant on the use of CORBA in the financial and engineering sector. Dr. Emmerich is also a Lecturer at City University, London, where he teaches distributed systems and software engineering.
Post-Conference Tutorials
Tutorial F2. Friday, September 26, Full Day
Requirements-Driven Management: A Planning Language for Software Engineering
Tom Gilb, Consultant (Norway)
Overview: Advanced methods for project planning. Based on
state-of-the-art requirements, design, analysis, and project
management languages and processes, for getting control over results.
The method can be used for software product development , IT system
development, and software organisational improvement.
Subjects: 1. ENDS: Requirements specification language: Quantifying
quality and benefits fully. 2. MEANS ANALYSIS: Design specification
and design impact estimation tables for controlling the means to meet
the quality and cost requirements. 3. EVOLUTIONARY PROJECT
MANAGEMENT: how to get remarkable project management control using
the evolutionary feedback method (IEEE and EIA J-STD-016-1995)
instead of the failure-prone traditional waterfall method.
Tom Gilb is an international consultant, teacher, and author in the software engineering field. He lives in Norway, and was born in California 1940, joined IBM 1958. He is the author of "Software Metrics" 1976 (basis for CMM Level 4), "Principles of Software Engineering Management " (1988) and "Software Inspection" (1993).
Tutorial H2. Friday, September 26, Morning
Reverse Engineering Strategies for Software Migration
Hausi A. Müller, University of Victoria (Canada)
The need for maintaining and improving software systems has risen dramatically over the past decade. Dealing with old software systems, which constitute billion-dollar assets to corporations and governments, has been recognized as a critical problem by industry, academia, and entrepreneurs. Migrating and reengineering involves capturing, preserving, and extending knowledge about software, analyzing and understanding software, and finally changing, improving, and evolving software. Reverse engineering approaches have been particularly useful in the reengineering arena. Reverse engineering is the process of generating new information about software such as synthesizing abstractions and generating different views. In particular, we will discuss Year 2000 migration issues.
Dr. Hausi Müller is a principal investigator of CSER, a Canadian, industry-lead software engineering consortium concentrating on migration problems in legacy systems. He served as program Co-Chair for ICSM-94, CASE-95, and WPC-96. He is on the Editorial Board of IEEE TSE.
Tutorial H7. Friday, September 26, Morning
Modelling and Analysis of Software Architecture
David Garlan and Robert Allen, Carnegie Mellon University (USA)
Software architecture is increasingly recognized as an important
level of design for software systems. Recently, a number of
architectural modelling notations and tools have reached a level of
maturity that they can provide tangible benefits to practicing
software architects.
Participants in this tutorial will learn about the goals, methods,
and capabilities of architectural modelling notations and analytic
techniques. This tutorial will provide both a comprehensive survey of
emerging approaches, as well as an in-depth treatment of a particular
architectural specification language (Wright). It will show how
architectural models can be used to analyze systems for consistency,
completeness, and other critical properties.
David Garlan is Associate Professor of Computer Science at
Carnegie Mellon University. He heads the ABLE Project, which focuses
on languages and environments for software architecture. He is
co-author of "Software Architecture: Perspectives on an Emerging
Discipline".
Robert Allen recently completed his Ph.D. in Computer Science at
Carnegie Mellon University. He has authored numerous papers on
software architecture, and was the primary designer for the Wright
Architectural Description Language.
Tutorial H8. Friday, September 26, Morning
Rigorous Requirements for High Assurance Systems - Evolution and Application of the SCR Method
Stuart Faulk, University of Oregon (USA) and Connie Heitmeyer, Naval Research Laboratory (USA)
Requirements remain the most intractable problem for many developers of complex, high assurance systems. This tutorial demonstrates how SCR, a formal requirements method, addresses key industry problems with requirements - reducing errors, decreasing risk, and lowering cost. The SCR method, its rationale, and empirical results are described with an emphasis on practical applications of the method. The SCR formal model and associated tools for the creation, analysis, and simulation of SCR requirements specifications are introduced. Effectiveness of the approach is illustrated with results from industry. The tutorial is designed both for industrial developers or technologists interested in practical techniques for creating correct requirements specifications and for researchers interested in formal methods for requirements specification and analysis.
Stuart Faulk is on the faculty of the University of Oregon's
Department of Computer and Information Science. Previously, he led
the development of the Consortium Requirements Engineering Method
(CoRE) and has successfully applied the SCR method in industry.
Connie Heitmeyer heads the Software Engineering Section of the Naval
Research Laboratory's High Assurance Computer Systems branch. She
leads research and development efforts in formal methods and CASE
tools supporting the construction of real-time, embedded
software.
Tutorial H9. Friday, September 26, Afternoon
Requirements Traceability
Anthony Finkelstein, City University, London (UK)
Requirements traceability is the ability to describe and follow information about the life of a requirement in both a forwards and backwards direction. It is fundamental to the management of change when developing and maintaining systems and software. Requirements traceability is a key problem confronting industry in the development of complex systems. This tutorial will provide a detailed look at requirements traceability and at practical techniques for supporting it. The tutorial will provide an overview of the "state-of-the-art". It will develop a thorough "problem analysis" which will assist in targeting support and constructing an action plan for managing requirements traceability in an industrial organisation.
Prof. Anthony Finkelstein is an internationally recognised
researcher in the area of requirements engineering. He has published
extensively in the area and on related topics in process modelling
and specification. He is Professor of Computer Science at City
University and Director of RENOIR, the EU funded "Network of
Excellence" in Requirements Engineering.
The tutorial has been jointly prepared with Dr. Orlena Gotel (UK
Defence Research Agency) and Dr. Richard Stevens (QSS Ltd.)
Tutorial H11. Friday, September 26, Afternoon
Industrial Object Engineering
Jürgen Ziegler, Nokia Research Center (Finland)
Because of the diverse needs of different application domains, an efficient method for software development has to be domain-specific, focusing on the important aspects of its intended application domain. Nokia's telecommunication products are embedded real-time systems. Hence, Nokia applies a method, called Octopus, which departs from many other methods, because it bridges the gap between object-oriented methods and embedded real-time systems. Many years of experience in the development of embedded real-time systems have made valuable contributions to it. The attendee will learn about this method thus gaining industrial insights and competitive advantage. For further information see "Object-Oriented Technology for Real-Time Systems", Prentice-Hall, 1996, or browse the public web page at: http://www.nokia.com/company/nrc/octopus.html.
Jürgen Ziegler developed real-time software for chemical instruments and managed development projects for almost ten years at Hewlett Packard. Since joining the Nokia Research Center in 1990, he has promoted object-oriented technology for embedded systems. He co-authored "Object-Oriented Technology for Real-Time Systems", Prentice Hall, 1996.