2.2 建立需求模型
在Power Designer中生成需求模型的方式多种多样,主要有如下几种形式:
1)新建RQM。
2)从已有的RQM生成新的RQM。
3)从其他模型导入生成的RQM。
4)从Word文档导入生成的RQM。
本节主要讲解在Power Designer中直接新建RQM的方法。
2.2.1 创建RQM
选择“File”→“New”菜单项,从弹出的新建模型对话框(见图2-3)中选择“Model types”→“Requirements Model”,或者在新建模型对话框中选择“Categories”→ “Requirements and Planning”→“Requirements”,或在工作空间区域选择“Workspace”→ “New”→“Requirements Model”菜单。
在图2-3中的“Model type”区域选择模型类型,在“Diagram”区域选择需求模型下的图形,在“Model name”设置需求模型的名称,如“需求模型实例1”。
创建后的空需求模型文档如图2-4所示。
图2-4中的第一行是操作工具栏,“Title ID”所在行是表头行,下面的各行是内容行。
2.2.2 编辑RQM
编辑需求模型主要包括添加需求、编辑需求属性、添加子需求、提高或降低需求层级、删除需求、修改显示列、创建用户、创建用户组、创建术语库、创建业务规则功能。
例如,“餐饮在线点评系统”有“管理门户”和“会员门户”两个一级需求,在“管理门户”下添加“系统管理”、“企业管理”、“会员管理”和“统计分析”4个子需求。在“会员门户”下添加“首页”、“餐厅”、“团购活动”、“优惠活动”、“会员活动”和“会员中心”6个子需求。
- 添加一级需求
在需求文档视图窗口,单击工具栏上的(Insert an Object)按钮,或者单击需求文档视图的空白区,或者按Ctrl + I组合键,添加新的需求。新添加的需求具有默认的需求名称(如Requirement_1)和需求代码(如REQ_1)。
在需求文档窗口中默认包括“Title ID”(需求ID)、“Full Description”(需求描述)、“Code”(需求代码)、“Priority”(需求优先级)、“Workload”(工作量)、“Risk”(风险等级)和“Status”(状态,包括草稿、已定义、已校验、待评审和已评审5种状态)。
- 编辑需求属性
可以直接在需求文档窗口的编辑区域编辑主要属性,也可双击某行,或选中某行后单击(Properties)按钮,或者按Alt + Enter组合键打开编辑需求属性窗口,如图2-5所示。
从图2-5中可以看出,编辑需求属性窗口常用的选项卡包括“General”(通用信息)、“Detail”(详细信息)、“Traceability Links”(追踪链接)、“User Allocations”(用户或用户组分配)、“Related Glossary Terms”(关联的术语库)和“Notes”选项卡,单击“More>>”按钮可打开更多的选项卡,如“Extended Dependencies”等选项卡。下面对常用选项卡进行说明。
(1)General选项卡
用于设置需求的一般信息,各项参数含义如下:
1)Parent:需求的父需求名称,如果需求为一级需求,则显示需求模型的名称。
2)Title ID:需求的ID,为需求的层级编号,自动生成,不可编辑,如果为一级需求,则按照1、2、3……N以此类推。如果为1下的二级子需求,则按照1.1、1.2……1.N以此类推。
3)Title:需求的名称,一般使用中文表示。
4)Code:需求的代码,与后期的具体设计有关,一般使用英文、数字加符号表示。
5)Description:表示需求描述,可以用工具辅助完成富文本。可单击中的下拉按钮,选择“Microsoft Word”,进入Word文档编辑需求描述,在Word编辑完毕后,单击关闭按钮提示用户是否将内容保存到需求文档中,单击“是”按钮即可。因为可在Word中编辑,所以需求描述可以是带格式的文本、表格或图片等信息。
(2)Detail选项卡
用于设置需求的优先级和风险等级等信息,如图2-6所示。
各项参数含义如下:
1)Comment:需求的简要说明。
2)Stereotype:语义的扩展说明。
3)Type:需求类型,包括Undefined(未定义)、Design(设计)、Functional(功能)和Technical(技术)4种需求类型。
4)Status:需求状态,包括Draft(草稿)、Defined(已定义)、Verified(已校验)、To be reviewed(待评审)和Approved(已评审)5种状态。
5)Priority:需求优先级,下拉列表中包括1~5的优先级值,每0.5一个刻度,数值越大,表示该需求的优先级越高。
6)Selected:该复选框表示需求是否包含在工程中,选中表示包含,否则表示不包含。
7)Risk:表示需求的风险级别,包括Undefined(未定义)、Low(低)、Medium(中)和High(高)4种。
8)Verification:表示需求的测试级别,包括Undefined(未定义)、Automate Testing(自动测试)、Demonstration(演示)、Manual Testing(手工测试)和Mixed(混合测试)5种。
Traceability Links选项卡:设置该需求连接的设计对象和外部文件,以便为当前需求提供更详细的依据和参考,不再赘述。
(3)User Allocations选项卡
设置将当前需求指定到某个用户或用户组上,此操作需要首先建立用户或用户组,该部分内容将在本章的“创建用户”和“创建用户组”小节中详细介绍。在“User Allocations”选项卡单击(Add Objects)按钮,打开“Add Objects”窗口,如图2-7所示。
在图2-7中选中用户后单击“OK”按钮,返回“User Allocations”选项卡,通过修改TYPE列设置用户所需完成的工作。TYPE可设置的值包括Undefined(未定义)、Design(设计)、Documentation(文档)和Quality(质量)5种。
(4)Related Glossary Terms选项卡
用于设置当前需求的专用术语,创建专业术语参考本章后续的“创建术语库”小节。在“Related Glossary Terms”选项卡单击(Add Objects)按钮,打开“Selection”窗口,如图2-8所示。
(5)Notes选项卡
用于设置当前需求的文字或公式化描述,不再赘述。
- 添加子需求
在需求文档视图窗口,选择某个需求后,单击工具栏上的(Insert an Sub-Object)按钮,或者按Ctrl + Shift + I组合键,创建选中需求的子需求。可使用父需求的打开、关闭按钮打开或者关闭子需求。添加子需求后的需求文档模型窗口如图2-9所示。
- 提高或降低需求层级
添加需求后,若发现需求层次不对,可通过工具栏上的按钮将需求层级提高一级,使用按钮将需求层级降低一级。 - 删除需求
若发现某个需求不正确,想删除该需求,可在需求文档视图的编辑区域选择该行后按Delete键或单击工具栏的按钮删除。需要注意的是,删除某个需求时,若该需求下有子需求,则子需求也会被关联删除。 - 修改显示列
在需求文档视图编辑区域默认只显示“Title ID”(需求ID)、“Full Description”(需求描述)、“Code”(需求代码)、“Priority”(需求优先级)、“Workload”(工作量)、“Risk”(风险等级)和“Status”列,若想修改显示列,可单击工具栏的(Customize Columns and Filter)按钮,或者按Ctrl + U组合键,弹出显示列设置窗口,如图2-10所示。
在图2-10中可选中或取消选中对应的列后,单击“OK”按钮确认显示项。
- 创建用户
用户(user)是指与需求有关的人员,如需求分析师、系统分析师、开发人员和测试人员等。
在Power Designer的需求模型中可以创建用户,在菜单栏选择“Model”→“Users”菜单项,打开用户管理窗口,如图2-11所示,在用户列表区域可以直接添加用户,也可单击(Add a row)按钮添加用户。
双击图2-11中的某行,或者选择某行后单击(Properties)按钮,弹出用户属性窗口,如图2-12所示。
用户属性窗口包括“General”和“Notes”两个选项卡。
General选项卡用于设置当前用户的通用信息,各参数的含义如下:
1)Name:用户名称。
2)Code:用户代码。
3)Comment:用户注释。
4)Stereotype:版本。
5)Email Address:用户的E-mail地址。
6)Keywords:关键字。
Notes选项卡用于设置当前用户的文字或公式化描述,不再赘述。
- 创建用户组
用户组(group)是指对用户进行分类,通常将具有相同特性的用户组成用户组。
在Power Designer的需求模型中可以创建用户组,在菜单栏选择“Model”→ “Groups”菜单项,打开用户组管理窗口,如图2-13所示。在用户组列表区域可以直接添加用户组,也可单击(Add a row)按钮添加用户组。
双击图2-13中的某行,或者选择某行后单击(Properties)按钮,弹出用户组属性窗口,如图2-14所示。
用户组属性窗口包括“General”、“Group Users”和“Notes”3个选项卡。
(1)General选项卡
用于设置当前用户组的通用信息,各参数的含义如下:
1)Name:用户组名称。
2)Code:用户组代码。
3)Comment:用户组注释。
4)Stereotype:版本。
5)Email Address:用户组的E-mail地址。
6)Keywords:关键字。
(2)Group User选项卡
用于设置当前用户组的用户。可单击(Add Objects)按钮,在弹出页面中选中多个用户后单击“OK”按钮,为用户组添加用户,如图2-15所示。
(3)Notes选项卡
用于设置当前用户组的文字或公式化描述,不再赘述。
- 创建术语库
术语库是术语的集合,术语用于表示某一专业的特殊概念。例如,“餐饮在线点评系统”中的术语是指“团购”、“会员”等专有名词或缩略语等。
在Power Designer的需求模型中可以创建术语,选择菜单栏的“Model”→“Glossary Terms”菜单项,打开术语库管理窗口,如图2-16所示。在术语库列表可以直接添加术语,也可单击(Add a row)按钮添加术语。
双击图2-16中的某行,或者选择某行后单击(Properties)按钮,弹出术语属性窗口,如图2-17所示。
术语属性窗口包括“General”和“Notes”两个选项卡。
General选项卡用于设置当前术语的通用信息,各参数的含义如下:
1)Name:术语的名称。
2)Code:术语的代码。
3)Comment:术语的注释。
4)Stereotype:版本。
5)Keywords:关键字。
Notes选项卡用于设置当前术语的文字或公式化描述,不再赘述。
- 创建业务规则
业务规则(business rules)是满足业务需求的一系列规则,可以将客户的要求、内部准则和政府的法律等都作为业务规则,如用户编码、餐饮企业编码、会员编码的规则等。
在初始状态,需求模型中的Business Rules为禁用状态,需要通过新建扩展模型定义来启用业务规则,启用业务规则的方法如下:
选择菜单栏的“Model”→“Extensions”菜单项,在扩展模型定义管理窗口中添加一行定义,如图2-18所示。
选择菜单栏的“Model”→“Extended Model Definitions”菜单项,在扩展模型定义管理窗口中添加一行定义,如图2-18所示。
在图2-18中双击“业务规则”行,或者选择该行后,单击(Properties)按钮,打开扩展模型属性定义窗口,在该窗口选择“Profile”节点后单击鼠标右键,选择“Add Metaclasses”菜单项,打开“Metaclass Selection”对话框,在该窗口选择“PD Common”选项卡后选中“Business Rule”,如图2-19所示。
在图2-19中单击“OK”按钮,返回扩展模型属性定义窗口,可看到此时添加了“Business Rule”子节点,完成启用业务规则操作,在菜单“Model”下可看到多出的“Business Rules”选择项。
在菜单栏选择“Model”→“Business Rules”菜单项,打开业务规则管理窗口的编辑区域,可以直接添加业务规则,也可单击(Add a row)按钮添加业务规则。
业务规则管理窗口如图2-20所示。
双击图2-20中的某行,或者选择某行后单击(Properties)按钮,弹出用业务规则属性窗口,如图2-21所示。
业务规则属性窗口包括“General”、“Expression”和“Notes”3个选项卡。
General选项卡用于设置当前用户的通用信息,各参数的含义如下:
1)Name:业务规则名称。
2)Code:业务规则代码。
3)Comment:业务规则注释。
4)Stereotype:版本。
5)Type:业务规则的类型,包括Constraint(约束)、Definition(定义)、Factor(事实)、Formula(公式)、OCL Constraint(OCL约束)、Requirement(需求)和Validation(批准)7种。
Expression选项卡用于设置当前业务规则的表达式定义。
Notes选项卡用于设置当前业务规则的文字或公式化描述。
2.2.3 管理RQM
- 设置RQM选项
在菜单栏选择“Tools”→“Model Options”菜单项,打开RQM选项设置对话框,如图2-22所示。
在图2-22的左侧区域有Model Settings(模型设置)、Requirements Fonts(需求字体)和Naming Convention(命名约定)3个节点,各个节点的定义如下。
(1)Model Settings节点
用于设置模型,其中:
1)Name/Code case sensitive复选框:表示RQM中的对象名称和代码是否区分大小写,选中表示大小写敏感,即区分大小写,否则表示不区分。
2)Default按钮:表示是否使用默认配置,在Power Designer安装完成时,初始的默认值不区分大小写,所以单击“Default”按钮后设置为不选中“Name/Code case sensitive”复选框,但是可以通过“Set As Default”按钮更改默认设置。
3)Set As Default按钮:将当前设置确认为默认设置。
(2)Requirements Fonts节点
用于设置需求字体,如图2-23所示。
各个参数的含义如下:
1)Text:设置需求文本和各个级别。
2)Font:设置字体,如宋体、微软雅黑等。
3)Font style:设置字形,如加粗等。
4)Size:设置字号。
5)Color:设置字体颜色。
6)Effects:设置所选内容的显示效果,“Strikeout”表示文字中间显示删除线,“Underline”设置文字下划线。
7)Preview:显示上述设置的预览效果。
(3)Naming Convention节点
设置命名约定等,如图2-24所示。
其中各参数的含义如下:
1)Display:设置显示内容,“Name”表示设置模型图形中对象的名称,“Code”表示设置模型图形中对象的代码,“Enable name/code conversions”表示对象名称和对象代码可相互转换。
2)Name/Code标签:设置模型对象名称/代码的命名约定。其中,“Name template”指定名称模板;“Maximum length”设置最大长度;“Character case”设置字符的大小写约定,“Uppercase”表示大写,“Lowercase”表示小写,“Mixed case”表示混合使用;“Valid characters”设定有效字符,选中“All valid”表示全部有效;“Invalid characters”设定无效字符,选中“No accents”表示没有强调;“Default character”设定默认字符。
3)Name To Code/Code To Name标签:设置模型对象名称到代码/模型对象代码到名称的转换约定。其中,“Conversion Script”设置转换约定的脚本,“Conversion table”设置转换表。
- 设置RQM属性
在菜单栏选择“Model”→“Model Properties”菜单项,打开模型属性设置窗口,如图2-25所示。
RQM属性设置窗口默认包括4个选项卡,分别为“General”(通用信息)、“Detail”(详细信息)、“Traceability Links”(追踪链接信息)和“Notes”(注释信息),单击“More>>”按钮,可查看更多的属性选项卡设置。
(1)General选项卡
定义需求的通用信息。各参数的含义如下:
1)Name:需求模型的名称。
2)Code:需求模型的代码。
3)Comment:需求模型的注释信息。
4)File Name:未保存之前,此项显示为空,需求模型保存后,显示需求模型的存放路径和文件名称。
5)Author:文档作者。
6)Version:文档版本。
7)Default view:默认的需求文档视图。如果有多个需求文档视图时,可从下拉列表中选择一个选项,设置完成后打开模型时将默认显示所设置的Default view。
8)Keywords:关键字。
(2)Detail选项卡
定义完成项目需求需要的工作量(Workload),单位可设置为“天”或“小时”,可保留一位小数。Detail选项卡如图2-26所示。
RQM需要的总工作量是所有子需求总工作量的总和,Workload 1、Workload 2、Workload 3和Workload 4分别表示该RQM分别给第一、第二、第三和第四个人或团队的工作量。
(3)Traceability Links选项卡
设置RQM连接的设计对象和外部文件,以便帮助用户更好地理解需求。Traceability Links选项卡如图2-27所示。
单击图2-27的按钮,弹出链接外部设计对象窗口,单击按钮,弹出选择外部文件页面,可选择本地硬盘上的“解决方案”或相关规范文档作为链接文档。
(4)Notes选项卡
该选项卡包括“Description”和“Annotation”两个标签,其中“Description”表示需求属性的文字描述,“Annotation”表示需求属性的公式化描述。
- 导出需求模型
在菜单栏选择“Report”→“Reports”菜单项,打开报表列表对话框,如图2-28所示。
在图2-28中单击(New Report)按钮,打开新建报表对话框,如图2-29所示。
在图2-29中“Report name”文本框中指定“报表名称”,在“Language”文本框中指定语言为“Simplified Chinese”(简体中文),“Report template”用于指定报表模板,包括“”、“Full Requirement Report”、“List Requirement Report”和“Standard Requirement Report”4个选项,可选择“Standard Requirement Report”选项表示生成标准的需求报告,选中“Use legacy Report Editor”表示使用传统的编辑器,单击“OK”按钮,打开报表属性设置窗口,如图2-30所示。
在图2-30的左侧为所有可选的报表导出项,右侧为已设置的报表导出项,用户可以自行设置导出项,也可使用默认导出项配置,笔者只是删除了节点的“%ITEM%”前的“需求”字样,然后单击工具栏的按钮,将需求模型导出为RTF文档,效果如图2-31所示。