Understanding Effort and Impact
The effort expended for this best practice will depend on your organization. Like some software engineering practices, this does not require extended effort in learning but it does entail change in the organization. It will also depend on the software process that your team employs. For those following a strict agile process, you may depend more on your user stories and back log. For those in regulated industries, you may already have a robust process. In all situations, you and your client, even if your client is internal to the company, should agree on what you are building.
This section contains several books and articles that you can investigate. For those of you who are in regulated industries and who must implement rigorous process, consider the following tools, books, and training
- “Writing Better Requirements” is a short, concise, and highly informative book.
- Review the session: “Practical Techniques for Gathering and Managing System Requirements”
- Evaluate NI Requirements Gateway
- Consider sitting for the Training Course: Using LabVIEW and Test Automation in Regulated Markets
This is one best practice that you simply start executing. For each project, you may choose to refine the process.
You will need to build alignment on your team. Here are some things to consider:
- Determine the extent to which you must have formal tracking processes.
- Determine if there are other teams or groups in your company that also need to align with this process change.
- Consider having members of the team review requirements for clarity and the ability to verify that the requirement can be verified.
- Consider having a process to manage change, potentially including the effort involved.
- Consider designing your test plan as you define requirements.
Blog: Why Bother with Functional Specifications
"Joel on Software", a popular blog, shares a few stories on why you should have functional specifications
Session: Practical Techniques for Gathering and Managing System Requirements
Having well-defined requirements at the beginning of a project can help pave the road to success. Stop trying to guess what you think your customer wants and start writing unambiguous requirements that are both verifiable and traceable. Learn more about requirements traceability and how it helps project management, regulatory compliance and even improves software quality. Explore an improved technique for requirements tracking through an OSLC layer for the LabVIEW IDE.
Book: Writting Better Requirements
How does one define a "good requirement"? Have you ever seen the following requirement: "The software should be easy to us"? How do you validate that requirement? This short and succinct book explains what a good requirement is and how to facilitates the conversation that extracts the requirements. It is a must read for any software project lead.
Book: Software Requirements
Now in its third edition, this classic guide to software requirements engineering has been fully updated with new topics, examples, and guidance. Two leaders in the requirements community have teamed up to deliver a contemporary set of practices covering the full range of requirements development and management activities on software projects.
Tools: Requirements Specification Template
Tecnova, an NI Alliance Partner, provides a free Requirements Specification Template for your use.
Software Evaluation: IBM Rational Doors
One of the most popular software tools that has been designed for requirements management is: IBM Rational Doors. This link will take you the page where you can evaluate the tool and determine whether it belongs in your workflow.
NI Forums: Using Bookmarks in LabVIEW
This blog post, kicked off by LabVIEW Champions Brian Hoover, explores many ways to use bookmarks in LabVIEW
Tutorial: VeriStand and Requirements Gateway (a Requirements Traceability Tool)
This tutorial will show you how to implement requirements Traceability with VeriStand.
Training: Using LabVIEW and Test Automation in Regulated Markets
Software engineering processes become even more important as you navigate the regulatory requirements and business demands when using LabVIEW for test and automation for medical devices. This course delivers best practices for design validation and manufacturing test using a fictional example of a medical device manufacturing test fixture throughout this course to illustrate concepts and provide a basis for discussion.