Archive: 2015-04

Jane Orsulak and Julie Kent, Raytheon
by Jacob Tate, Mount St. Mary's University

Jane Orsulak and Julie Kent kicked off the experience-presentation session on SATURN's final day by talking about "System Characterization: An Approach to Modernizing Disparate Legacy Systems." In this presentation, they gave a summary of some of the training that soldiers have to go through, such as live training and virtual training.

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

How do you make quality happen? Budget time for quality discussions and quality testing. During envisioning and requirements gathering, identify core qualities. The core goal of agile and lean was not just to go faster, but to get rid of waste. Quality can be a result of those processes, but you need to engineer for quality by architecting for quality and then testing for it. You'll also need to determine appropriate times when qualities can be tested and delivered.

Len Bass; Sascha Bates, Chef; Sam Newman, ThoughtWorks
by Jacob Tate, Mount St. Mary's University

Len Bass, Sascha Bates, and Sam Newman started off the afternoon session with a presentation titled "DevOps: Essentials for Software Architects." Dr. Bass introduced this session by explaining exactly what the speakers will mean by "DevOps." He stated that after software architects or engineers finish their job, it often takes too long to get their code into production. DevOps is concerned with reducing the time from code completion to code production. Errors in code and miscommunication about which versions of which tools are being used are some of the biggest problems causing the process to be slow. We can speed up deployment by setting up an architecture so that development teams do not have to coordinate with each other; this coordination is where a lot of time is lost.

Matthias Naab, Fraunhofer IESE; Ralf Carbon, John Deere; and Susanne Braun, Fraunhofer IESE

by Jacob Tate, Mount St. Mary's University
Drs. Ralf Carbon and Matthias Naab kicked off the short-presentation afternoon session with their talk titled "Never Again Offline?!? Experiences on the Outstanding Role of Data in a Large-Scale Mobile App Ecosystem." As you might gather from the lengthy title, there was an abundance of information packed into these 30 minutes.

Gloria Ingabire, Carnegie Mellon University

OpenMRS is an existing, robust medical record system (MRS), and Ingabire is proposing some additional functions for it, called OpenMRS+. She was inspired to take on this challenge by her mother's history of diabetes and uncle's history of cardiovascular disease. If people knew the likelihood of getting a non-communicable disease, they might be more likely to take precautions.

Simon Brown, Coding the Architecture

by Jacob Tate, Mount St. Mary's University
Simon Brown taught us a lot in his session titled "Software Architecture as Code." From teaching us where Jersey is to how to extract architecture from code, Brown gave a riveting talk on bridging the gap between architecture and code. Diagrams for software architecture are often messy; one developer cannot distinguish another's way of thinking by looking at sloppy boxes and mismatched lines. Would we write our code this way? Our code does not map to the architectural views we created, and this is a problem.

Forrest Shull, Carnegie Mellon Software Engineering Institute (SEI);
Thomas DuBois, The Boeing Company;
Nick Guertin, Office of the Deputy Assistant Secretary of the Navy for Research, Development, Test, and Evaluation;
Michael McLendon, SEI;
and Douglas C. Schmidt, Vanderbilt University and SEI

Forrest Shull opened the session with a brief introduction to Open Systems Architectures (OSA), an initiative within the DoD, to make systems more configurable and adaptable than they are today. This initiative ties in with the Better Buying Power Initiative, which focuses on making systems more efficient and effective. It's about system architecture, but software architecture is buried within that. How do we make systems more modular, more open, and still deal with interfaces between the components when the systems are part of a community? How much to make open and how much to keep behind the wall are issues that this initiative must deal with. Each panelist gave a brief on their opinions of where OSA stands today and what its challenges are.

Ariadna Font Llitjós, IBM Watson Group; Jonathan Berger, Pivotal Labs; and Jeff Patton, Jeff Patton & Associates
Font Llitjós began this conversation-style panel with a brief review of Design Thinking 101: "Design is not a product designers produce"; "design is a process designers facilitate." Then she introduced IBM's method, which includes four modes of design thinking: Understand, Explore, Make/build/prototype, and Validate/iterate.

Paul Boos, Santeon Group
by Jacob Tate, Mount St. Mary's University

