Osterweil, Leon

Loading...
Profile Picture
Email Address
Birth Date
Research Projects
Organizational Units
Job Title
Professor Emeritus, Department of Computer Science
Last Name
Osterweil
First Name
Leon
Discipline
Computer Sciences
Expertise
Introduction
Prof. Leon J. Osterweil is a Professor in the Department. of Computer Science, University. of Massachusetts Amherst. He is a Fellow of the ACM, has been an ACM Lecturer, has served on the editorial board of IEEE Software and on the board of ACM Transactions on Software Engineering and Methodology since its inception. His paper suggesting the idea of process programming was recognized as the Most Influential Paper of the 9th International Conference on Software Engineering (ICSE 9), awarded as a 10-year retrospective. Another paper on software tool integration, presented at ICSE 6, was runner-up for this honor. Prof. Osterweil was Chair of the Computer Science Department at the University of Colorado at Boulder, and of the Information and Computer Science Department of the University of California at Irvine. He was also the founding director of UCI's Irvine Research Unit in Software. Prof. Osterweil has been the Program Chair of many conferences, including ICSE 16. He is a director of the International Software Process Association, and was General Chair of SIGSOFT's Sixth International Symposium on the Foundations of Software Engineering. He has been a member of the Software Engineering Institute's Process Program Advisory Board since its inception. He is a member of the KLA-Tencor Software Technical Advisory Board and has been on similar boards for SAIC, MCC, and IBM. In addition he has consulted for such companies as AT&T, Boeing, and TRW.
Prof. Osterweil's research has centered on software analysis and testing, software tool integration, and software processes and process programming. He has been a Principal Investigator on a number of NSF and ARPA/DARPA projects over the past 25 years. He was one of the founding principals of the ARPA-funded Arcadia project, and a co-PI on a DARPA EDCS contract. He has done research and prototype development of testing and analysis systems for over 20 years. He was a principal designer of the DAVE static dataflow analysis system, developed in 1973, and of the Cecil/Cesar programmable dataflow analysis system in the late 1980's. He was a co-developer of the Odin object management system, and a principal in the Toolpack project that developed an early integrated set of tools for numerical software development. He was a leader of the Appl/A process programming language development activity, and currently leads the Little-JIL process programming language project. He has published and presented dozens of papers on these and other software engineering topics in leading venues worldwide. He has been a keynote speaker at a number of conferences, most notably the 9th International Conference on Software Engineering, Quality Week 96, CASE 92, and the Inaugural Symposium of JAIST, the Japan Advanced Institute for Software Technology. He is the Chair of the ACM Impact Project, and was General Chair of ICSE 2006.
His ICSE 9 paper has been awarded a prize as the most influential paper of ICSE 9, awarded as a 10-year retrospective. He has consulted for such organizations as IBM, Bell Laboratories, SAIC, MCC, and TRW, and is a member of SEI's Process Program Advisory Board. Prof. Osterweil is a Fellow of the ACM.
Name

Search Results

