>> Register for Industrial Day <<
|08.30 - 09.15||Registration CBSE |
|09.15 - 09.30||Welcome |
|09.30 - 10.30||Keynote I (Jan Bosch)|
|10.30 - 11:00||Coffee |
|11:00 - 12:30||Industrial session & panel|
|12.30 - 13.30||Lunch |
|13.30 - 14.30||Keynote II (Clemens Szyperski)|
|14:30 - 15:00||Coffee|
|15:00 - 18:00||Tutorials - 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",
and Steffen Becker, University of Karlsruhe.
"Software Architecture Analysis and Evaluation",
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
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.
Participants should have experience with creating or using descriptions of large software systems and some knowledge of the Unified Modeling Language.
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
Engineering Group at the same university. His research interests are
software quality and software quality analysis. Between 2004 and 2005 he
working as a consultant in several industrial projects doing software
and introducing measurement programs in software development projects.