Better Software Magazine Articles

Building a Foundation for Structured Requirements: Aspect-Oriented Engineering Explained (Part 1)

Aspect-oriented requirements engineering (AORE) is a new methodology that can help us improve the analysis, structure, and cost of development of software requirements. AORE does not replace but rather complements any of the existing requirements methodologies. This two-part paper explains to software practitioners the AORE concept, illustrates how it can be applied on software projects, and discusses the benefits of AORE. Part I focuses on the AORE analysis techniques.

Yuri Chernak
Two Cheers for Ambiguity

Some people dismiss words such as skill, diversity, problems, and mission as being too ambiguous to be useful. But one tester's ambiguity is another tester's gauge for assessing consensus on a project and how to achieve that consensus.

Michael Bolton's picture Michael Bolton
A Story About User Stories and Test-Driven Development: Into the Field

Drawing on real events from the authors' combined experience, this story picks up where it left off in the November 2007 issue and follows a fictional team as it encounters some of the pitfalls of using test-driven development.

Gertrud Bjørnvig Neil Harrison
A Story About User Stories and Test-Driven Development: The Setup

While "testing" is part of its name, many TDD pundits insist TDD is not a testing technique, but rather a technique that helps to focus one's design thinking. Drawing on real events from the authors' combined experience, this story follows a fictional team as it encounters some of the pitfalls of using test-driven development.

The Whorfian Hypothesis

Benjamin Whorf hypothesized that the language we speak constrains the thoughts we can have. Learn how a well-developed organizational vocabulary can help increase the quality of your products.

Lee Copeland's picture Lee Copeland
Know What's at Stake

Everyone knows the importance of well-defined functional requirements. We want our products to work, don't we? But how many of us are paying as much attention to defining our non-functional requirements? In this historically focused feature, we learn from past mistakes the potentially disastrous results of inadequately tested NFRs.

Rock, Paper, Scissors: How Testers Uncover Hidden Requirements

The requirements process is not a linear one. In this article, Michael Bolton helps you get in the game by showing how the elements of the requirements process–reference, inference, and conference–interact and influence each other.

Michael Bolton's picture Michael Bolton
The Case of the Missing IF

Grandma cooked her roast a certain way, and now you're repeating the process without knowing why you have to trim the ends off an uncooked roast even though the pan is adequately sized. Relic processes in many organzations fall trap to this mindset since the reason behind the action lost its meaning long ago. Lee Copeland calls these "IF ..., THEN ..." processes. When the organization loses sight of the IF responsible for the action, then you're left with what Lee describes as "a process without a context; a rule without a reason."

Lee Copeland's picture Lee Copeland
What Goes Up Must Come Down

Writing requirements purely top-down or only bottom-up is risky to say the least. The devil's in the details, and those details are likely to be missed when working from a single direction. What if you could tackle your requirements from both directions by incorporating use cases and user centered design? Learn how balancing your approach to writing requirements can result in more detailed, pragmatic documentation.

Jeff Patton's picture Jeff Patton
If the Shoe Doesn't Fit: Agile Requirements For Stepsister Projects

Once upon a time there was an Agile requirements process and an ugly stepsister project. This might sound like the beginning of a fractured fairy tale, but it's a reality for many projects that don't fit the criteria for an efficient, effective requirements process. Language barriers, large teams, and tunnel vision are all things that can turn your project from Cinderella to stepsister. Find out how you can overcome these obstacles and get your team back to "happily ever after."

Jennitta Andrea's picture Jennitta Andrea

Pages

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.