Prof. Dr. Dewayne E Perry
Motorola Regents Chair of Software Engineering
The University of Texas at Austin
Issues in Architecture Evolution: using Design Intent in Maintenance and Controlling Dynamic Evolution
Issues in Architecture Evolution:
1) Using design intent in maintenance &
2) Controlling dynamic evolution
In this keynote talk I will address two issues in software architecture evolution. In Alex Wolf's and my original architecture model, we proposed rationale as one of the major components. Over the years very little has been explored about this issue. The primary purpose of rationale was to record architecture design intent: why are things the way they are? It is only recently that architecture researchers have become interested in capturing design intent. Unfortunately the focus has been (as it was in the 80's on capturing design decisions) on what can we capture and how. I will focus instead on the problem of what design intent do we need when we evolve the architecture design and discuss the work I am doing with my student Paul Grisham. There are a number of interesting contexts where the dynamic evolution of software architectures are of critical importance - for example, self-managing, self-adapting systems, etc. Another interesting context is that of simulating very large, very complex systems. In all these cases, the control of dynamic architecture evolution is a critical issue. In the case of complex simulations we have foreknowledge (indeed, control) of the desired architecture evolution. I will focus on our approach in handling this issue in this context. While this is a fairly narrow context, I believe our approach has applicability in a wider context.
Professor Dewayne E. Perry is currently the Motorola Regents Chair of Software Engineering at The University of Texas at Austin. The first 18 years of his career was spent as a professional programmer and software engineer, with the latter part combining both research (as visiting faculty in Computer Science at Carnegie-Mellon University) and consulting in software architecture and design. The next 16 years were spent doing software engineering research at Bell Laboratories in Murray Hill NJ. His appointment at UT Austin began January 2000. His current research interests focus on various aspects of software architecture, empirical studies in software engineering and software system analysis. His specific interest in software architecture include transforming goal directed requirements specifications into architecture prescriptions, the use of architecture rationale and design intent in system evolution and the creation of autonomic systems, constraint-based architecture analysis and evaluation, and controlling dynamic architecture evolution. He has been Co-Editor in Chief of Wiley's Software Process: Improvement& Practice; a former associate editor of IEEE Transactions on Software Engineering; a member of ACM SIGSOFT and IEEE Computer Society; and has served as organizing chair, program chair and program committee member on various software engineering conferences.
Prof. Dr. Colin Atkinson
Software Engineering Group
The University of Mannheim
Component-Oriented Verification of Software Architectures through Built-in Tests.
Although the technologies used to implement and assemble components have improved significantly in recent years, techniques for verifying systems created from them have changed very little. In fact, the correctness and reliability of component-based systems are still usually checked using the traditional testing techniques employed before components and services became widespread. These techniques are not only expensive because they treat a system as a monolithic black box, they are not very helpful because they fail to use architectural knowledge to pin-point the source of failures. As a result, many of the potential benefits of component-based development are outweighed by the costs involved in verifying the resulting systems. In this talk, Colin Atkinson will present an approach that addresses this problem by making the system verification process component-oriented as well. Based on the notion of built-in tests - tests that are packaged with components and are executed at run-time - the approach reduces the level of manual effort needed to verify a system by partially automating the testing process. It involves a method to define how services/components should be written to support and exploit built-in tests, and a resource-aware infrastructure that arranges for tests to be executed when they have a minimal impact on the delivery of system services.
Colin Atkinson holds the Chair of Software Engineering at the University of Mannheim, where he focuses on the use of advanced software engineering approaches, such as model driven development, service-oriented architectures and product line engineering, in the development of dependable computing systems. Before that he held a joint position as a professor at the University of Kaiserslautern and a project leader at the affiliated Fraunhofer Institute for Experimental Software Engineering. From 1991 to 1997 he was an Assistant Professor of Software Engineering at the University of Houston - Clear Lake where he worked on numerous software projects with NASA's Johnson Space Center. He received his Ph.D. and M.Sc. in Computer Science from Imperial College, London, and his B.Sc. in Mathematical Physics from the University of Nottingham.