NEWS AT SEI
This article was originally published in News at SEI on: February 1, 2008
The SEI Architecture Technology User Network (SATURN) Workshop series was initiated in 2005 at the Software Engineering Institute. In its three-year history, SATURN has attracted software and systems engineering practitioners throughout government and industry from all over the world. Because of the workshop’s emphasis on software architecture practices, participant interaction, information exchange, and addressing the needs of practitioners, attendance continues to grow each year.
This year, SATURN will offer a program that includes
- keynote talks by software architecture experts Philippe Kruchten from the University of British Columbia, Canada, and Eoin Woods from Barclays Consultants, UK
- speakers who are government or industry professionals or SEI experts
- a panel discussion on software architecture from a manager’s perspective led by moderators with both managerial and software architecture experience
- numerous opportunities for networking, including interactive and working sessions and social events
- opportunities to strengthen software architecture knowledge by taking courses from the SEI Software Architecture Curriculum or attending tutorials led by industry experts
A system’s software architecture manifests the earliest design decisions that an organization makes to ensure that the resulting system meets its business goals and quality concerns. SATURN 2008 will address:
- architecture-centric system evolution
- evaluating architectures of software-intensive systems
- architecture and technical trends
- improving software architecture practices within an organization
Architecture-Centric System Evolution
Many systems are built to be in service over a long period of time. However, planning for productive use over the life span of a system is difficult, since the future is uncertain due to market, social, economic, political, and technological forces. These forces and the system’s reaction to them determine the utility—or measure of satisfaction relative to the system’s business goals—of a system. Therefore, changes along any of these dimensions may affect the future utility of the system. For example, technologies on which systems are built change, and new architectural design paradigms emerge. Evolving technologies put the life expectancy of existing systems at risk when they become obsolete. It is a challenge for organizations to decide when to switch technology and how to prepare the system for evolution via its architecture. One method is to look at architecture in conjunction with economics to make decisions that provide the most value [Ozkaya 2007].
SATURN 2008 will provide insights into architecture-centric system evolution through
- a presentation by Rick Kazman of the SEI on the architecture-evolution techniques being developed by SEI
- a case study presented by Pia Stoll of ABB Corporate Research titled “Reconstructing the Architecture Model for a Sustainable Architecture”
- a working session led by SEI staff who are working in architecture evolution: Mark Klein, Rick Kazman, and Robert Nord. Topics will include the architecture-evolution challenges that organizations face and possible approaches to solving them.
- a tutorial led by Philippe Kruchten that will describe how system evolution can benefit from architectural knowledge management: “Software Architectural Knowledge = Architectural Design Decisions + Architectural Design.”
Evaluating Architectures of Software-Intensive Systems
An essential aspect of mature software development practices is evaluating the architecture appropriately to determine risks early and to respond to them. This evaluation can occur in the context of an organization’s developing new software systems. However, architecture-based evaluation becomes even more critical when an organization must understand the state of legacy systems before evolving them or the challenge of acquiring software-intensive systems through either mergers or relationships with subcontractors.
The SEI Architecture Tradeoff Analysis Method (ATAM) has been widely adopted as an architecture evaluation technique. The ATAM is a stakeholder-centric evaluation method that bases its evaluation outcomes on how the architecture responds to the business and mission goals of the organization and quality-attribute requirements by walking through the architecture using key, high-priority quality-attribute scenarios collected from key stakeholders [Bass 2003, Clements 2005]. The ATAM also is well suited for helping to understand the impact of new technological approaches, such as service-oriented architecture (SOA) [Bianco 2007].
At SATURN 2007, a panel on adopting the ATAM presented several approaches that different organizations took to evaluating architectures. The panelists discussed the benefits of using a common approach that could be tailored to the needs of individual organizations. In addition, a working session covered the topic of applying the ATAM to systems. At SATURN 2008, we will continue to explore this topic:
- Phil Bianco and Paulo Merson of the SEI and Rick Kotermanski of Summa Technologies will discuss key aspects of architecture evaluations in an SOA context in their tutorial titled “Evaluating a Service-Oriented Architecture.”
- A special session will be dedicated to hearing from several organizations about how they adopt evaluation techniques and use the ATAM in their organizations.
- Felix Bachmann of the SEI will present trends and challenges faced in organizations in conducting stakeholder-based evaluation techniques, such as the ATAM.
- A working session led by Mike Gagliardi and Bill Wood of the SEI will focus on how evaluation techniques originally developed for software architecture also can be used in system and system-of-system contexts.
Architecture and Technical Trends
To align the architecture with the overall life cycle of the product, it is critical to select and integrate tool support and respond to emerging technologies and trends. Architecture conformance—how the architecture aligns with implementation—is an example of where emerging technical trends, such as aspect-oriented programming, can be helpful [Merson 2007].
SATURN 2008 Is April 28–May 1 in Pittsburgh
The SEI is hosting SATURN 2008 in Pittsburgh, Pa., from April 28 to May 1 at the Radisson Hotel Pittsburgh Green Tree. Online registration runs through Monday, April 4; on-site registration is available at the conference.
SATURN 2008 is the leading forum for engineers, architects, technical managers, and product managers who work with or have a stake in software architecture practices. The workshop provides a venue for practitioners to reflect on the achievements made, assess the current state of the field, and identify key challenges still facing researchers and practitioners. To learn more about SATURN 2008 or to register, visit the SATURN website.
During SATURN 2008, participants will investigate emerging and existing technical trends in software architecture:
- Scott Hissam and Rob Wojcik of the SEI will lead a working session about the challenges and successes participants have encountered in developing systems with open-source technologies.
- J. D. Baker of BAE Systems will describe the place that architecture has in a model-based end-to-end engineering methodology in his presentation titled “Software Architecture in the Integrated Engineering Methodology.”
- Kyungsoo Im and John D. McGregor of Clemson University will present their work in debugging software architectures.
- Phil Bianco of the SEI will talk about the current technology investigations in software architecture.
- Doug Kimelman from the IBM Thomas J. Watson Research Center will make a presentation titled “Lessons Learned from Deployment and Production Use of Architects’ Workbench: An Architectural Thinking and Modeling Tool.”
Incorporating Software Architecture Practices Within an Organization
Institutionalizing proven and effective software architecture techniques in an organization is of interest to the software architecture community. As organizations become more competent, we believe that architecture practices will be influential throughout the life cycle. During SATURN 2007, Stuart Kerrigan and Richard van Schelven of Ericsson talked about how they enhance the Rational Unified Process with SEI architecture techniques [Kerrigan 2007]. SEI techniques can be integrated with RUP and other agile methodologies such as eXtreme Programming [Kazman 2004, Nord 2004]. SATURN 2008 will offer opportunities for participants to share their experiences in this area:
- Philippe Kruchten of University of British Columbia will share his experiences during his keynote titled “On Software Architecture, Agility, Cost, and Value.”
- Andre Leclerc from Unisys will present his organization’s experiences in considering quality attributes in its general-requirement-analysis methods in his talk titled “Quality Attributes and Requirements Traceability.”
- Issac Eldo from Philips Medical System will present “Architectural Empowerment: A Quality Attribute of Software Architecture Realm to Build Empowered Organizations.”
These are only some of the highlights of SATURN 2008. The program was compiled with the architecture needs of the software engineering community in mind. The workshop is organized with the goal of maximizing learning, interaction, networking, and information exchange. SATURN organizers provide an environment in which these encounters are encouraged and facilitated. Visit http://www.sei.cmu.edu/architecture/saturn/2008 to get the latest information on what we’ve planned and to register.
Bass, Len; Clements, Paul; & Kazman, Rick. Software Architecture in Practice, Second Edition. Addison-Wesley, 2003.
Bianco, Phil; Kotermanski, Rick; & Merson, Paulo. Evaluating a Service-Oriented Architecture (CMU/SEI-2007-TR-015). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2007.
Clements, Paul; Bergey, John; & Mason, Dave. Using the SEI Architecture Tradeoff Analysis Method to Evaluate WIN-T: A Case Study (CMU/SEI-2005-TN-027, ADA447001). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2005.
Kazman, Rick; Kruchten, Philippe, Nord, Robert L.; & Tomayko, James E. Integrating Software-Architecture-Centric Methods into the Rational Unified Process (CMU/SEI-2004-TR-011, ADA455624). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2004.
Kerrigan, Stuart & van Schelven, Richard. SEI Architecture Techniques Complementary to the RUP.
Merson, Paulo. Using Aspect-Oriented Programming to Enforce Architecture(CMU/SEI-2007-TN-019). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2007.
Nord, Robert L.; Tomayko, James E.; & Wojcik, Rob. Integrating Software-Architecture-Centric Methods into Extreme Programming (XP) (CMU/SEI-2004-TN-036, ADA431084). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2004.
Ozkaya, Ipek; Kazman, Rick; & Klein, Mark. Quality-Attribute-Based Economic Valuation of Architectural Patterns (CMU/SEI-2007-TR-003). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2007.
About the Authors
Ipek Ozkaya is a senior member of the technical staff in the Product Line Systems Program at the SEI. Her research interests include developing methods for improving software architecture practices focusing on software economics and requirements management. Ozkaya lectures on architecture-centric approaches as an instructor in the SEI Software Architecture Curriculum. She earned a PhD in computational design from Carnegie Mellon University. She is currently working on techniques for methodological design of software architectures with value-based approaches.
Robert Wojcik has been a member of the technical staff in the Product Line Systems Program at the SEI since 2004. He performs training and consulting in software architecture technology and software architecture evaluations. Prior to his position at the SEI, he devoted more than 20 years of his career to developing software systems that use traditional as well as artificial intelligence and object-oriented technologies. He has an MS in software engineering from Carnegie Mellon University and a BS in computer science from the University of Pittsburgh.
Robert L. Nord is a senior member of the technical staff in the Product Line Systems Program at the SEI where he works to develop and communicate effective methods and practices for software architecture. Prior to joining the SEI, he was a member of the software architecture program at Siemens, where he balanced research in software architecture with work in designing and evaluating large-scale systems. He earned a PhD in computer science from Carnegie Mellon University. Nord lectures internationally on architecture-centric approaches. He is co-author of Applied Software Architecture (2000) and Documenting Software Architectures: Views and Beyond (2002).
The views expressed in this article are the author's only and do not represent directly or imply any official position or view of the Software Engineering Institute or Carnegie Mellon University. This article is intended to stimulate further discussion about this topic.