Last modified on July 9, 2006, 5:32 pm

Start page
Industrial Day
Local information
Contact us

Industrial day: Advanced Design of Software Systems

June 29th, 2006

Collocated with Conferences:

2nd International Conference on
the Quality of Software Architectures
QoSA 2006
The 9th International Symposium on
Component-Based Software Engineering
CBSE 2006

>> Register for Industrial Day <<


08.30 - 09.15Registration CBSE
09.15 - 09.30Welcome
09.30 - 10.30Keynote I (Jan Bosch)
10.30 - 11:00Coffee
11:00 - 12:30Industrial session & panel
12.30 - 13.30Lunch
13.30 - 14.30Keynote II (Clemens Szyperski)
14:30 - 15:00Coffee
15:00 - 18:00Tutorials - with internal coffee break

The Industrial Day Advanced Design of Software Systems is a unique event in which the most prominent industrial development managers and architects in Software Architecture and Component-based Software Engineering discuss the latest trends in software modeling and design in leading software and software-intensive companies. In addition to this several tutorials, presented by well known researchers in the area of Software architecture and Component-based Software Engineering present:

"Expanding the scope of software product families: problems and alternative approaches", Jan Bosch, VP and head of the Software and Application Technologies Laboratory at Nokia Research Center:

"Composing with Style - Components meet Architecture", Clemens Szyperski, Software Architect, Microsoft Research.

"Documentation Principles and Practices that You Can Live With", Judith Stafford, Senior Lecturer, Tufts University, Boston.

"Model-based Software Development with Eclipse", Ralf Reussner and Steffen Becker, University of Karlsruhe.

"Software Architecture Analysis and Evaluation", Heinz Züllighoven, Carola Lilienthal, University of Hamburg, and Marcel Bennicke, Brandenburg University of Technology Cottbus.

Industrial Swedish Session:
Software and System architects from ABB, Ericsson and Volvo discuss Software architecture and component software in software-intensive systems
Moderator: Christer Norström, Mälardalen University

Many software-intensive system of today are highly complex and large, and the methods and tools of today can hardly cope with this complexity. One approach of mastering the complexity is to increase the level of model abstraction, modelling structure and functionality as well as functional and non functional properties and reuse existing software with predictable results. Software architecture and component-based development aim to new means to achieve these goals. The question is however how to transform legacy systems from a rather chaotic state to a state in which development and maintenance can be performed in a predictable way and the results are predictable (the properties of the executable systems are predictable). Is such refactoring feasible? Or is it a better approach to start from scratch? What are the states of the software-intensive systems in different companies, and what are the main challenges to reach a state of predictability?

Jan Bosch, VP and head of the Software and Application Technologies Laboratory at Nokia Research Center: Expanding the scope of software product families: problems and alternative approaches

Software product families have found broad adoption in the embedded systems industry. Product family thinking has been prevalent in this context for mechanics and hardware and adopting the same for software has been viewed as a logical approach. During recent years, however, the trends of convergence, end-to-end solutions, shortened innovation and R&D cycles and differentiaton through software engineering capabilities have lead to a development where organizations are stretching the scope of their product families far beyond the initial design. Failing to adjust the product family approach, including the architectural and process dimensions when the business strategy is changing is leading to several challenging problems that can be viewed as symptons of this approach. The keynote discusses the key symptoms, the underlying causes for these symptons as well as solutions for realigning the product family approach with the business strategy.

Prof. dr. ir. Jan Bosch is a VP and head of the Software and Application Technologies Laboratory at Nokia Research Center, Finland. Earlier, he headed the software engineering research group at the University of Groningen, The Netherlands, where he holds a professorship in software engineering. He received a MSc degree from the University of Twente, The Netherlands, and a PhD degree from Lund University, Sweden. His research activities include software architecture design, software product families, software variability management and component-oriented programming.
He is the author of a book "Design and Use of Software Architectures: Adopting and Evolving a Product Line Approach" published by Pearson Education (Addison-Wesley & ACM Press), (co-)editor of several books and volumes in, among others, the Springer LNCS series and (co-)author of a significant number of research articles. He has been guest editor for journal issues, chaired several conferences as general and program chair, served on many program committees and organized numerous workshops. Finally, he is and has been a member of the steering groups of the GCSE and WICSA conferences.

Clemens Szyperski, Software Architect,Microsoft Research:
Composing with Style - Components meet Architecture

Composability itself is probably the least composable term in the theory of computer science. In this talk, I'll explore some of thetroubling reasons why we have succeeded only so-so when it comes to the creation of composable software - and thus software components. Architecture can often come to the rescue, but only when applied with great style.

