对基于计算机的系统的要求可以通过许多不同的方式看到。一些软件人员认为使用多种不同的表示模式是值得的,而另一些人则认为最好选择一种表示模式。
需求模型的特定元素专用于将要使用的分析建模方法。
- 基于场景的元素:
使用基于场景的方法,从用户的角度描述系统。例如,基本用例及其对应的用例图演变为基于模板的更复杂的用例。图1(a)描绘了一个UML活动图,用于引发需求并使用用例来表示它们。分为三个层次。 - 基于类的元素:
具有相似属性和共同行为的事物的集合,即对象被分类为类。例如,可以使用UML案例图来描述SafeHome安全函数的Sensor类。请注意,该图列出了传感器的属性以及可用于修改这些属性的操作。除了类图之外,其他分析建模元素还描述了类彼此协作以及类之间的关系和交互的方式。 - 行为要素:
可以看出基于计算机的系统的行为对所选设计和所采用的实现方法的影响。需求行为必须提供描述行为的建模元素。通过描述导致系统更改状态的状态和事件来表示系统行为的方法是状态图。状态是一种外部可观察的行为模式。另外,状态图指示由于特定事件而采取的动作。
为了说明状态图的使用,请考虑内置在safeHome控制面板中的软件,该软件负责读取用户输入。简化的UML状态图如图2所示。
- 面向流程的元素:
当它流经基于计算机的系统时,信息将发生转换。系统接受输入,应用功能对其进行转换,并产生各种形式的输出。输入可以是由换能器发送的控制信号,运算符键入的一系列数字,在网络链路上发送的信息包或从二级存储中检索到的大量数据文件。变换可能会损害单个逻辑比较,复杂的数值算法或专家系统的规则推论方法。输出产生200页的报告,或者可以点亮单个LED。实际上,我们可以为任何基于计算机的系统创建流模型,而不管其大小和复杂性如何。