Once external requirements are captured, we are able to manage them, meaning we will refine and describe requirements. We are now considering the system so we will work IN it. We're also changing the current working view, following our progression in the systems engineering process.
To manage requirements we work in the view "2.1. Define requirements".
Define system requirements
System requirements could come from several producers. They are three common ways to create a requirement:
- Requirement produced directly by the system
- Requirement produced by another requirement in an external system
- Requirement produced by another requirement in the system (we call it a parent/child relation)
In the two last cases, we are talking about requirements refinement.
We will see there are three ways to build the requirements management view.
We start with requirements produced directly by the system. Using the palette, we create a requirement called: "OS and Laptop power"
The view of your expanded system becomes :
Requirement produced by another requirement in an external system
We could also call this external requirements refinement.
We are talking about requirements we created in enabling systems and/or in stakeholders which are producing requirements in our system. Indeed, external requirements have an impact on our system, that's why we refine them.
To create this refinement, we have a few things to do :
- Create the refined requirement in the system
- Create link between the two requirements (external and internal one). This link is a flow of the type "refine".
To illustrate this, let's look at our example. We will refine the requirements we created in the enabling system. The requirement we created in the enabling system "User" was "User needs a local and wide area network". This requirement will be refined in our system in two new requirements: "wifi connection" and "ethernet connection".
Things to do :
- Using the palette, create two requirements in the system called "wifi connection" and "ethernet connection".
- create a refine between the old requirement and the first new one.
- Create a refine between the old requirement and the second new one.
In our example, we now have the following view :
Requirements produced by another requirement in the system (refinement)
Parent/Child relation in requirements management are displayed by a hierarchical interlocking. That means that if you want to refine a requirement in several "sub-requirements" you create the new children requirements inside the parent one. As you do with other objects, you can enter the parent requirement by double clicking in it and creating its children requirements inside or you may grag and drop new requirements directly in it from the palette.
It is donde exactly the same way to create a requirement in the system as for requirements in enabling system or stakeholders. Using the palette, we drag and drop a requirement object in the sytem and give it a name.
In your project, you can add other requirements and refine them more and you will have a more complete requirements management view.
2 Comments
Philippe Toussaint
shall we show a rational desc attribute ?
Philippe Toussaint
talk about requiremlents type ? constraint ...