SATURN Conference 2011

May 16-20, 2011 | San Francisco Airport Marriott in Burlingame, California

Tutorials at SATURN 2011

SATURN 2011 offered eight tutorials on various architecture-related subjects. SATURN 2011 tutorials occured on Tuesday, May 17, and Friday, May 20.

Tuesday Tutorials

T1: Ultimate Agility: Let Your Users Do Your Work!

Joseph Yoder, The Refactory, Inc.
Rebecca Wirfs-Brock, Wirfs-Brock Associates

Agile practitioners value both the incremental delivery of working software and design simplicity. But when working on Agile projects, developers can become overwhelmed with the rate of requirements change. To keep up, an adaptive object-model (AOM) architecture supports changeable domain models by casting business rules as interpreted data and representing objects, properties, and relationships in external declarations. At first glance, AOM systems seem to contradict Agile values. Yet we find that under the right conditions, an AOM architecture has made our users happier and has given them the ability to control the pace of change.

This tutorial presents the core elements of an AOM architecture based on an example from a working system and surveys other patterns essential to this architecture style. We then showcase several production AOM systems and demonstrate how they have given users the control they needed to confidently revise, extend, and grow their software.

Presenter Biographies
Rebecca Wirfs-Brock, president of Wirfs-Brock Associates, is an internationally recognized leader in the development of object design methodologies, and past design columnist for IEEE Software. She is the lead author of two design books, and she invented the set of development practices known as responsibility-driven design. Among her widely used innovations are the conversational use-case form and object role stereotypes.

Although best known as a software design guru, Rebecca is also an innovator of techniques for simply expressing complex requirements and effectively designing and communicating software architecture. She frequently helps product engineering, IT, and startup organizations with the technical bits, as well as with effective teamwork and agile development practices.

Joseph Yoder is a founder and principle of The Refactory, Inc., a company focused on software architecture, design, implementation, consulting, and mentoring on all facets of software development. Joseph is an international speaker and pattern author, as well as a long-standing member of The Hillside Group. He is co-author of the Big Ball of Mud pattern, which illuminates many fallacies in the approach to software architecture. Joe resides in Urbana, Illinois, where he oversees a team of developers who have constructed many systems based on enterprise architecture using the .NET environment.

Joe has been involved for quite some time working on and deploying Adaptive Systems or Domain-Specific Languages for clients. Joe thinks software is still too hard to change. He wants do something about this and believes that by using good patterns and by putting the ability to change software into the hands of the people with the domain knowledge seems to be some promising avenues to solve this problem.

You can find more of Joe's writing on adaptive object-models on his Adaptive Object Model website.

T2: Architectural Knowledge Management

Philippe Kruchten, University of British Columbia

Software architecture is the manifestation of the major early design decisions that are made for a software-intensive system. These architectural decisions  will determine much of the system's design, development, deployment, and evolution. Making better architectural-design decisions is a key challenge in software engineering, and it is made even more difficult by both the complexity and heterogeneity of the systems we want to develop and the distribution of the development teams.

Great gains in efficiency and quality can be achieved when organizations can capture, capitalize on, and transfer both software and system architectural knowledge. This tutorial presents the challenges inherent in this approach, introduces a conceptual framework for architectural knowledge management, and describes practices, methods, and tools that software architects can use to efficiently manage the vast amount of information that's necessary to make enlightened architectural design decisions.

Presenter Biography
Philippe Kruchten is professor of software engineering at the University of British Columbia in Vancouver, Canada, which he joined in 2004 after a 30-plus–year career in the software industry, developing systems in telecommunications, defense, and aerospace. His main interests are in software architecture, software project management, and software development processes. During his time with Rational Software (now IBM), he led the development of the RUP, which embeds an architecture-centric method. He is the co-founder and secretary of the IFIP WG2.10 on software architecture.

T3: Strategic Management of Technical Debt