Clemens Szyperski joined Microsoft Research as a Software Architect in 1999. His team moved into a product incubation phase in 2001 and began production development in early 2003. A first product developed in an entirely new way will be released together with the upcoming Office System 2007. Since late 2005 he is now working on driving novel platform technology in Microsoft's new Connected Systems Division. His focus is on the end-to-end issues of leveraging component software to effectively build new kinds of software.
He maintains an affiliation with Microsoft Research and continues his general activities in the wider research arena. His Jolt-award-winning book Component Software (Addison Wesley) appeared in a fully revised and extended second edition in late 2002. Software Ecosystem (MIT Press), co-authored with Dave Messerschmitt of UC Berkeley, was published in mid 2003. Clemens serves on numerous program committees, including ECOOP, ESEC/FSE, ICSE, and OOPSLA. He served as assessor and panelist for national funding bodies in Australia, Canada, Ireland, the Netherlands, and USA. He is a cofounder of Oberon microsystems, Zurich, Switzerland, and its now-public spin-off esmertec.

From 1994 to 1999, he was an associate professor at the School of Computer Science, Queensland University of Technology, Australia, where he retains an adjunct professorship. He held a postdoc scholarship at ICSI, affiliated with UC Berkeley in 1992/93. In 1992, he received his PhD in computer science from the Swiss Federal Institute of Technology (ETH) in Zurich under Prof. Niklaus Wirth and in 1987 his Masters in electrical engineering/ computer engineering from Aachen University of Technology (RWTH).

Judith Stafford, Senior Lecturer, Tufts University, Boston:
Documentation Principles and Practices that You Can Live With

Software architecture has become a widely-accepted conceptual basis for the development of non-trivial software in all application areas and by organizations of all sizes. Effectively documenting an architecture is as important as crafting it; if the architecture is not understood, or worse, misunderstood, it cannot meet its goals as the unifying vision for software development. Development-based architecture strategies, such as Rational's Unified Process, stop short of prescribing documentation standards. The Views and Beyond approach to software architecture provides practical guidance on the what, why, and how of creating IEEE 1471-2000 compliant documentation for your software architecture that will be used for years to come. The approach is based on the well-known concept of views and is presented in the context of prevailing prescriptive models for architecture, including the Unified Process and UML 2.0, which has improved support for representing key architectural elements over its predecessors.

Attendee Background:
Participants should have experience with creating or using descriptions of large software systems and some knowledge of the Unified Modeling Language.

Tutorial Objectives:
The primary aim of this tutorial is to teach developers what constitutes good documentation of a software architecture, why it is worth the effort to create and maintain a documentation package, and how to write it down. A secondary aim is to teach other stakeholders why they should care about architectural documentation and how they can use it to make their life easier, increase productivity, and decrease overall system development and maintenance costs.

Judith Stafford is a Senior Lecturer in the Department of Computer Science at Tufts University, and is also a visiting scientist at the Software Engineering Institute, Carnegie Mellon University. Dr. Stafford has worked for several years in the area of compositional reasoning and its application to software architectures and component-based systems. She has organized workshops, given invited talks, taught tutorials, and written widely in these areas including co-authoring the book that inspired this tutorial, Documenting Software Archtiectures: Views and Beyond, Addison Wesley, 2002 and several book chapters on software architecture and component-based software engineering.

Prof. Dr. Ralf Reussner and Steffen Becker, University of Karlsruhe:
Model-based Software Development with Eclipse

The tutorial consists of two parts. In the first part (45 min), Ralf Reussner focuses on the importance of an explicitly modelled software architecture. Besides an introduction into common architectural views, the role of the software architect is compared to "classical building" architects. As part of this, the often used comparison between building architecture and software architecture is critically reviewed. In particular, the role of an architect is discussed in model-driven software projects.

During the second part of the tutorial (135 min), Steffen Becker demonstrates online model driven development tools based on Eclipse. First, an introduction is given on the meta-modelling tools of the Eclipse Modelling Framework (EMF) and on the Graphical Modelling Framework (GMF) used to generate a domain specific editors for user defined (meta-)models. Additionally, the MDA framework of the OMG is presented and the concepts are applied to the introduced tools.

A live demonstration of the capabilities of the introduced tools for model transformations shows finally how a domain specific modelling tool can be generated to a large extend automatically using an EMF-model instance and the generator of GMF. As a result, an editor based on the Eclipse Graphical Editing Framework (GEF) can be deployed and run using Eclipse.