Now showing 1 - 10 of 44
  • PublicationOpen Access
    Rigorously defining and analyzing medical processes: An experience report
    (2008-01-01) Christov, Stefan; Chen, Bin; Avrunin, George S.; Clarke, Lori A.; Osterweil, Leon J.; Brown, David; Cassells, Lucinda; Mertens, Wilson
    This paper describes our experiences in defining the processes associated with preparing and administrating chemotherapy and then using those process definitions as the basis for analyses aimed at finding and correcting defects. The work is a collaboration between medical professionals from a major regional cancer center and computer science researchers. The work uses the Little-JIL language to create precise process definitions, the PROPEL system to specify precise process requirements, and the FLAVERS system to verify that the process definitions adhere to the requirement specifications. The paper describes how these technologies were applied to successfully identify defects in the chemotherapy process. Although this work is still ongoing, early experiences suggest that this approach can help reduce medical errors and improve patient safety. The work has also helped us to learn about the desiderata for process definition and analysis technologies, both of which are expected to be broadly applicable to other domains.
  • PublicationMetadata only
    Process definition language support for rapid simulation prototyping
    (2005-01-01) Raunak, MS; Osterweil, LJ
  • PublicationMetadata only
    FLAVERS: A finite state verification technique for software systems
    (2002-01-01) Cobleigh, JM; Clarke, LA; Osterweil, LJ
  • PublicationMetadata only
    What is software?
    (2008-01-01) Osterweil, LJ
    This paper suggests that there may be other types of software besides computer software. The paper identifies parallels between computer software and such other societal artifacts as laws, processes, recipes, and instructions (e.g. for driving and kitbuilding), and suggests that there are similar parallels in the ways in which these artifacts are built and evolved. The paper suggests that technologies for supporting the automation of computer software development and evolution might facilitate work in these other domains. It also suggests that successful approaches in these other domains could have useful and important application to the domain of computer software. It is further suggested that it might be important for discussions such as these to lead to a deeper understanding of the nature of “software”.
  • PublicationMetadata only
    Unifying microprocess and macroprocess research
    (2005-01-01) Osterweil, LJ
  • PublicationMetadata only
    EVOLVING EMBEDDED SYSTEMS
    (2010-01-01) Karsai, G; Massacci, F; Osterweil, L; Schieferdecker, I
    Embedded systems are engineered systems in which software components and computing are deeply integrated into a larger system that continuously interacts with its environment. Quite often, the actions of human participants are also an integral part. Such integrated systems have become an invisible yet crucial part of our environment, so their continuous and trouble-free evolution is of great importance because of our dependence on their services. In this article, the authors discuss four selected aspects of evolution in embedded systems: the different timescales of evolution, the coevolution of processes and systems, checking evolution at deployment time, and the evolution of tests used to check system correctness.
  • PublicationMetadata only
    Exception Handling Patterns for Process Modeling
    (2010-01-01) Lerner, BS; Christov, S; Osterweil, LJ; Bendraou, R; Kannengiesser, U; Wise, A
    Process modeling allows for analysis and improvement of processes that coordinate multiple people and tools working together to carry out a task. Process modeling typically focuses on the normative process, that is, how the collaboration transpires when everything goes as desired. Unfortunately, real-world processes rarely proceed that smoothly. A more complete analysis of a process requires that the process model also include details about what to do when exceptional situations arise. We have found that, in many cases, there are abstract patterns that capture the relationship between exception handling tasks and the normative process. Just as object-oriented design patterns facilitate the development, documentation, and maintenance of object-oriented programs, we believe that process patterns can facilitate the development, documentation, and maintenance of process models. In this paper, we focus on the exception handling patterns that we have observed over many years of process modeling. We describe these patterns using three process modeling notations: UML 2.0 Activity Diagrams, BPMN, and Little-JIL. We present both the abstract structure of the pattern as well as examples of the pattern in use. We also provide some preliminary statistical survey data to support the claim that these patterns are found commonly in actual use and discuss the relative merits of the three notations with respect to their ability to represent these patterns.
  • PublicationMetadata only
  • PublicationMetadata only
  • PublicationMetadata only
    Simulating Patient Flow through an Emergency Department Using Process-Driven Discrete Event Simulation
    (2009-01-01) Raunak, M; Osterweil, L; Wise, A; Clarke, LA ; Henneman, Philip L.
    This paper suggests an architecture for supporting discrete event simulations that is based upon using executable process definitions and separate components for specifying resources. The paper describes the architecture and indicates how it might be used to suggest efficiency improvements for hospital emergency departments (EDs). Preliminary results suggest that the proposed architecture provides considerable ease of use and flexibility for specifying a wider range of simulation problems, thus creating the possibility of carrying out a wide range of comparisons of different approaches to ED improvement. Some early comparisons suggest that the simulations are likely to be of value to the medical community and that the simulation architecture offers useful flexibility.