Entries Tagged as 'Agile '

Developing an Architecture-Focused Measurement Framework for Managing Technical Debt

Agile , Architecture , Technical Debt No Comments »

By Ipek Ozkaya
Senior Member of the Technical Staff
Research, Technology, and System Solutions

Managing technical debt, which refers to the rework and degraded quality resulting from overly hasty delivery of software capabilities to users, is an increasingly critical aspect of producing cost-effective, timely, and high-quality software products. A delicate balance is needed between the desire to release new software capabilities rapidly to satisfy users and the desire to practice sound software engineering that reduces rework. A previous post described the practice of strategically managing technical debt related to software architecture, which involves deliberately postponing implementation of some architectural design choices to accelerate delivery of the system today and then rearchitecting at a later time. This blog post extends our prior post by discussing how an architecture-focused analysis approach helps manage technical debt by enabling software engineers to decide the best time to rearchitect—in other words, to pay down the technical debt.

Read more...

A Summary of Key SEI R&D Accomplishments in 2011

Acquisition , Acquisition Dynamics , Agile , Architecture Documentation , Architecture Driven Design (ADD) , Binaries , Cyber-physical Systems , Fuzzy Hashing , Handheld Devices , Malware , Measurement & Analysis , Resilience Management Model (RMM) , Safety-Related Requirements , Security-Related Requirements , SEI Research , Software Cost Estimates , Team Software Process (TSP) , Technical Debt 1 Comment »

By Douglas C. Schmidt
Chief Technology Officer

Douglas C. SchmidtA key mission of the SEI is to advance the practice of software engineering and cyber security through research and technology transition to ensure the development and operation of software-reliant Department of Defense (DoD) systems with predictable and improved quality, schedule, and cost. To achieve this mission, the SEI conducts research and development (R&D) activities involving the DoD, federal agencies, industry, and academia. One of my initial blog postings summarized the new and upcoming R&D activities we had planned for 2011. Now that the year is nearly over, this blog posting presents some of the many R&D accomplishments we completed in 2011.

Read more...

Lean Principles and Software Architecture: The Waste of Information Transformation

Agile , Lean , SEI Research 2 Comments »

By Nanette Brown, Senior Member of the Technical Staff
Research, Technology, and System Solutions program

Nanette BrownOccasionally this blog will highlight different posts from the SEI blogosphere. Today’s post is from the SATURN Network blog by Nanette Brown, a senior member of the technical staff in the SEI’s Research, Technology, and System Solutions program. This post, the third in a series on lean principles and architecture, continues the discussion on the eight types of waste identified in Lean manufacturing and how these types of waste manifst themselves in software development. The focus of this post is on mapping the waste of motion and the waste of transportation from manufacturing to the waste of information transformation in software development.

 

Read more...

Enabling Agility by Strategically Managing Architectural Technical Debt

Agile , SEI Research , Technical Debt 3 Comments »

By Ipek Ozkaya
Senior Member of the Technical Staff, Research, Technology, and System Solutions

Ipek OzkayaAs industry and government customers demand increasingly rapid innovation and the ability to adapt products and systems to emerging needs, the time frames for releasing new software capabilities continue to shorten. Likewise, Agile software development processes, with their emphasis on releasing new software capabilities rapidly, are increasing in popularity beyond their initial small team and project context. Practices intended to speed up the delivery of value to users, however, often result in high rework costs that ultimately offset the benefits of faster delivery, especially when good engineering practices are forgotten along the way. This rework and degrading quality often is referred to as technical debt.  This post describes our research on improving the overall value delivered to users by strategically managing technical debt, which involves decisions made to defer necessary work during the planning or execution of a software project.

Read more...

Building a Foundation for Agile (To Enable Rapid Change)

Acquisition , Agile 4 Comments »

by Stephany Bellomo
Chief Engineer for Civil & Defense Agencies, Acquisition Support Program

Stephany BellomoThis is a second in a series of posts focusing on Agile software development. In the first post, “What is Agile?” we provided a short overview of the key elements of the Agile approach, and we introduced the Agile Manifesto. One of the guiding principles from the manifesto emphasizes valuing people over developing processes. While the manifesto clearly alludes to the fact that too much focus on process (and not results) can be a bad thing, we introduce the notion here that the other end of the spectrum can also be bad. This blog explores the level of skill that is needed to develop software using Agile (do you need less skill or more?), as well as the importance of maintaining strong competency in a core set of software engineering processes.

Read more...