Professor Ralf Reussner holds the Chair for Software-Design and -Quality at the University of Karlsruhe since 2006. His research group is well established in the area of component based software design, software architecture and predictable software quality. Professor Reussner shaped this field not only by over 60 peer-reviewed publications in Journals and Conferences, but also by establishing various conferences and workshops. In addition, he acts as a PC member or reviewer of several conferences and journals.
As Director of Software Engineering at the Informatics Research Centre in Karlsruhe (FZI) he consults various industrial partners in the areas of component based software, architectures and software quality. He is principal investigator or chief coodinator in several grants from industrial and governmental funding agencies. He graduated from University of Karlsruhe with a PhD in 2001. After this, Ralf was a Senior Research Scientist and project-leader at the Distributed Systems Technology Centre (DSTC Pty Ltd), Melbourne, Australia. From March 2003 till January held the Juniorprofessorship for Software Engineering at the University of Oldenburg, Germany, and was awarded with a 1 Mio EUR grant of the prestigious Emmy-Noether young researchers excellence programme of the National German Science Foundation.

Steffen Becker is a member of the research staff at the Chair for Software-Design and -Quality at the University of Karlsruhe since 2006. In his PhD thesis he concerned with combining model driven software development and prediction of the resulting Quality of Service properties of component based software systems. As part of his work he is working on a component model enabling the prediction of component based software systems.
He is known in his field of research by several scientific publications and also as a member of the steering committee of the QoSA conference and the WCAT workshop series at ECOOP. He gained practical experiences during his internship as software engineer in Johannesburg, ZA in 2000 as well as during consulting activities at the OFFIS in Oldenburg, Germany. He holds a diploma in business administration and computer science combined (Dipl.-Wirschaftsinformatik) from the Darmstadt University of Technology.

Heinz Züllighoven, Carola Lilienthal (University of Hamburg) and and Marcel Bennicke (Brandenburg University of Technology Cottbus):
Software Architecture Analysis and Evaluation

A software architecture describes the structure of a software system on an abstract implementation independent level. In forward engineering it serves as a blueprint to prescribe the intended software structure (so-called architecture model). In reverse engineering it can provide an abstract view of the actual code structure of the existing software system (so-called code architecture). Architecture models and actual code architectures play a vital role for all comprehension and communication tasks during the development and evolution of large software systems. Therefore, architecture models and code architectures have to be explicitly represented and consistently maintained during the development, maintenance, and reengineering processes.

The need to insure compliance of the architecture model and the actual code architecture has drawn considerable attention in recent years. In order to facilitate maintainability and enhancement of a software system the compliance of the architecture model and the actual code architecture is essential. Various tools have been developed to analyse and evaluate the deviation of code architecture and architecture model. In this tutorial we present static analysis tools that may be used for architectural analyses. We demonstrate how these tools can create useful architectural views for different evaluation tasks such as identification of reconstruction scope, critical architectural elements and potential design irregularities. If possible we will analyse a software system provided by a participant of the workshop in a life demonstration.

Heinz Züllighoven, graduted in Mathematics and German Language and Literature, holds a PhD in Computer Science. Since October 1991 he is professor at the Computer Science Department of the University of Hamburg and head of the attached Software Technology Centre. He is one of the original designers of the Tools & Materials approach to object-oriented application software and the Java framework JWAM, supporting this approach.
Since 2000, Heinz Züllighoven is also one of the managing directors of C1 Workplace Solutions Ltd. He is consulting industrial software development projects in the area of object-oriented design, among which are several major banks. Heinz Züllighoven has published a number of papers and books on various software engineering topics. An English construction handbook for the Tools & Materials approach has been published by Morgan Kaufmann in 2004. Among his current research interests are agile object-oriented development strategies, migration processes and the architecture of large industrial interactive software systems. In addition, he an his co-researchers are further developing a light-weight modeling concept for business processes which is tool-supported.

Carola Lilienthal holds a Diploma degree in computer science from University of Hamburg (1995). She is a research assistant at the University of Hamburg and is working in the Software Engineering Group of Christiane Floyd and Heinz Züllighoven. Since 1995 she is also working as a consultant for object oriented design, software architecture, software quality, agile software development and participatory design in several industrial projects. She has published a number of papers on various software engineering topics. Her research interests are the construction and analysis of large software systems, software architecture, software quality analysis and agile software development.

Marcel Bennicke holds a Diploma degree in computer science from Brandenburg University of Technology (2002). He is a research associate with the Software Systems Engineering Group at the same university. His research interests are software architecture, software quality and software quality analysis. Between 2004 and 2005 he has been working as a consultant in several industrial projects doing software quality analyses and introducing measurement programs in software development projects.

Web page hosted at Department of Computer Science and Engineering,
Mälardalen University, Sweden. Webmaster: Damir Isovic
This page has been accessed 7609 times.