Paul Boos introduced us to a little Japanese in his talk titled "Improving Architectural Refactoring Using Kanban and the Mikado Method." These methods have been employed by such companies as Toyota to drastically increase production speed while tracking progress. But how does this translate from assembly lines to software?

Rick Kazman, University of Hawaii and Carnegie Mellon Software Engineering Institute, and Humberto Cervantes, Universidad Autónoma Metropolitana-Iztapalapa
Design is hard. Architects need insight into types of architectural drivers, guidance on selecting design concepts, and what drives certain design decisions to make good decisions by considering these consciously. Architects also need an approach to negotiate with management and stakeholders better to make these good decisions. In this tutorial session, Kazman and Cervantes presented an updated version of the 2006 Architecture-Driven Design Method 2.0 to address these concerns.

Einar Landre and Jørn Ølmheim, Statoil

by Jacob Tate, Mount St. Mary's University
Einar Landre presented an experience report at the last morning session titled "Systems of Action: A Stack Model for Capability Classification." The subject matter of this presentation delved into the importance of structuring a class of systems that can observe phenomena or processes and then interpret this data and make intelligent decisions.

Michael Keeling, IBM Watson Group
The concept of design as a way of thinking comes from Herbert Simon in 1969. Companies would empathize with the user and work to solve their problems, but this approach had the unintended side effect of focusing too exclusively on the user interface, and there is more to design in software than the user interface. Software architecture is the perspective that holds all the perspectives together: users, business needs, and more.

George Fairbanks, Google
In this experience report, George Fairbanks discusses his recent experiences from assembling large bits of software. He reminds us of how sneakily dependencies become complicated through the analogy of the frog in a gradually heating pot of water. Architects could solve the complexity problem up front in a waterfall process, but how and when can they architecturally intervene in an incremental development process?

Mary Shaw, Carnegie Mellon University

by Jacob Tate, Mount St. Mary's University
The SATURN 2015 Conference is underway, and what a great start! As the largest SATURN Conference to date with over 200 attendees, you can feel the excitement and buzz of the people who traveled from all over the globe to attend. It kicked off yesterday with a few special sessions and classes, but more notably with the introductions and the first keynote speaker this morning. Mary Shaw gave a fast-paced lecture on the progress of engineering in terms of the software discipline. She explored the question "Is software engineering really engineering?" and systematically explained the various definitions of engineering, such as "creating cost-effective solutions to practical problems by applying codified knowledge and building things in the service of mankind."

At SATURN 2015, the software architecture community will put microservices on trial. Here is an abstract of this event, which will take place on Tuesday, April 28, from 5:00 to 6:00 pm:

Microservices architecture has emerged as a widely discussed style of building distributed web and internet systems. Proponents argue that this variant of service-oriented architecture (SOA) is well suited to address the challenges of cloud computing, scalability, increased flexibility, and complexity, among others. But haven’t we seen this all before? Is there really anything new and interesting about microservices architecture? Or is this simply a case of history repeating itself, like the last time service-oriented architectures were all the rage? Microservices architecture is hereby charged with being an attractive nuisance in the first degree. SATURN 2015 has recruited an expert panel of judges to debate the benefits and perils of microservices architecture and help you, the jury, learn the facts and determine the final verdict.

Seventh International Workshop on Managing Technical Debt (MTD 2015) October 2nd 2015, Bremen, Germany, in conjunction ICSME 2015 http://www.sei.cmu.edu/community/td2015/ Delivering complex, large-scale systems faces the ongoing challenge of how best to balance rapid deployment with long-term value. Theoretical foundations and empirical evidence for analyzing and optimizing short- term versus long-term goals in large-scale projects are needed. From the original description—“not quite right code, which we postpone making right”—various people have used the metaphor of technical debt to describe many kinds of debts or ills of software development. On one hand, the practitioner community has increased interest in understanding and managing debt. On the other hand, the research community has an opportunity to study this phenomenon and improve the way it is handled. We can offer software engineers a foundation for managing such tradeoffs based on models of their economic impacts. The workshop will be held in conjunction with the International Conference on Software Maintenance and Evolution (ICSME 2015), September 29--October 1, 2015, Bremen, Germany. For more information and to participate, see the Workshop Program.