Ugrás a fő tartalomra

How to structure a software requirements document


Q

How to structure a software requirements document


Effective requirements documentation is essential for any good software project. Expert Karl E. Wiegers explains how to structure your software requirements documents.

I have recently been tasked to write a requirements document, although I have an understanding of the structure...
of the document, I would like an example document or case study of an already written requirements document. I am quite fuzzy on the language to use within this document and how clearly to get the points across to the designer. Any assistance would be greatly appreciated. Thanks.
It's certainly true that people learn better from examples than just from descriptions or templates. It's hard to find good public examples, though, because most organizations view their requirements documents as proprietary.
You can access a sample integrated set of requirements documents here. These are drawn from Appendix D of my book, Software Requirements, 2nd Edition. There is a vision and scope document, several use case descriptions, and a software requirements specification (SRS), all for a hypothetical project called the Cafeteria Ordering System. The SRS does not contain all of the requirements for the system, but enough so you can see good examples of how to write them. These documents also illustrate the data dictionary, some simple business rules, and some analysis models (context diagram, entity-relationship diagram, state-transition diagram). These examples should give you a good idea of how you might complete each section in the templates available here.
I recommend that every organization build a collection of process assets that includes sample documents drawn from actual projects. These can serve as useful aids for anyone who needs to create similar documents on a future project. As your teams develop better examples with experience or as you undertake different kinds of projects, you can update the contents of the process assets collection. Your process assets collection also should include appropriate document templates, procedure and process descriptions, checklists, and other work aids. These items can save team members time by learning from past work that has been done in the organization.
Several other sample requirement specifications from actual projects are available at the following URLs. They reflect different templates, different writing styles, different types of projects, and also different degrees of quality:

Megjegyzések

Népszerű bejegyzések ezen a blogon

SW Documentation: Requirements

Requirements Nonfunctional Requirements Q&A FEBRUARY 17, 2010  ~  ANDREW STELLMAN ~  3 COMMENTS Non-functional requirements Q&A: We answer questions from readers about using  nonfunctional requirements  on a real software project, and how to use them on a real software project. Non-functional requirements: Planning out how well your software will work A couple of months ago I wrote a post called  Using nonfunctional requirements to build better software . It’s basically a step-by-step guide for creating an easy, practical technique to use nonfunctional requirements on a real software project, treating them in a way that’s similar to how a lot of Agile teams treat user stories, scenarios and other functional requirements: by sticking them on index cards and using them to do some lightweight planning. Since then, I’ve gotten a lot of questions about nonfunctional requirements (or, as some people call them, non functional requirements...

Privacy Notice for Visitors to Our Users’ Sites

Privacy Notice for Visitors to Our Users’ Sites Sections Who’s Who and What This Privacy Notice Covers Information We Collect About Visitors to Our Users’ Sites Information a Visitor Provides to a Site Information We Automatically Collect from the Site Other Information Provided by Our Users How We Use Visitor Information How We Share Visitor Information Other Tools Other Resources Hi there! This Privacy Notice explains how we, at Automattic, process information about the visitors of our users’ websites in connection with the services we provide through WordPress.com, Jetpack (including WooCommerce Services), IntenseDebate, Polldaddy.com, and Akismet. Read on! Who’s Who and What This Privacy Notice Covers Let’s talk first about who we are at Automattic, what we do, and what this Privacy Notice covers. We are the folks behind a variety of products and services designed to allow anyone–from bloggers, to small business owners, and enterprises–to create, publ...

THE RIGHT WAY TO WRITE A SINGLETON

THE RIGHT WAY TO WRITE A SINGLETON July 17, 2015 by   Hector Matos Even though I've written about the woes of managing state in my previous post, sometimes there's just no way we can avoid it. One example of managing state is something we're all quite acquainted with - The Singleton. The problem we find in Swift is that there are SEVERAL ways of implementing them. But which way is the right way? In this post I'm going to show you the history of the singleton and then show you the right way to implement the singleton in Swift. If you want to see the right way to implement the singleton pattern in Swift along with proof of it's "right-ness", you can scroll to the bottom of the post and see it there. :) A TRIP DOWN MEMORY LANE Swift is a natural evolution of Objective-C. In Objective-C, this is how we implemented the singleton: @interface Kraken : NSObject @end @implementation Kraken + ( instancetype ) sharedInstance { ...