Entries Tagged as 'Quality Attribute Workshop '

Evolutionary Improvements of Quality Attributes: Performance in Practice

Agile , Architecture , Architecture Tradeoff Analysis Method (ATAM) , Quality Attribute Workshop No Comments »

By Neil Ernst 
Member of the Technical Staff 
Software Solutions Division

This post is co-authored by Stephany Bellomo

Neil ErnstContinuous delivery practices, popularized in Jez Humble’s 2010 bookContinuous Delivery, enable rapid and reliable software system deployment by emphasizing the need for automated testing and building, as well as closer cooperation between developers and delivery teams. As part of the Carnegie Mellon University Software Engineering Institute's (SEI) focus on Agile software development, we have been researching ways to incorporate quality attributes into the short iterations common to Agile development. We know from existing SEI work on Attribute-Driven DesignQuality Attribute Workshops, and the Architecture Tradeoff Analysis Method that a focus on quality attributes prevents costly rework. Such a long-term perspective, however, can be hard to maintain in a high-tempo, Agile delivery model, which is why the SEI continues to recommend an architecture-centric engineering approach, regardless of the software methodology chosen. As part of our work in value-driven incremental delivery, we conducted exploratory interviews with teams in these high-tempo environments to characterize how they managed architectural quality attribute requirements (QARs). These requirements—such as performance, security, and availability—have a profound impact on system architecture and design, yet are often hard to divide, or slice, into the iteration-sized user stories common to iterative and incremental development. This difficulty typically exists because some attributes, such as performance, touch multiple parts of the system. This blog post summarizes the results of our research on slicing (refining) performance in two production software systems. We also examined the ratcheting (periodic increase of a specific response measure) of scenario components to allocate QAR work.

Read more...

Reflections on 20 Years of Software Architecture: A Presentation by Linda Northrop

Architecture , Architecture Documentation , Architecture Tradeoff Analysis Method (ATAM) , Quality Attribute Workshop , Reflections on Software Architecture , Ultra Large Scale Systems 4 Comments »

By Bill Pollak,
Transition Manager
Research, Technology, & System Solutions

Bill PollakA search on the term "software architecture" on the web as it existed in 1992 yielded 88,700 results. In May, during a panel providing a 20-year retrospective on software architecture hosted at the SEI Architecture Technology User Network (SATURN) conference, moderator Rick Kazman noted that on the day of the panel discussion—May 9, 2012— that same search yielded 2,380,000 results. This 30-fold increase stems from various factors, including the steady growth in system complexity, the increased awareness of the importance of software architecture on system quality attributes, and the quality and impact of efforts by the SEI and other groups conducting research and transition activities on software architecture. This blog posting—the first in a series—provides a lightly edited transcription of the presentation of the first panelist, Linda Northrop, director of the SEI’s Research, Technology, & System Solutions (RTSS) Program at the SEI, who provided an overview of the evolution of software architecture work at the SEI during the past twenty years.

Read more...

Using TSP to Architect a New Trading System

Architecture , Architecture Tradeoff Analysis Method (ATAM) , Quality Attribute Workshop , Team Software Process (TSP) 2 Comments »

By James McHale,
Senior Member of the Technical Staff,
Software Engineering Process Management

Jim McHale This post is the second installment in a two-part series describing our recent engagement with Bursatec to create a reliable and fast new trading system for Groupo Bolsa Mexicana de Valores (BMV, the Mexican Stock Exchange).  This project combined elements of the SEI’s Architecture Centric Engineering (ACE) method, which requires effective use of software architecture to guide system development, with its Team Software Process (TSP), which is a team-centric approach to developing software that enables organizations to better plan and measure their work and improve software development productivity to gain greater confidence in quality and cost estimates. The first post examined how ACE was applied within the context of TSP. This posting focuses on the development of the system architecture for Bursatec within the TSP framework.

Read more...

Developing Architecture-Centric Engineering Within TSP

Architecture , Architecture Documentation , Architecture Tradeoff Analysis Method (ATAM) , Quality Attribute Workshop , Team Software Process (TSP) No Comments »

By Felix Bachmann,
Senior Member of the Technical Staff,
Research, Technology, and System Solutions

Felix BachmannBursatec, the technology arm of Groupo Bolsa Mexicana de Valores (BMV, the Mexican Stock Exchange), recently embarked on a project to replace three existing trading engines with one system developed in house. Given the competitiveness of global financial markets and recent interest in Latin American economies, Bursatec needed a reliable and fast new system that could work ceaselessly throughout the day and handle sharp fluctuations in trading volume. To meet these demands, the SEI suggested combining elements of its Architecture Centric Engineering (ACE) method, which requires effective use of software architecture to guide system development, with its Team Software Process (TSP), which teaches software developers the skills they need to make and track plans and produce high-quality products. This posting—the first in a two-part series—describes the challenges Bursatec faced and outlines how working with the SEI and combining ACE with TSP helped them address those challenges.

Read more...