Lifecycle Environments

A Retrospective View of the Contributions of Leon J. Osterweil

Abstract

Throughout his career, Leon Osterweil has made significant contributions that have impacted the research and state-of-the-practice on development environments. Initially his focus was on programming environments, mostly addressing issues needed to support his work in program analysis. Later his focus expanded to software lifecycle issues, such as flexible component interaction models, efficient system regeneration, and the use of process definitions as the major coordination mechanism to orchestrate the interactions among collections of tools, hardware devices, and human agents. His current research continues to address environment issues, but now the emphasis is on supporting continuous process improvement by providing process languages, execution, simulation, and an assortment of analysis tools for evaluating the effectiveness, safety, and vulnerabilities of processes for a range of domains, from healthcare, to digital government, to scientific workflow.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    Andrews T, Harris C (1987) Combining Language and Database Advances in an Object-Oriented Development Environment. In: Object-Oriented Programming Systems Languages and Applications Google Scholar
  2. [2]
    Atkinson M, Bancilhon F, DeWitt D, Dittch K, Maier D, Zdonik S (1989) The Object-Oriented Database System Manifesto. In: First International Conference on Deductive and Object-Oriented Databases Google Scholar
  3. [3]
    Atkinson MP, Bailey PJ, Chisholm KJ, Cockshott WP, Morrison R (1983) An Approach to Persistent Programming. The Computer Journal 26(4):360–365 MATHGoogle Scholar
  4. [4]
    Avrunin GS, Clarke LA, Osterweil LJ, Christov SC, Chen B, Henneman EA, Henneman PL, L. C, Mertens W (2010) Experience Modeling and Analyzing Medical Processes: UMass/Baystate Medical Safety Project Overview. In: First Intl. Health Informatics Symp. Google Scholar
  5. [5]
    Balzer RM (1969) Exdams–Extendable Debugging and Monitoring System. In: 1919 Spring Joint Computer Conference Google Scholar
  6. [6]
    Buxton J (1980) Requirements for Ada Programming Support Environments. Department of Defense Google Scholar
  7. [7]
    Cass AG, Lerner BS, McCall EK, Osterweil LJ, Sutton Jr. SM, Wise A (2000) Little-JIL/Juliette: A Process Definition Language and Interpreter, demonstration paper. In: 22nd International Conference on Software Engineering Google Scholar
  8. [8]
    Chen B, Avrunin GS, Clarke LA, Osterweil LJ (2006) Automatic Fault Tree Derivation from Little-JIL Process Definitions. In: Softw. Process Workshop and Process Sim. Workshop Google Scholar
  9. [9]
    Chen B, Avrunin GS, Henneman EA, Clarke LA, Osterweil LJ, Henneman PL (2008) Analyzing Medical Processes. In: Thirtieth Intl. Conf. on Software Engineering (Reprinted as Chapter 21) Google Scholar
  10. [10]
    Clarke LA, Avrunin GS, Osterweil LJ (2008) Using Software Engineering Technology to Improve the Quality of Medical Processes, Invited Keynote. In: Thirtieth Intl. Conf. on Software Engineering Google Scholar
  11. [11]
    Clarke LA, Gaitenby A, Gyllstrom D, Katsh E, Marzilli M, Osterweil LJ, Sondheimer NK, Wing L, Wise A, Rainey D (2006) A Process-Driven Tool to Support Online Dispute Resolution. In: 2006 International Conference on Digital Government Research Google Scholar
  12. [12]
    Clarke LA, Osterweil LJ, Avrunin GS (2010) Supporting Human-Intensive Systems. In: FSE/SDP Workshop on the Future of Software Engineering Research Google Scholar
  13. [13]
    Clarke LA, Richardson DJ, Zeil SJ (1988) TEAM: A Support Environment for Testing Evaluation and Analysis. In: SIGSOFT ’88: 3rd Symp. on Softw. Dev. Environments Google Scholar
  14. [14]
    Clemm GM, Osterweil LJ (1990) A Mechanism for Environment Integration. ACM Transactions on Programming Languages and Systems 12 (1):1–25 (Reprinted as Chapter 12) CrossRefGoogle Scholar
  15. [15]
    Cobleigh RL, Avrunin GS, Clarke LA (2006) User Guidance for Creating Precise and Accessible Property Specifications. In: 14th Intl. Symp. on Foundations of Softw. Engineering Google Scholar
  16. [16]
    Deming WE (1982) Out of the Crisis. MIT Press, Cambridge Google Scholar
  17. [17]
    Dwyer MB, Clarke LA, Cobleigh JM, Naumovich G (2004) Flow Analysis for Verifying Properties of Concurrent Software Systems. ACM Trans. on Softw. Engineering and Methodology 13 (4):359–430 CrossRefGoogle Scholar
  18. [18]
    Eclipse-an Open Development Platform (2007) http://www.eclipse.org/.
  19. [19]
    Ellison AM, Osterweil LJ, Hadley JL, Wise A, Boose E, Clarke LA, Foster D, Hanson A, Jensen D, Kuzeja P, Riseman E, Schultz H (2006) Analytic Webs Support the Synthesis of Ecological Data Sets. Ecology 87 (6):1345–1358 CrossRefGoogle Scholar
  20. [20]
    Feldman SI (1979) MAKE-A Program for Maintaining Computer Programs. Software - Practice and Experience 9 (4):255–265 CrossRefMATHGoogle Scholar
  21. [21]
    Fosdick LD, Osterweil LJ (1976) Data Flow Analysis in Software Reliability. ACM Computing Surveys 8 (3):305–330 (Reprinted as Chapter 5) CrossRefMATHMathSciNetGoogle Scholar
  22. [22]
    Gosling J, Joy B, Steele GL (1996) The Java Language Specification. Addison-Wesley MATHGoogle Scholar
  23. [23]
    Habermann AN, Notkin D (1986) Gandalf: Software Development Environments. IEEE Transactions on Software Engineering SE-12 (12):1117–1127 Google Scholar
  24. [24]
    Heimbigner D (1992) Experiences with an Object-Manager for A Process-Centered Environment. In: Eighteenth International Conference on Very Large Data Bases Google Scholar
  25. [25]
    Henneman EA, Avrunin GS, Clarke LA, Osterweil LJ, Andrzejewski CJ, Merrigan K, Cobleigh R, Frederick K, Katz-Basset E, Henneman PL (2007) Increasing Patient Safety and Efficiency in Transfusion Therapy Using Formal Process Definitions. Transfusion Medicine Reviews 21(1):49–57 CrossRefGoogle Scholar
  26. [26]
    Kadia R (1992) Issues Encountered in Building a Flexible Software Development Environment: Lessons from the Arcadia Project. In: 5th Symp. on Softw. Dev. Environments (Reprinted as Chapter 14) Google Scholar
  27. [27]
    Lamb DA (1987) IDL: Sharing Intermediate Representations. ACM Transactions on Programming Languages and Systems 9 (3):297–318 CrossRefGoogle Scholar
  28. [28]
    Maybee MJ, Heimbigner DM, Osterweil LJ (1996) Multilanguage Interoperability in Distributed Systems. In: 18th International Conference on Software Engineering Google Scholar
  29. [29]
    Medvidovic N, Oreizy P, Robbins JE, Taylor RN (1996) Using Object-Oriented Typing to Support Architectural Design in the C2 Style. In: 4th Symposium on the Foundations of Software Engineering Google Scholar
  30. [30]
    Medvidovic N, Taylor RN (2000) A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering Google Scholar
  31. [31]
    Morrison R, Dearle A, Bailey PJ, Brown AL, Atkinson MP (1985) The Persistent Store as an Enabling Technology for Project Support Environments. In: 8th Intl. Conf. on Software Engineering Google Scholar
  32. [32]
    OMG (1995) CORBA 2.0/Interoperability, vol OMG TC Document 95.3.xx. Revised 1.8 edn. Object Management Group, Framingham, MA Google Scholar
  33. [33]
    Osterweil LJ (1983) Toolpack–An Experimental Software Development Environment Research Project. IEEE Transactions on Software Engineering SE-9 (6):673–685 (Reprinted as Chapter 11) CrossRefGoogle Scholar
  34. [34]
    Osterweil LJ (1987) Software Processes are Software, Too. In: Ninth International Conference on Software Engineering (Reprinted as Chapter 17) Google Scholar
  35. [35]
    Osterweil LJ (1997) Improving the Quality of Software Quality Determination Processes. In: The Quality of Numerical Software: IFIP TC2/WG2.5 Working Conference on the Quality of Numerical Software Assessment and Enhancement. Chapman & Hall London Google Scholar
  36. [36]
    Osterweil LJ, Clarke LA, Ellison AM, Boose ER, Podorozhny R, Wise A (2010) Clear and Precise Specification of Scientific Processes. IEEE Transactions on Automation Science and Engineering 7 (1):189–195 CrossRefGoogle Scholar
  37. [37]
    Osterweil LJ, Fosdick LD (1976) DAVE–A Validation Error Detection and Documentation System for Fortran Programs. Software Practice and Experience 6 (4):473–486 CrossRefMATHGoogle Scholar
  38. [38]
    Perry DE, Wolf AL (1992) Foundations for the Study of Software Architecture. ACM SIGSOFT Software Engineering Notes 17 (4):40–52 CrossRefGoogle Scholar
  39. [39]
    Purtilo J (1985) Polylith: An Environment to Support Management of Tool Interfaces. In: SIGPLAN ’85 Symposium on Language Issues in Programming Environments Google Scholar
  40. [40]
    Purtilo JM (1994) The POLYLITH Software Bus. ACM Transactions on Programming Languages and Systems 16 (1):151–174 CrossRefGoogle Scholar
  41. [41]
    Raunak MS, Osterweil LJ, Wise A, Clarke LA, Henneman PL (2009) Simulating Patient Flow through an Emergency Department Using Process-Driven Discrete Event Simulation. In: 31st Intl. Conf. on Software Engineering Worksh. on Softw. Engineering in Health Care Google Scholar
  42. [42]
    Reiss SP (1985) PECAN: Program Development Systems that Support Multiple Views. IEEE Transactions on Software Engineering SE-11 (3):276–285 CrossRefGoogle Scholar
  43. [43]
    Reiss SP (1990) Connecting Tools Using Message Passing in the FIELD Environment. IEEE Software 7 (4):57–67 CrossRefMathSciNetGoogle Scholar
  44. [44]
    Reps TW, Teitelbaum T (1984) The Synthesizer Generator. In: SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments Google Scholar
  45. [45]
    Richardson DJ, Aha SL, Osterweil LJ (1989) Integrating Testing Techniques Through Process Programming. In: SIGSOFT 3rd Symp on Testing, Analysis, and Verification Google Scholar
  46. [46]
    Richardson DJ, O’Malley TO, Moore CT, Aha SL (1992) Developing and Integrating ProDAG in the Arcadia Environment. In: 5th SIGSOFT Symp. on Softw. Dev. Environments Google Scholar
  47. [47]
    Ryder BG (1974) The PFORT Verifier. Software - Practice and Experience 4:359–378 CrossRefMATHGoogle Scholar
  48. [48]
    Shewhart WA (1931) Economic Control of Quality of Manufactured Product. Google Scholar
  49. [49]
    Simidchieva B, Engle SJ, Clifford M, Jones AC, Peisert S, Bishop M, Clarke LA, Osterweil LJ (2010) Modeling and Analyzing Faults to Improve Election Process Robustness. In: 2010 Electronic Voting Technology Workshop/Workshop on Trustworthy Elections Google Scholar
  50. [50]
    Sliski TJ, Billmers MP, Clarke LA, Osterweil LJ (2001) An Architecture for Flexible, Evolvable Process-Driven User Guidance Environments. In: Joint 8th European Softw. Engineering Conf. and 9th ACM SIGSOFT Symp. on the Foundations of Software Engineering Google Scholar
  51. [51]
    Smith RL, Avrunin GS, Clarke LA, Osterweil LJ (2002) PROPEL: An Approach Supporting Property Elucidation. In: 24th International Conference on Software Engineering Google Scholar
  52. [52]
    Snodgrass RT (1989) The Interface Description Language: Definition and Use. Computer Science Press, Rockville, MD Google Scholar
  53. [53]
    Sutton Jr. SM, Heimbigner D, Osterweil LJ (1995) APPL/A: A Language for Software-Process Programming. ACM Trans. on Software Engineering and Methodology 4(3):221–286 CrossRefGoogle Scholar
  54. [54]
    Sweet RE (1985) The Mesa Programming Environment. In: SIGSOFT/SIGPLAN Symposium on Language Issues in Programming Environments Google Scholar
  55. [55]
    Tarr PL, Clarke LA (1993) PLEIADES: An Object Management System for Software Engineering Environments. In: SIGSOFT Symposium on Foundations of Software Engineering Google Scholar
  56. [56]
    Tarr PL, Wileden JC, Clarke LA (1990) Extending and Limiting PGraphite- style Persistence. In: Fourth International Workshop on Persistent Object Systems Google Scholar
  57. [57]
    Taylor RN, Belz FC, Clarke LA, Osterweil LJ, Selby RW, Wileden JC, Wolf A, Young M (1998) Foundations for the Arcadia Environment Architecture. In: ACM SIGSOFT Software Engineering Symposium on Practical Software Development Environments (Reprinted as Chapter 13) Google Scholar
  58. [58]
    Taylor RN, Clarke LA, Osterweil LJ, Selby RW, Wileden JC, Wolf A, Young M (1986) Arcadia: A Software Development Environment Research Project. In: ACM/IEEE Symposium on Ada Tools and Environments Google Scholar
  59. [59]
    Teitelbaum T, Reps TR (1981) The Cornell Program Synthesizer: A Syntax Directed Programming Environment. Communications of the ACM 24 (9):563–573 CrossRefGoogle Scholar
  60. [60]
    Teitelman W, Masinter L (1981) The InterLisp Programming Environment. Computer 14 (4):25–33 CrossRefGoogle Scholar
  61. [61]
  62. [62]
    Wileden JC, Wolf AL, Fisher CD, Tarr PL (1988) PGraphite: An Experiment in Persistent Typed Object Management. In: Third ACM SIGPLAN/SIGSOFT Symposium on Practical Software Development Environments Google Scholar
  63. [63]
    Wolf AL, Clarke LA, Wileden JC (1989) The AdaPIC Toolset: Supporting Interface Control and Analysis Throughout the Software Development Process. IEEE Transactions on Software Engineering 15 (3):250–263 CrossRefGoogle Scholar
  64. [64]
    Xiao J, Osterweil LJ, Wang Q (2010) Dynamic Scheduling of Emergency Department Resources. In: First ACM International Health Informatics Symposium Google Scholar
  65. [65]
    Xiao J, Osterweil LJ, Wang Q, Li M (2010) Dynamic Resource Scheduling in Disruption-Prone Software Development Environments. In: Fundamental Approaches to Software Engineering. Google Scholar
  66. [66]
    Young M, Taylor RN, Troup DB (1988) Design Principles Behind Chiron: A UIMS for Software Environments. In: Tenth International Conference on Software Engineering Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of MassachusettsAmherstUSA

Personalised recommendations