Category Archives: Architecture-Centric Engineering

With the increasing reliance on and penetration of software into everyday lives, the need for organizations to predictably develop, acquire, and sustain high-quality software systems has never been greater. To address this need, the Carnegie Mellon University Software Engineering Institute (SEI) is pleased to announce that it will host its first Software Solutions Conference (SSC) at the Hilton Crystal City in Arlington, Va., from Nov. 16 through 18.

Gloria Ingabire, a student in the master’s of science in information technology program at Carnegie Mellon’s Rwanda campus, gave a presentation at SATURN 2015 in April. This article describes her experience at SATURN in her first trip to the United States.

On Monday, April 27, before the start of SATURN 2015, a small group of 16 software engineers met to explore ideas around the emerging microservices architecture trend. Microservices have seen a rapid rise in popularity over the past year or so, and we thought it would make an interesting topic of discussion. Sam Newman’s book covers significant ground and yet there there are still many nuances that we don’t fully understand.

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. This year’s award winners were Jochem Schulenklopper and Eelco Rommes of inspearit for their presentation titled Why They Just Don’t Get It: Communicating Architecture to Business Stakeholders.

The second award, the IEEE Software SATURN New Directions Presentation Award, is given to the presentation that best describes innovative new approaches and thought leadership in the application of architecture-centric practices. This year’s award winners were Rebecca Wirfs-Brock of Wirfs-Brock Associates and Joseph Yoder of The Refactory, Inc. for their presentation titled QA to AQ: Shifting from Quality Assurance to Agile Quality.

In addition to reflecting the high regard of SATURN attendees, these awards also contribute to the maturation of the practice of software architecture by recognizing sound and innovative practices.

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.

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.

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.

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.

As the field of software architecture has matured over the years, its concepts and terminology can be barriers to newcomers. In past years, the SATURN program was geared toward those who had attended SEI courses or had otherwise steeped themselves in the canon (a pretty hefty bookshelf). For those who had not yet done so, the SEI offered its introductory courses before the conference began.

This year, at no additional cost, the SATURN 2015 technical program includes a series of sessions intended for beginners, novices, and aspiring software architects. This Architecture Boot Camp will be held early in the conference program and led by experienced instructors from the SEI technical staff. You don’t have to attend every Boot Camp session, and you can interleave them with the main schedule.