<<< Previous speaker next speaker >>>

Frank Buschmann, Siemens AG, Corporate Technology

 Frank  Buschmann

Frank Buschmann is a Principal Engineer at Siemens Corporate Technology in Munich, Germany, where he leads a team of architects doing research in software architecture and design technologies and supporting development organizations in applying these technologies to develop innovative software products.

Frank's research interests include Object Technology, Platform- and Product-Line Architectures, Model-Driven Software Development, and specifically Patterns. In his development work, Frank has lead the design and implementation of several large-scale industrial software projects, including business information, industrial automation, and telecommunication systems. Frank is co-author of four volumes of the "Pattern-Oriented Software Architecture" published by John Wiley & Sons.

Presentation: "Architecture Reviews"

Time: Tuesday 10:30 - 11:20

Location: Store Sal

Abstract:

Architecture reveiws are an important feedback measure for software development projects. Reviews tell a team whether or not their architecture is on track regarding its required scope and quality, and, if not, suggest concrete measures for bringing the architecture back on track. Architecture reviews thus form a safety net for architects allowing them to "test" their architecture.

This talk introduces to architecture reviews, their purpose and scope, and provides an overview and comparison of concrete architecture review methods and their key review techniques. War stories from the real world complement the talk tio illustrate how the methods work in practice regarding both successes and limitations.

Presentation: "Five Considerations for Software Developers"

Time: Wednesday 10:30 - 11:20

Location: Store Sal

Abstract:

Those involved in software have a lot to keep in mind as they negotiate the worlds inside and outside of their code and the relationship between them. For those interested in improving the state of their art there are many (many) sources of specific recommendations they can use to sharpen their practice.

This talk takes a step back from the busy, overpopulated and often overwhelming world of such recommendations to focus on five general considerations that can inform more detailed recommendations and specific decisions.

Workshop: "Design Tactics for Non-Functional Architecture Qualities"

Track: Tutorial

Time: Thursday 09:00 - 17:00

Location: Kammermusik

Abstract:

Non-functional qualities are key to successful software architectures: operational qualities, such as stability, performance, and scalability support the acceptance and usability of a product, developmental qualities, for instance, flexibility, extensibility, and reusability, help software development organizations to build and maintain software products within reasonable cost and time budgets.

It is a challenge, however, to create software architectures that are stable, efficient, scalable, flexible, extensible, reusable, etc. Many software architectures actually lack appropriate operational and developmental qualities, and most architecture reviews focus on evaluating and improving the so-called "ilities" of a software architecture.

This tutorial explores concrete design tactics, i.e., technologies, patterns, practices, and methods, for achieving selected non-functional architectural qualities. For each quality the tutorial outlines its design space, the design tactics available, and the factors and forces that can influence a specific design decision. All aspects are illustrated with anecdotes and war stories from the real-world. Goal is to provide participants with thoughts, considerations, and measures to build usable and sustainable software.

Workshop: "Notes on Software Architecture"

Track: Tutorial

Time: Friday 09:00 - 17:00

Location: Kammermusik

Abstract:

Quality software systems require quality software architectures. Otherwise it is hard, if not impossible, to meet their functional and non-functional requirements or to master their inherent complexity. For instance, software architectures for systems with end-to-end quality of service demands, systems with stringent security requirements, or systems that are supposed to be in operation for 20+ years cannot be created on the fly, using contemporary middleware and tools.

Instead these architectures must be crafted with care, following a defined specification process and being based on thoughtful design decisions. This tutorial explores some of the timeless secrets of building high-quality software architectures, in terms of process, methodology, design goals, and architectural properties, to bring the foundations of building successful software into everybodies mind.