Starter Guide to Requirements Management

ReqView Hands-on Tutorials

Introduction

This tutorial will guide you through common requirements management activities during a systems development process. We will demonstrates how to start using ReqView requirements management tool easily on a real-life HW/SW project.

 Avy Strominger

Preface

Coping with the complexity of products and systems developed today requires the successful implementation of a Requirements Management Tool (or RM tool) during the entire systems development process. To justify this strong statement, it is important to understand that the term RM tool understates the role and the importance of the tool during the entire system development process, as well as the essential contribution of such a tool for the successful development of projects.

Using a specialized RM tool will enable you to:

  • Gather and document requirements, based on communication of requirements with key project stakeholders.

  • Manage requirements throughout all project phases.

  • Ensure that all requirements are covered by design.

  • Ensure that all requirements are verified, and help you evaluate the completeness of testing.

  • Support project life-cycle activities: risk analysis, impact analysis, change approval, document approval, change propagation, and more.

  • Create and share a central repository of project documents. This repository is the sole source of project data for all developers, greatly improving team communication and reducing the risk of using multiple or unsynchronized document versions.

Like every tool and/or process, some questions immediately surface:

  • How will the tool fit into the current development methods/processes? Will it require a change of my development procedures, document templates, etc.?

  • How well does the tool support multiple development procedures and/or bigger teams? Real-world projects are composed of more than one discipline – usually at least Hardware, Software, and Mechanics. Civil Engineering, Aeronautics, Physics, Biology, and others might also be involved. Development methods and even document structure can be quite different between different disciplines.

  • How friendly is the tool? How steep is the learning curve?

  • How big are the IT and the QA overheads required to support the tool?

In this tutorial, we will answer the questions above for ReqView. ReqView is an easy-to-use, full-featured, versatile, and lightweight RM tool. We will demonstrate how ReqView provides outstanding solution to your project needs on a real-life, multi-disciplinary example project, using a step-by-step, hands-on approach.

UNEX Example Project

We chose the UNEXMIN project as an inspiration for this ReqView tutorial. The UNEXMIN project is an EU-funded Horizon 2020 project that developed an underwater Robotic Explorer platform, primarily targeting autonomous exploration and mapping of Europe’s flooded mines. The Robotic Explorer uses non-invasive methods for autonomous 3D mine mapping and for gathering valuable geological, mineralogical, and spatial information. The goal was to enable new exploration scenarios, and thus to support strategic decisions on the re-opening of abandoned mines based on actual data that cannot be obtained in any other ways without major costs and/or risks.

Presentation of UNEXMIN project:

You can find full details about this exciting project on website: https://www.unexmin.eu.

The UNEXMIN project is a full-scale real-world project involving the following disciplines:

  • Systems Engineering
  • Mechanical Engineering
  • Electronic Engineering
  • Software Engineering
  • Algorithms

We will use these aspects to demonstrate how ReqView helps in the development of complex, multi-discipline projects.

The UNEXMIN public web site includes a wealth of technical information. This information is usually in the form of system capabilities, status reports, summary development reports, and system testing descriptions.

In this tutorial, we will generate fictitious simplified development documents that adhere to a possible, customary development methodology. We will base the documents we create, to some extent, on contents from the UNEXMIN underwater Robotic Explorer project. These documents will be incomplete because our goal is to guide you through requirements management activities using ReqView and not to build the UNEXMIN underwater Robotic Explorer from scratch.

Tutorial Content

The tutorial will contain 8 chapters covering the following topics:

  1. Introduction: Get an introduction about the overall purpose of the tutorial, and the example project that this tutorial will use.

  2. Setting Up: See how to set up the ReqView working environment using the Git version control system.

  3. Development Process: Choose a development model and methodology for your requirements management project in ReqView.

  4. Customization: Customize ReqView for the selected development process. Create your own requirements specification templates based on the MIL-STD-498 standard.

  5. Stakeholder Requirements: Import the Stakeholder Requirements Specification for the UNEX project and process stakeholder requirements as a verifiable base for system requirements.

  6. System Requirements: Create the System Specification and Interface Specification for the UNEX project, set the basis for the Risk Reduction Plan and the Validation and Verification Plans, and add support for the System Requirements Review.

  7. System Design: Create the System Design Document, and prepare the stage for subsystems development.

  8. System Verification: Create a System Test Plan.

  9. Handling Multi-Discipline Projects: Create subprojects for bigger project management.

In each chapter, we will explain both ReqView plain usage, as well as possible workflows. The output of each chapter will also contain deliverables (i.e. ReqView projects, templates, and project documents) that will be available to you to use and/or to play with.

This is just the initial list. You may ask for additions! We will be happy to extend the tutorial further based on your feedback.

About the Author

Avy Strominger, the author of this tutorial

Avy Strominger (M.Sc. Electrical Engineering) has more than 40 years of experience in software engineering, ASIC development, systems engineering, and project management. Some of his key experiences are:

  • Developing an Ada Real-Time run-time kernel and debugging interfaces, while in TeleSoft Inc. The Ada Computer Language is specifically designed for the development of high-reliability systems, especially in the Aerospace, Transportation, and Defense markets.
  • One of the founders of Oplus Technologies Ltd., a fabless semiconductor company that designed and developed display processors for the digital display market. Avy was involved in the design, integration, and testing of the first ASIC developed by Oplus. Oplus Technologies Ltd. was acquired by Intel in 2005.
  • System Engineering and Project Management in Defense Industry projects ranging from single-discipline, several person-years projects to large, multi-year, multi-discipline projects, that include mechanics, electronics, software, and algorithms.

Avy is currently an independent consultant in the areas of system engineering.

Starter Guide
Coming Soon:
  • System Requirements
  • System Design
  • System Verification
  • Multi-discipline Projects