Since 2010, the SEI and IEEE have been conferring two attendee-selected awards at SATURN. The IEEE Software SATURN Architecture in Practice Presentation Award is given to the presentation that best describes experiences, methods, and lessons learned from the implementation of architecture-centric practices. Anthony Tsakiris of Ford Motor Company, Jeromy Carriere of eBay, Inc., and Michael Keeling of Vivisimo received this award in 2010, 2011, and 2012 respectively. This year's award winner was Simon Brown of Coding the Architecture for his presentation titled The Conflict Between Agile and Architecture: Myth or Reality.
Notes by Brendan Foote and Ian De Silva
IEEE Invited Talk: Games Software Architect Play: On Reasoning Fallacies, Cognitive Biases, and Politics
Phillippe Kruchten, University of British Columbia
Phillippe got exposure to large and not-so-large companies as a software architecture consultant with Rational in the early part of the century. Everywhere, he saw how design really was the same thing as making decisions, and everyone uses a process to do that.
Notes by Ian De Silva
Software Development Improvement Program: Enabling Software Excellence at a Hardware Company
Sascha Stoeter, ABB
ABB has historically been a hardware company, but it has been slowly increasing the amount of software development it does since the 80s. It is a distributed company (in 34+ countries) with software embedded into products such as controllers. Each team has its own set of tools to support development efforts.
Notes by Ian De Silva
Lean and Mean Architecting with Risk- and Cost- Driven Architecture
Eltjo Poort, CGI
Solution architecture includes more than just the software; it may include business processes, information systems, technologies, and the environment. Solution architecture approaches fill the gap between enterprise architecture approaches and technical architecture approaches. Enterprise approaches are weak on transformation and implementation, while technical architecture is weak on cross-technology stakeholder concerns.
Notes by Brendan Foote
All Architecture Evaluation Is Not the Same: Lessons Learned from More Than 50 Architecture Evaluations in Industry
Matthias Naab, Jens Knodel, and Thorsten Keuler, Fraunhofer IESE
Matthias has evaluated many systems' architecture, ranging from tens of thousands of lines of code to tens of millions, and primarily in Java, C++ and C#. From this he distills out commonalities in the various stages of the evaluations. To start with, the initiator of the evaluation was either the development company or an outside company, such as a current customer or a potential one. The questions being asked also varied--whether wondering if the architecture is adequate for one's solutions, what the impact would be of changing the system's paradigm, or how big a difference there was between a system and the reference architecture.
Notes by Brendan Foote
Keynote Address: Learning to Surf
Mary Poppendieck, Poppendieck.LLC
We've always had to ability to think in different ways by pretending to "stand in someone else's shoes." But without even trying, we are using two different modes of thinking: type 1, the fast, reflexive, intuitive mode; and type 2, which is slow and thoughtful.
Notes by Frank M. Rischner
Architecture Patterns for Mobile Systems in Resource-Constrained Environments
Grace Lewis, Jeff Boleng, Gene Cahill, Edwin Morris, Marc Novakouski, James Root, and Soumya Simanta, SEI
First responders, soldiers, and other front-line personnel work in resource-constrained environments. It is necessary to use mobile systems in those environments. The systems are limited in performance and battery life. This talk is about architectural patterns. The first pattern Lewis talked about is the Data Source Integration Pattern, which means the data source is on the server. Some of the operations on the data are very power consuming, so we don't want them on the mobile device. The user defines the filters on the mobile device and sends them to the server. The second pattern is the Group Context Awareness Pattern. The users don't go out in the field alone. The users' devices are connected to the same controller, so all devices show the same view. Since the users are not in the field alone and probably operate in a close area, only one device needs the GPS has to be turned on. This model is a layered MVC pattern. Rule sets apply to the mission and are interchangeable. The third pattern is the Cloudlet-Based Cyber-Foraging Pattern. Cyber-foraging has been around for a while; the most known application is probably Siri from Apple. The Cloudlet-Based Cyber-Foraging base is on a VM manager.
The SEI is conducting a survey to understand more about the extent to which architectural concerns play a role in agile software development. In particular, the goal of this survey is to understand some of the existing practices used to quantify architecture. This topic is of growing importance. As successful agile techniques are applied to larger and larger projects, they require increased visibility into the architecture of the system. Your participation is important to allow the SEI to correctly characterize the nature of the problem and to understand some solutions that people have found useful.