Nanette Brown, Software Engineering Institute
Philippe Kruchten, University of British Columbia
Rod Nord, Software Engineering Institute
Ipek Ozkaya, Software Engineering Institute

The "technical debt" metaphor acknowledges that development teams sometimes accept compromises in one dimension of a system (e.g., modularity) to meet an urgent demand in some other dimension (e.g., a deadline), and that such compromises cause the system to incur a "debt." If not properly managed, the interest on this debt may continue to accrue, severely hampering system stability and quality and impacting the team's ability to deliver enhancements at a pace that satisfies business needs.

Although unmanaged debt can have disastrous results, strategically managed debt can help businesses and organizations take advantage of time-sensitive opportunities, fulfill market needs, and acquire stakeholder feedback. Because architecture has such significant leverage within the overall development life cycle, the strategic management of architectural debt is of primary importance.

This tutorial will

  • introduce attendees to the technical debt metaphor
  • discuss tools and techniques for measuring and communicating technical debt (including the SEI's Hard Choices game)
  • provide a foundation for managing architectural tradeoff and refactoring decisions based on economic impact

Presenter Biographies
Nanette Brown is a visiting scientist at the SEI and is a principal consultant with NoteWell Consulting. She is engaged in activities focusing on architecture within an Agile context. Previously, Nanette worked at Pitney Bowes Inc., most recently as Director of Architecture and Quality Management, where she was responsible for design and implementation of a customized SDLC that blended RUP and Agile practices.

Philippe Kruchten is professor of software engineering at the University of British Columbia in Vancouver, Canada, which he joined in 2004 after a 30-plus–year career in the software industry, developing systems in telecommunications, defense, and aerospace. His main interests are in software architecture, software project management, and software development processes. During his time with Rational Software (now IBM), he led the development of the RUP, which embeds an architecture-centric method. He is the co-founder and secretary of the IFIP WG2.10 on software architecture.

Robert L. Nord is a senior member of the SEI's technical staff and works to develop and communicate effective methods and practices for software architecture. He is co-author of the practitioner oriented books, Applied Software Architecture and Documenting Software Architectures: Views and Beyond, published by Addison-Wesley and lectures on architecture-centric approaches.

Ipek Ozkaya  is a senior member of theSEI's technical staff. Her primary work is on developing techniques and methods for improving software architecture practices by focusing on software economics and requirements management. Currently, she serves as the technical lead of the SEI's agile development and software architecture independent research work, in addition to leading work in architecture-based system evolution. In addition, she contributes to the teaching of several courses in the Software Architecture Certificate Program at the SEI. 

T4: Architecture-Centric Acquisition

John K. Bergey, Software Engineering Institute
Lawrence G. Jones, Software Engineering Institute
Michael J. Gagliardi, Software Engineering Institute

Government contractors may find themselves asking, "What is my customer up to now?" A government program office might ask, "How can I get best quality and value from my suppliers?" Both want to know, "How can we use architecture-centric engineering practices to achieve a win-win situation?"

The US Department of Defense commissions suppliers to develop systems through their acquisition process. Software plays a critical role in most system acquisitions and is often cited as the reason for cost overruns, schedule slippages, and quality problems. There is a need for effective risk reduction when acquiring software-reliant systems and systems of systems. An architecture-centric acquisition approach has proven to be an effective way of reducing acquisition risk.

This half-day tutorial covers the why, when, where, how, and what of architecture-centric acquisition so that

  • government acquirers can reduce risk and achieve system qualities by using architecture-centric acquisition practices
  • commercial suppliers can increase competitive advantage by understanding the government's use of software architecture technology in acquisition

Presenter Biographies
John Bergey joined the SEI in 1993 as a visiting scientist and became a member of its technical staff in 1995. Currently, John is a member of the Research, Technology, and Systems Solutions Program (RTSS) and is active in the Architecture Centric Engineering and Product Line Practice initiatives. His role in these initiatives is to proactively assist DoD programs in applying SEI technologies (e.g., product line practices, the ATAM, and the QAW) to improve their acquisition practices and reduce software acquisition risk. Before coming to the SEI, John was a software division manager with the U.S. Naval Air Development Center.

Mike Gagliardi has more than 25 years experience in real-time, mission-critical software architecture and engineering activities on a variety of DoD systems. He currently works in the SEI Research, Technology, and System Solutions Program on the Architecture-Centric Engineering initiative, and is leading the development of architecture evaluation and quality attribute specification methods for system and system of systems architectures.

Lawrence G. Jones leads the Product Line Practice Initiative at the SEI. Prior to joining the SEI, he served a career in the US Air Force and is the former chair of the Computer Science Department at the Air Force Academy.  His PhD in computer science is from Vanderbilt University. He's a senior member of the IEEE and ACM, a Fellow of ABET and the CSAB, and a member of the ABET Board of Directors Executive Committee.

Friday Tutorials

T5: Service-Oriented Architectures for the REST of us

Cesare Pautasso, University of Laugano

Recent technology trends in Web services indicate that a solution eliminating the perceived complexity of the WS-* standard technology stack may be in sight: advocates of representational state transfer (REST) have come to believe that their ideas explaining why the Internet works are just as applicable to solving enterprise application integration problems and to radically simplifying the "plumbing" of service-oriented architectures. In this tutorial, we give an update on how the REST architectural style has been recently rediscovered to become the foundation for so-called "RESTful Web services." After introducing REST as a set of design constraints, we will show how these can be used as a guide to the design of RESTful Web service APIs while still delivering most of the qualities required in enterprise-grade service-oriented architectures.

Presenter Biography
Cesare Pautasso is assistant professor in the Faculty of Informatics at the University of Lugano, Switzerland. He was previously a researcher at the IBM Zurich Research Lab and a senior researcher at ETH Zurich, Switzerland. His university teaching, industry training, and consulting activities all cover advanced topics related to service-oriented architectures, web development, and emerging Web services and middleware technologies. He is the lead architect of JOpera, a RESTful Web service composition tool for Eclipse. He has co-authored a book titled "SOA with REST" published by Prentice Hall, and is also co-editor of the "REST: From Research to Practice" book published by Springer. He has co-chaired the 1st and 2nd International Workshops on RESTful Design at the WWW conference and is general chair of the 9th European Conference on Web Services (ECOWS 2011). Visit his website for more information.

T6: Pragmatic Architecture Testing

Peter Zimmerer, Siemens AG

State-of-the-art testing approaches typically include different levels of testing, such as reviews, unit testing, component testing, integration testing, system testing, or acceptance testing. Unit testing is typically done by developers (they are responsible for checking the quality of their units to some extent), while overall system testing is done by professional independent testers. But who is responsible for adequately testing the software architecture—one of the key artifacts in developing and maintaining flexible, powerful, and sustainable software-intensive products and systems?

To answer this question, this half-day tutorial describes what architecture testing is all about and explains a list of pragmatic practices to use in testing a software architecture.

After this tutorial, you will know what architecture testing really means and you will have all the pieces together to drive and beneficially influence architecture testing in your projects. This not only results in better software quality, but also speeds up development by facilitating change and decreasing maintenance efforts.

Presenter Biography
Peter Zimmerer is a principal engineer at Siemens AG, Corporate Technology, in Munich, Germany. He has been working in the field of software testing and quality engineering for more than 19 years. At Siemens, he performs consulting, coaching, and training on test management and test engineering practices, including test strategies, test methods, test processes, test automation, and test tools in real-world projects, and drives research and innovation in this area. He is an ISTQB® Certified Tester, Full Advanced Level, and a regular speaker at international conferences.

T7: Architecting the Cloud

Daniel Spar, Deloitte Consulting, LLP

Cloud computing includes a broad collection of services ranging from business processes to infrastructure, but the viability of cloud computing as part of a highly reliable, secure environment is still not clear. Additionally, a great deal of the attention on cloud computing is technology focused instead of being business driven.

This tutorial will present a structured overview of both the current state and future direction of the cloud environment and will synthesize the theory, practice, direction, and other associated technologies of cloud computing. This tutorial will also illustrate how the cloud can be modeled in enterprise architectures to enable specific capabilities and how business strategy and operating models can be designed to leverage the cloud.

The tutorial will demystify modeling, analyzing, and incorporating the cloud and will present a structured architecture, model, and methodology set to evaluate the cloud from both a business focus and a technology perspective. We will show how cloud computing can be applied in secure applications to enable greater capabilities as well as how to perform a tactical assessment to identify the readiness of your business and systems to leverage cloud and associated services. Finally, we will discuss how to design a comprehensive business and technology transformation roadmap.

Presenter Biographies
Dr. Daniel Spar is a certified enterprise architect (ToGAF, DoDAF and FEAF) at Deloitte Consulting LLP, has contributed to federal data and process modeling standards (FIPS 183 and 184), is SEI-certified as a Lead Assessor of the CMM, has developed industry-leading data and process modeling CASE tools, and was a Lead Architect for the Bank of America Home Banking Bill Presentment and Payment system. Spar is an adjunct professor at the Federal Enterprise Architecture Certification Institute, as well as at the University of Maryland.

T8: Requirements-Driven Architecture

John Klein, Software Engineering Institute

A system may have hundreds or even thousands of requirements, but much of the time, just a few of these requirements can have the greatest effect on the system architecture. These "architecturally significant requirements" focus on quality attributes (sometimes referred to as "non-functional" characteristics) such as evolvability, availability, latency, usability, or testability. The quality attribute requirements describe how the functionality must be delivered to satisfy the system's stakeholders.

This tutorial is for architects, business analysts, systems engineers, product managers—anyone involved in defining system requirements. Attendees will learn

  • What are architecturally significant requirements and how are they used to make design decisions?
  • How can I use "six-part scenarios" to clearly define quality attribute requirements?
  • What is the best way to engage stakeholders to define a system's quality attribute requirements using the Business Thread Workshop and Quality Attribute Workshop methods, including examining both benefits and costs?

We will use examples drawn from industrial experience. Teaching will occur through lectures, individual exercises, and group exercises.

Presenter Biography
John Klein is a senior member of the technical staff at the SEI, where he does research and consulting in enterprise and system of systems architectures.

Before joining the SEI, John was a chief architect at Avaya, Inc. His responsibilities at Avaya included development of multimodal agents, architectures for communication analytics, and the creation and enhancement of the Customer Interaction Software Product Line architecture. Prior to that, John was an architect at Quintus, where he designed the first commercially successful multi-channel integrated contact center product and led the technology integration of the product portfolio as Quintus acquired several other companies. Before joining Quintus, John worked for several companies in the video conferencing industry. He began his career at Raytheon, where he developed hardware and software solutions for radar signal processing, multi-spectral image processing, and parallel processing architectures and algorithms.

John holds a BE degree from Stevens Institute of Technology and a ME degree from Northeastern University. He is a Senior Member of the ACM and a member of the IEEE Computer Society.

Important Dates

 

May 16-20, 2011

SATURN 2011 Conference


Saturn 2011 will be presented in collaboration with IEEE Software.

Saturn is sponsored by

Hello2morrow

and

Raytheon

and

Saturn-SDForum-logo


space269

Stay Connected

Get the latest SATURN news, important dates, and announcements on our blog, signing up for our e-mail updates or following us on LinkedIn.

SATURN Blog RSS SATURN on LinkedIn Twitter


SEI Customer Relations

Phone: +1 412-268-5800
Toll Free (within the USA):  +1 888-201-4479
FAX: +1 412-268-6257
E-mail: customer-relations@sei.cmu.edu

 


Help us improve

Visitor feedback helps us continually improve our site.

Please tell us what you
think with this short
(< 5 minute) survey.