




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、LOGO第第4 4章章 软件软件系统需求获取、系统需求获取、分析及描述分析及描述天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-252 4.1 软件需求基础软件需求基础 4.2 需求过程需求过程 4.3 需求获取需求获取 4.4 需求分析需求分析 4.5 需求确定需求确定 4.6 需求规格说明书需求规格说明书天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2534.5.1 问题框定问题框定 4.5.2 五个问题框架五个问题框架4.5.3 多问题框架多问题框架4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学
2、院软件系统分析与设计软件系统分析与设计2021-10-254v 域域v 共享现象共享现象 v 连接域连接域v 现实域现实域v 框架图框架图v 从图到文档从图到文档 4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-255 马的遍历马的遍历:马马开始于棋盘的中央开始于棋盘的中央如图如图3-1所示。问题所示。问题是找到一系列的移是找到一系列的移动步骤,使马走完动步骤,使马走完每个方框,而落入每个方框,而落入任何一个方框仅一任何一个方框仅一次。次。图图4-3 马的遍历马的遍历4 4.5 .5 问题确定
3、问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2564 4.5 .5 问题确定问题确定 书写软件需求最重要的步骤是框定问题:把问书写软件需求最重要的步骤是框定问题:把问题的特定部分,以及部分间特定的关系,放入一个特题的特定部分,以及部分间特定的关系,放入一个特定的形式中。问题框定方法应该使问题得细节(不管定的形式中。问题框定方法应该使问题得细节(不管如何复杂)适合一个简单连贯的框架,以便使人们能如何复杂)适合一个简单连贯的框架,以便使人们能够系统地分析他们而不会被问题所压倒。够系统地分析他们而不会被问题所压倒。 在马的遍历中,方块上的数字是潜在的
4、压倒性细在马的遍历中,方块上的数字是潜在的压倒性细节。如图节。如图3-23-2所示。所示。天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-257134 4.5 .5 问题确定问题确定 图图4-4 马的遍历,重构马的遍历,重构123456789101112 13 14 1516 17 18 19 2021 22 23 24 25112111981032229206172415472316514251821天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2584 4.5 .5 问题确定问题确定 图图4-5 4-5 分解成域分解
5、成域两个世界两个世界取货 送货到目的地 打印报表 数据库方案接口 子程序问题域机器域需求程序规格说明书4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-259 从图中我们可以看出,每个域包含一组从图中我们可以看出,每个域包含一组个体个体即我们即我们想要陈述的显著事情。想要陈述的显著事情。 如图如图3-33-3中问题域的个体就是:卡车、城市、货物、中问题域的个体就是:卡车、城市、货物、司机、客户和用户等等司机、客户和用户等等客观世界的物理实体。客观世界的物理实体。注意:注意:个体的唯一准则是你总能区分每个个体个体的唯一准则
6、是你总能区分每个个体没有没有一个个体同时是另一个个体。一个个体同时是另一个个体。4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2510 在每个域中也包含我们想讨论这些个体的每件事情,在每个域中也包含我们想讨论这些个体的每件事情,想肯定或者否定一个或多个个体的每一件事,叫做想肯定或者否定一个或多个个体的每一件事,叫做断言。断言。 机器域包含一组不同的断言:一个子例程占据一定机器域包含一组不同的断言:一个子例程占据一定的内存位置,一个子例程调用另一个等等。的内存位置,一个子例程调用另一
7、个等等。 4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2511 域也就是一组个体以及伴随它们的断言。个体不是域也就是一组个体以及伴随它们的断言。个体不是现在或过去已存在的个体;它们是软件必须能够应付的现在或过去已存在的个体;它们是软件必须能够应付的潜在的个体。所以潜在的客户是问题域的一部分。潜在的个体。所以潜在的客户是问题域的一部分。 当定义一个域时,我们不需要知道域中现在或将来当定义一个域时,我们不需要知道域中现在或将来要包含的所有实际个体;但我们要详细指定将要用于他要包含的所
8、有实际个体;但我们要详细指定将要用于他们的所有断言。们的所有断言。4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2512信息类型信息类型 域中存在是实体种类域中存在是实体种类例如:人、车、音乐作品、燃料、道路名称等例如:人、车、音乐作品、燃料、道路名称等 实体具有的属性种类实体具有的属性种类例如:颜色、状态、支付日期、账户上有多少钱等例如:颜色、状态、支付日期、账户上有多少钱等 实体之间的关系实体之间的关系例如:司机拥有一辆汽车、诉讼中的拉辨双方等例如:司机拥有一辆汽车、诉讼中的拉
9、辨双方等 域中发生的事件类型域中发生的事件类型例如:轿车可以被卖掉、滚筒可以传动等例如:轿车可以被卖掉、滚筒可以传动等 实体行为所遵循的因果法则实体行为所遵循的因果法则例如:当切仅当例如:当切仅当I/O端口端口0 xf00的的bit7为高时,为高时,伺服电机伺服电机 A启动,当伺服电机启动,当伺服电机A启动时,滚筒启动时,滚筒RJ顺时钟传动顺时钟传动表表4-2 4-2 域信息域信息4.5.1 问题框定问题框定 1. 域域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2513 当框定问题时,你不需要知道哪个事件将当框定问题
10、时,你不需要知道哪个事件将要发生,但必须知道事件所拥有的所有可能属要发生,但必须知道事件所拥有的所有可能属性以及它们之间重要的关系。一个事件的属性性以及它们之间重要的关系。一个事件的属性就是参与在事件中的实体;或事件可能发生的就是参与在事件中的实体;或事件可能发生的时间和继续的时间;事件间的关系就是之前或时间和继续的时间;事件间的关系就是之前或之后这样的事情。之后这样的事情。4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2514提议提议:确定的实体拥有确定的属性或相互之间具有的特:
11、确定的实体拥有确定的属性或相互之间具有的特定关系。定关系。 属性和关系可以识别一个个体来为自己产生一个提属性和关系可以识别一个个体来为自己产生一个提议,或者他们可以为断言个体进行服务。议,或者他们可以为断言个体进行服务。 一般软件项目,要知道的全部东西是描述每个域中一般软件项目,要知道的全部东西是描述每个域中的东西,根据这些描述,必须解释全部词汇以及根据词的东西,根据这些描述,必须解释全部词汇以及根据词汇框定你的所有描述。汇框定你的所有描述。4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-
12、10-2515 有关如何选择有关如何选择“什么去调用一个个体什么去调用一个个体”和和“什么去什么去调用一个断言调用一个断言”往往依赖于你感兴趣断言和询问什么。往往依赖于你感兴趣断言和询问什么。并不是说每一个物理对象一定是个体,而无形的东西像并不是说每一个物理对象一定是个体,而无形的东西像名称和号码等一定是断言。名称和号码等一定是断言。唯一的规则是无论域的哪个唯一的规则是无论域的哪个部分都不可立刻成为两个个体,而且你必须已经知道所部分都不可立刻成为两个个体,而且你必须已经知道所有你想对个体下的断言。有你想对个体下的断言。4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域
13、天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2516 例子:为一个公共汽车从一地到另一地计算路程编例子:为一个公共汽车从一地到另一地计算路程编写需求。我们感兴趣的提议是什么?写需求。我们感兴趣的提议是什么?4 4.5 .5 问题确定问题确定 4.5.1 问题框定问题框定 1. 域域天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2517 分解成域是框定问题最重要的技巧。我们分解域有分解成域是框定问题最重要的技巧。我们分解域有两个主要原因。两个主要原因。第一,如果我们明智地选择个体和断言,可以限制我们第一,如果我们明智地
14、选择个体和断言,可以限制我们所关注的范围。所关注的范围。第二,我们可以讨论贯穿于两个域中的因果关系,或域第二,我们可以讨论贯穿于两个域中的因果关系,或域之间的其他关系,为了使一个域能够实现一定的效果或之间的其他关系,为了使一个域能够实现一定的效果或能够与其他域交流信息,它必须与其他域有重叠部分。能够与其他域交流信息,它必须与其他域有重叠部分。4.5.1 问题框定问题框定 2. 共享现象共享现象4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2518 域中的重叠部分为域中的重叠部分为共享现象共享现象。共享现象是两个域之。共享
15、现象是两个域之间所共有的状态、事件和对象。如:规格说明书中描述间所共有的状态、事件和对象。如:规格说明书中描述的输入的输入/ /输出设备的行为就是一类型的共享现象。如果输出设备的行为就是一类型的共享现象。如果你把卡车和司机作为两个不同的域,那么司机驾驶卡车你把卡车和司机作为两个不同的域,那么司机驾驶卡车就同时发生在两个域中,也就是这个事件使他们两个都就同时发生在两个域中,也就是这个事件使他们两个都从同一个地方移动到另一个地方。从同一个地方移动到另一个地方。4.5.1 问题框定问题框定 2. 共享现象共享现象4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软
16、件系统分析与设计2021-10-2519共享实例:共享实例:用户敲击的键也是软件接收的键。用户敲击的键也是软件接收的键。每个软件在监视器上所显示的像素也是用户所看见的每个软件在监视器上所显示的像素也是用户所看见的像素。像素。计算机中的两个正在运行的进程共享一块内存,保持计算机中的两个正在运行的进程共享一块内存,保持着一个信号量,一个进程通过它来告诉另一个进程它本着一个信号量,一个进程通过它来告诉另一个进程它本身是否安全地运行一个操作。身是否安全地运行一个操作。4.5.1 问题框定问题框定 2. 共享现象共享现象4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设
17、计软件系统分析与设计2021-10-2520氧传感器传送给轿车内微处理器的信号。氧传感器传送给轿车内微处理器的信号。由同一个微处理器给轿车燃料喷射器传送信号。由同一个微处理器给轿车燃料喷射器传送信号。一个目录,程序在其中存放文件供另一个程序以后恢一个目录,程序在其中存放文件供另一个程序以后恢复使用,或一个邮件夹,用来接收存放新邮件,以后供复使用,或一个邮件夹,用来接收存放新邮件,以后供邮件阅读者翻阅。邮件阅读者翻阅。职员打出勤卡也是电子出勤卡记录事件。职员打出勤卡也是电子出勤卡记录事件。4.5.1 问题框定问题框定 2. 共享现象共享现象4 4.5 .5 问题确定问题确定 天津城建大学计算机与
18、信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2521 图图4-64-6是一个气象分析研究系统,是一个气象分析研究系统,问题域:温度、气象站和研究员。问题域:温度、气象站和研究员。图图4-6 4-6 四个域中的软件问题四个域中的软件问题温度气象站计算机研究员4.5.1 问题框定问题框定 3. 连接域连接域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2522 软件需求是要在研究员和地区的温度之间创建一个软件需求是要在研究员和地区的温度之间创建一个联系:研究员必须能够按照要求查询温度。因此气象站联系:研究
19、员必须能够按照要求查询温度。因此气象站组成了一个特殊的域类型:连接域。组成了一个特殊的域类型:连接域。 连接域连接域:一个域同我们希望有直接联接的域产生共:一个域同我们希望有直接联接的域产生共享现象。享现象。4.5.1 问题框定问题框定 3. 连接域连接域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2523 先来看一个例子:药房和医疗保险公司之间存在计先来看一个例子:药房和医疗保险公司之间存在计算机进行交互。当病人提供给药房一个处方时,药房计算机进行交互。当病人提供给药房一个处方时,药房计算机要向保险公司的计算机发送许
20、可申请。如果此事物算机要向保险公司的计算机发送许可申请。如果此事物符合保险公司所承诺的规则,保险公司计算机返还回由符合保险公司所承诺的规则,保险公司计算机返还回由病人支付的一笔共付款项金额。药剂师就收取共付款项,病人支付的一笔共付款项金额。药剂师就收取共付款项,并且保险公司欠药房药价减去共付款项后的一笔金额。并且保险公司欠药房药价减去共付款项后的一笔金额。4.5.1 问题框定问题框定 4. 实现域实现域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2524 为了设计包含两套计算机的系统,我们必须知道这为了设计包含两套计算
21、机的系统,我们必须知道这个债权在哪里,因为要想去控制它们或报告它们,我们个债权在哪里,因为要想去控制它们或报告它们,我们必须知道系统如何访问它们。必须知道系统如何访问它们。 债权必须存在系统之中,系统可以无条件地控制它债权必须存在系统之中,系统可以无条件地控制它们。系统要为它们内部的债权创建一个代理。药房和保们。系统要为它们内部的债权创建一个代理。药房和保险公司承认当某一特定的比特位模式在计算机中存在时,险公司承认当某一特定的比特位模式在计算机中存在时,保险公司将欠药房相应的一笔金额,要根据一定的规则,保险公司将欠药房相应的一笔金额,要根据一定的规则,这个比特位模式就被创建。这个比特位模式就被
22、创建。4.5.1 问题框定问题框定 4. 实现域实现域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2525 这个规则就是:在系统中设置一个授权能创建一个债这个规则就是:在系统中设置一个授权能创建一个债权。权。 这时我们就说系统在他内部这时我们就说系统在他内部实现实现了债权,债权就是一了债权,债权就是一个个实现域实现域。 为真实债权创建一个实现域作为代理,系统就可以控为真实债权创建一个实现域作为代理,系统就可以控制债权。没有保险公司和药房的协定,就没有任何制债权。没有保险公司和药房的协定,就没有任何点点去乱去乱动计算机内
23、部的比特位。没有哪一方将付钱给另一方。动计算机内部的比特位。没有哪一方将付钱给另一方。4.5.1 问题框定问题框定 4. 实现域实现域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2526 对于人们之间任何类型的对于人们之间任何类型的承诺承诺,如果一个,如果一个计算机计算机想想要去要去操作它操作它,在需求文档中就必须以,在需求文档中就必须以实现域实现域来表示。这来表示。这包括大多是债权、账目、运行任务的责任、约定的相见包括大多是债权、账目、运行任务的责任、约定的相见时间、在某一时间有权使用会议室等等。时间、在某一时间有权
24、使用会议室等等。4.5.1 问题框定问题框定 4. 实现域实现域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2527 用图形符号来描述软件问题的所有基本部分,我们用图形符号来描述软件问题的所有基本部分,我们把用这种符号绘制的图称为把用这种符号绘制的图称为框架图框架图。 每个域用一个矩形来表示,两个域之间的共享现象每个域用一个矩形来表示,两个域之间的共享现象用一根连接两个矩形的线来表示。要编程的机器用双边用一根连接两个矩形的线来表示。要编程的机器用双边框矩形来表示。写在双边框内的词语表示编程后的计算框矩形来表示。写在双边
25、框内的词语表示编程后的计算机是什么类型的机器。机是什么类型的机器。4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2528温度气象站信息系统研究员图图4-7 4-7 温度信息系统部分框架图:仅仅是域温度信息系统部分框架图:仅仅是域4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2529 如果一个域完全包含在另一个域当中,如果一组文如果一个域完全包含在另一个域
26、当中,如果一组文档就完全包含在计算机中,框架图用一个大实黑点来表档就完全包含在计算机中,框架图用一个大实黑点来表示它。示它。文档字处理系统图图4-8 4-8 大实黑点显示一个域完全包含在另一个域中大实黑点显示一个域完全包含在另一个域中4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2530 大实黑点还表示那种共享于三个或多个域之间现象大实黑点还表示那种共享于三个或多个域之间现象的极少情况。的极少情况。卡车驾驶事件货物图图4-9 4-9 大实黑点表示多个域大实黑点表示多个域卡车
27、司机地点4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2531图图4-10 4-10 温度信息系统的完整框架图温度信息系统的完整框架图 用椭圆表示需求,用一根或者多根连线来连接需求用椭圆表示需求,用一根或者多根连线来连接需求所述的域。机器所述的域。机器M M在域在域D D内产生效果内产生效果R R温度气象站信息系统研究员查询RDM4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析
28、与设计2021-10-2532图图4-11 4-11 温度信息系统的完整框架图温度信息系统的完整框架图 一个处理数字图像的部分软件框架图如图一个处理数字图像的部分软件框架图如图4-114-11所示。所示。阅读框架图的方法所遵循的原则:椭圆属于哪个域;机器阅读框架图的方法所遵循的原则:椭圆属于哪个域;机器域与感兴趣的域的联系。域与感兴趣的域的联系。输入图像过滤器输出图像图像处理算法RDMD4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2533图图4-12 4-12 温度信息系
29、统的完整框架图温度信息系统的完整框架图 例如:查询是需求,机器例如:查询是需求,机器M M与我们所感兴趣的温度与我们所感兴趣的温度域间接相连。机器不能直接访问温度,需要通过气象站域间接相连。机器不能直接访问温度,需要通过气象站间接与温度通讯。间接与温度通讯。温度气象站信息系统研究员查询RDM4.5.1 问题框定问题框定 5. 框架图框架图4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2534 已经框定了温度信息系统所解决的问题,就可以根据已经框定了温度信息系统所解决的问题,就可以根据框架图的每一个元素文档化相应的细节。需
30、求文档要包含框架图的每一个元素文档化相应的细节。需求文档要包含的足够信息:的足够信息:用户能初始化的所有查询列表(如有关温度的所有问题)。用户能初始化的所有查询列表(如有关温度的所有问题)。温度的描述。温度的描述。气象站如何与温度交互的描述(记录温度参数的过程方法气象站如何与温度交互的描述(记录温度参数的过程方法等)。等)。4.5.1 问题框定问题框定 6. 从图到文档从图到文档4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2535气象站如何与计算机交互的描述。气象站如何与计算机交互的描述。研究员和计算机之间联系的描述。
31、研究员和计算机之间联系的描述。如果研究员可能有一些不同寻常的行为能影响用户接如果研究员可能有一些不同寻常的行为能影响用户接口设计,要对研究员进行描述。口设计,要对研究员进行描述。4.5.1 问题框定问题框定 6. 从图到文档从图到文档4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25364.5.2 五个问题框架五个问题框架1. 概要概要2. 信息问题信息问题 3. 控制问题控制问题4. 变换问题变换问题 5. 工件问题工件问题 6. 连接问题连接问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软
32、件系统分析与设计软件系统分析与设计2021-10-2537需求类型需求类型 描述描述 问题框架问题框架 查询查询 对有关部分问题域的信息的请求对有关部分问题域的信息的请求 信息信息 行为规则行为规则 问题域实施行为所依据的规则问题域实施行为所依据的规则 控制控制 映射映射 输入数据和输出数据之间的映射输入数据和输出数据之间的映射 变换变换 实现域上的操作实现域上的操作 用户对仅存在于软件内的对象所执行的操作用户对仅存在于软件内的对象所执行的操作 工件工件 域间一致性域间一致性 使没有共享现象的域保持相同的状态使没有共享现象的域保持相同的状态 连接连接 五个不同的问题框架与表五个不同的问题框架与
33、表4-34-3种所呈现的五种需求类型相对应。种所呈现的五种需求类型相对应。4.5.2 五个问题框架五个问题框架1. 概要概要表表4-3 4-3 五种不同的问题框架五种不同的问题框架4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2538 大多数软件问题同时包含上述几种需求类大多数软件问题同时包含上述几种需求类型。这里我们总结如下:型。这里我们总结如下: 框定问题的目的不是强行使它们适应已经框定问题的目的不是强行使它们适应已经存在的问题类型;相反,当你遇到这些问题时,存在的问题类型;相反,当你遇到这些问题时,通过识别熟悉的问
34、题并通过熟悉的问题,来着通过识别熟悉的问题并通过熟悉的问题,来着手解决不熟悉的问题。手解决不熟悉的问题。4 4.5 .5 问题确定问题确定 4.5.2 五个问题框架五个问题框架1. 概要概要天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2539 为信息问题书写需求,必须描述客观世界的相关部为信息问题书写需求,必须描述客观世界的相关部分、查询以及发起(初始化)查询的人或事物。分、查询以及发起(初始化)查询的人或事物。 真实世界信息系统信息请求者查询图图4-13 4-13 信息问题信息问题4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5
35、.5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2540 注意:只有需求满足查询,而因果关系不是信息问注意:只有需求满足查询,而因果关系不是信息问题的一部分。如,系统报告状态,但不对影响状态的行题的一部分。如,系统报告状态,但不对影响状态的行为负责,因为这是两种类型的需求。为负责,因为这是两种类型的需求。 因果关系是另一种需求将在控制问题中讨论。因果关系是另一种需求将在控制问题中讨论。下面是解决信息问题的软件实例:下面是解决信息问题的软件实例:存货清单控制系统的一部分:显示所有项库存数量,存货清单控制系统的一部分:显示所有项库存数量,
36、打印有关库存数量少得项目报表,打印每日、每周、每打印有关库存数量少得项目报表,打印每日、每周、每月和每年结束时的销售报表。月和每年结束时的销售报表。 4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2541一个网页搜索引擎:在万维网上搜索与用户指定主题一个网页搜索引擎:在万维网上搜索与用户指定主题相关的网页。相关的网页。图书馆目录系统:通知用户图书馆内有什么书籍,它图书馆目录系统:通知用户图书馆内有什么书籍,它们的书号和其他一些属性,以及该书是否被借出。们的书号和
37、其他一些属性,以及该书是否被借出。图书馆目录系统的一小部分:登陆图书馆查询细节、图书馆目录系统的一小部分:登陆图书馆查询细节、发起查询来自于哪个终端以及有多少匹配项,帮助人们发起查询来自于哪个终端以及有多少匹配项,帮助人们搜索用于提高上述查询系统的方法。在这种情况下软件搜索用于提高上述查询系统的方法。在这种情况下软件解决另一个信息问题部分是真实世界部分。解决另一个信息问题部分是真实世界部分。4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25421) 1) 连接域
38、连接域 几乎所有的信息域都包含一个连接域,从真实世界到几乎所有的信息域都包含一个连接域,从真实世界到将要制作的软件之间传递信息。一般情况下,这个连接域将要制作的软件之间传递信息。一般情况下,这个连接域是人手工输入数据。是人手工输入数据。 数据采集设备可能是另外一个连接域,气象站是一个数据采集设备可能是另外一个连接域,气象站是一个例子。例子。 一个列出计算机内目录下的所有文件的程序,就没有一个列出计算机内目录下的所有文件的程序,就没有连接域,但这是个例外。连接域,但这是个例外。4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息
39、工程学院软件系统分析与设计软件系统分析与设计2021-10-25432) 2) 静态和动态静态和动态 信息系统报告一个持续变化的真实世界的状态或者历信息系统报告一个持续变化的真实世界的状态或者历史,比如账目余额、目前的股票价格、目前的仓库货物变史,比如账目余额、目前的股票价格、目前的仓库货物变化情况等。这些我们称其为化情况等。这些我们称其为动态信息系统动态信息系统。 信息系统报告一个变化很小甚至根本没有变化的真实信息系统报告一个变化很小甚至根本没有变化的真实世界,比如药片的相互属性、材料的长度等。这些我们称世界,比如药片的相互属性、材料的长度等。这些我们称其为其为静态信息系统静态信息系统。 3
40、.2.2 3.2.2 信息问题信息问题 4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2544 书写一个动态信息问题,你要说明软件如何访问那书写一个动态信息问题,你要说明软件如何访问那些可能改变查询结果的每一个事件。些可能改变查询结果的每一个事件。 书写一个静态信息问题,你要说明的不是软件如何书写一个静态信息问题,你要说明的不是软件如何访问真实世界的相关部分,而是软件开发人员如何访问。访问真实世界的相关部分,而是软件开发人员如何访问。4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4
41、4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25453) 3) 被动与主动被动与主动 用户发出的查询:用户输入有关用户发出的查询:用户输入有关X X的查询,系统显示的查询,系统显示有关有关X X的被请求信息。这样的信息系统对用户的输入做出的被请求信息。这样的信息系统对用户的输入做出被动的反应。被动的反应。 一些信息系统在用户没有请求信息时也发出信息给他一些信息系统在用户没有请求信息时也发出信息给他们。这样的信息系统对用户来说系统做出主动的反应。们。这样的信息系统对用户来说系统做出主动的反应。4.5.2 五个问题框架五个问题
42、框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25464) 4) 解决信息问题解决信息问题 通常信息问题的解决方案是在计算机内构造一个真实通常信息问题的解决方案是在计算机内构造一个真实世界的模型。模型有计算机内的比特位组成,它们根据规世界的模型。模型有计算机内的比特位组成,它们根据规则改变状态,而把比特位映射到真实世界的活动需要遵循则改变状态,而把比特位映射到真实世界的活动需要遵循这些规则。这些规则。 描述信息问题解决方案的规格说明书区域描述由软件描述信息问题解决方案的规格说明书区域描述由软件
43、所维护的模型,也能够改变一些查询结果的真实世界的每所维护的模型,也能够改变一些查询结果的真实世界的每一事件,以及改变模型的相应的接口事件。一事件,以及改变模型的相应的接口事件。4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2547 涉及用户的事件响应有两部分:用户负责执行的行为涉及用户的事件响应有两部分:用户负责执行的行为和更新模型。用户行为是软件的一个操作规程。和更新模型。用户行为是软件的一个操作规程。 静态信息系统的规格说明书不包含任何事件的响应,静态信息系
44、统的规格说明书不包含任何事件的响应,因为没有事件发生在问题域。因为没有事件发生在问题域。 如果问题域偶尔改变,或者它的知识改变(如药物学如果问题域偶尔改变,或者它的知识改变(如药物学家有关药物相互作用的知识),那么规格说明书必须描述家有关药物相互作用的知识),那么规格说明书必须描述这些事件如何导致对模型的修改。这些事件如何导致对模型的修改。4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25485) 5) 检查清单检查清单 表表4-44-4和和4-54-5列举了书
45、写一个信息问题的需求和规格列举了书写一个信息问题的需求和规格说明书所需要的信息。说明书所需要的信息。表表4-4 信息问题:需求文档信息问题:需求文档主题主题 现实世界中的对象和他们的属性以及关系现实世界中的对象和他们的属性以及关系 存储有关对象的数据存储有关对象的数据 改变查询结果的所有真实世界的事件,及这些事件发生的所有可能顺序改变查询结果的所有真实世界的事件,及这些事件发生的所有可能顺序 查询查询 系统如何访问对象和事件?(或在静态信息问题中,软件如何访问它们?)系统如何访问对象和事件?(或在静态信息问题中,软件如何访问它们?) 系统需要访问的现存文件的文件格式(或者引用现存文档)系统需要
46、访问的现存文件的文件格式(或者引用现存文档) 由连接域引入的失真和延迟由连接域引入的失真和延迟4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2549表表4-5 信息问题:规格说明书信息问题:规格说明书主题主题 事件响应事件响应 有效性规则有效性规则 用户接口,用户接口所需要的数据模型附加物,如优先原则用户接口,用户接口所需要的数据模型附加物,如优先原则 操作规程操作规程4.5.2 五个问题框架五个问题框架2. 信息问题信息问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统
47、分析与设计2021-10-2550 书写一个控制问题,需要描述三件事情:书写一个控制问题,需要描述三件事情:(1 1)客观世界相关部分的因果属性和其中的对象根据它)客观世界相关部分的因果属性和其中的对象根据它们自身的本质而不是软件所应遵循的规则;们自身的本质而不是软件所应遵循的规则;(2 2)我们想让它们遵循的规则;)我们想让它们遵循的规则;(3 3)计算机和问题域所共享的现象,通过它们软件控制)计算机和问题域所共享的现象,通过它们软件控制问题域并发起动作,从而产生必须遵守的问题域并发起动作,从而产生必须遵守的2 2)中的规则。)中的规则。如图如图3-103-10所示。所示。 4.5.2 五个
48、问题框架五个问题框架3. 控制问题控制问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2551 一个控制问题惟一关注的是因果关系。一个控制问题惟一关注的是因果关系。 控制器控制器受控域受控域行为规则行为规则图图4-14 4-14 控制问题控制问题4.5.2 五个问题框架五个问题框架3. 控制问题控制问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25521 1)连接域)连接域 有些控制问题需要指导人们执行各种活动,计算机起有些控制问题需要指
49、导人们执行各种活动,计算机起到指导人们行为的作用,但不能完全控制他们,这就在控到指导人们行为的作用,但不能完全控制他们,这就在控制问题中出现了连接域。制问题中出现了连接域。 库存库存控制系统控制系统业务规则业务规则雇员雇员仓库仓库订单订单图图4-15 4-15 控制问题种的连接域控制问题种的连接域4.5.2 五个问题框架五个问题框架3. 控制问题控制问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2553 当接收或者根据订单发送货物给客户时,行为规则仅当接收或者根据订单发送货物给客户时,行为规则仅说明在仓库内移动货物
50、。存货控制系统必须依赖于职员告说明在仓库内移动货物。存货控制系统必须依赖于职员告诉它什么时候收到货物或新的订单。存货控制系统能使货诉它什么时候收到货物或新的订单。存货控制系统能使货物移动的唯一方法是指导人们去移动它。物移动的唯一方法是指导人们去移动它。失真和延迟失真和延迟:有时发生了错误的货物移动,错误地输入订:有时发生了错误的货物移动,错误地输入订单数据等。系统给出一个指示和职员移动货物之间有一个单数据等。系统给出一个指示和职员移动货物之间有一个时间延迟在订货部门接受一个订单和职员把订单输入到系时间延迟在订货部门接受一个订单和职员把订单输入到系统之间也有一个延迟,软件不能告诉什么时候或是否货
51、物统之间也有一个延迟,软件不能告诉什么时候或是否货物已经真正装运了等。已经真正装运了等。4.5.2 五个问题框架五个问题框架3. 控制问题控制问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25543 3)检查清单)检查清单 表表4-64-6和表和表4-74-7例举了完整书写一个控制问题需要和例举了完整书写一个控制问题需要和规格说明书所需要的信息。规格说明书所需要的信息。表表4-6 信息问题:需求文档信息问题:需求文档主题主题 控制域中的对象:数据模型(如果有)控制域中的对象:数据模型(如果有) 控制域的因果法则,包
52、括对象可能发生的事件控制域的因果法则,包括对象可能发生的事件 行为规则行为规则 计算机在问题域发起的行为计算机在问题域发起的行为 计算机用于监视控制域的共享现象计算机用于监视控制域的共享现象 任何连接域任何连接域4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2555表表4-7 信息问题:规格说明书信息问题:规格说明书主题主题 触发规格或状态表,有计算机初始化的用于监控问题域活动的相关行为触发规格或状态表,有计算机初始化的用于监控问题域活动的相关行为 如果系统维护一个数据模型,它的事件响应如果系统维护一个数据模型,它的事件
53、响应 用户接口和操作规程(如果有)用户接口和操作规程(如果有)4.5.2 五个问题框架五个问题框架3. 控制问题控制问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2556 根据特定的规格产生影射到输入数据的输出数据。它根据特定的规格产生影射到输入数据的输出数据。它的问题框架如图的问题框架如图4-164-16所示。所示。 图图4-16 4-16 变换问题变换问题输入数据过滤器输出数据映射4.5.2 五个问题框架五个问题框架4. 变换问题变换问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件
54、系统分析与设计软件系统分析与设计2021-10-2557 输入数据和输出数据是来自于两个集合的元素。书写输入数据和输出数据是来自于两个集合的元素。书写一个变换问题由描述以下内容组成:所有可能输入的集合,一个变换问题由描述以下内容组成:所有可能输入的集合,所有可能输出的集合,有关每一个可能输入到它相应输出所有可能输出的集合,有关每一个可能输入到它相应输出的规则。规则,在框架图中表示为映射,是惟一的需求。的规则。规则,在框架图中表示为映射,是惟一的需求。 一个变换问题能够简单地叫做计算或映射问题。计算一个变换问题能够简单地叫做计算或映射问题。计算是根据一个规则简单地输入数字映射到输出数字。是根据一
55、个规则简单地输入数字映射到输出数字。4.5.2 五个问题框架五个问题框架4. 变换问题变换问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2558 解决变换问题的例子:解决变换问题的例子:在两个不同字处理器之间转换文件格式的程序。在两个不同字处理器之间转换文件格式的程序。把条形码转换成数字的子例程。把条形码转换成数字的子例程。在大学的一个学期中,为学生、教师、课程分配教室的程在大学的一个学期中,为学生、教师、课程分配教室的程序。序。图形处理软件,执行一些操作,如从数字图像上除去杂质。图形处理软件,执行一些操作,如从数
56、字图像上除去杂质。4.5.2 五个问题框架五个问题框架4. 变换问题变换问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2559一个程序,告诉一个公共汽车司机驾驶哪辆汽车从一个地一个程序,告诉一个公共汽车司机驾驶哪辆汽车从一个地方到另一个地方,并在指定时间到达。方到另一个地方,并在指定时间到达。一个根据气象资料产生天气图的程序。一个根据气象资料产生天气图的程序。打印机驱动程序:把来自操作系统的打印控制命令转换成打印机驱动程序:把来自操作系统的打印控制命令转换成等价的控制特定打印机的命令。等价的控制特定打印机的命令。根
57、据卫星资料帮助考古学家发现沉没村庄的软件,这种软根据卫星资料帮助考古学家发现沉没村庄的软件,这种软件运用复杂的规则把有关地球表面如何反射可见光的信息件运用复杂的规则把有关地球表面如何反射可见光的信息转换成为对地表下面存在什么的猜想。转换成为对地表下面存在什么的猜想。4.5.2 五个问题框架五个问题框架4. 变换问题变换问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-25601 1)解决变换问题)解决变换问题 解决变换问题的最主要工作是编程,而不是接口设计。解决变换问题的最主要工作是编程,而不是接口设计。如果软件要被其
58、它程序访问,规格说明必须向需求中添加如果软件要被其它程序访问,规格说明必须向需求中添加的所有东西就是接口设计,或者一个的所有东西就是接口设计,或者一个API API (Application Programming Interface,应用程序编程接口应用程序编程接口) 。2 2)检查清单)检查清单 表表4-84-8和表和表4-94-9例举了完整书写一个变换问题需求和规例举了完整书写一个变换问题需求和规格说明书所需要的信息。格说明书所需要的信息。4.5.2 五个问题框架五个问题框架4. 变换问题变换问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件
59、系统分析与设计2021-10-2561表表4-8 变换问题:需求文档变换问题:需求文档表表4-9 信息问题:规格说明书信息问题:规格说明书主题主题 输入和输出集合输入和输出集合 数据源和目的地数据源和目的地 输入输出集合之间的映射输入输出集合之间的映射主题主题 用户接口和操作规程(如果有)用户接口和操作规程(如果有) API (如果有)(如果有)4.5.2 五个问题框架五个问题框架4. 变换问题变换问题 4 4.5 .5 问题确定问题确定 天津城建大学计算机与信息工程学院软件系统分析与设计软件系统分析与设计2021-10-2562 在工件问题中,软件的任务是能使用户创建对象,如在工件问题中,软
60、件的任务是能使用户创建对象,如文档和需求,就如车床帮助一个木匠创造木质工件一样。文档和需求,就如车床帮助一个木匠创造木质工件一样。工件是无形的、仅存在于实现域中的软件对象,虽然软件工件是无形的、仅存在于实现域中的软件对象,虽然软件可能产生它们有形的版本,如打印的文档等。可能产生它们有形的版本,如打印的文档等。 有两种需求:使用户能在工件上执行指定的操作,在有两种需求:使用户能在工件上执行指定的操作,在软件内实现工件。书写一个工件问题大部分工作是描述工软件内实现工件。书写一个工件问题大部分工作是描述工件。件。4.5.2 五个问题框架五个问题框架5. 工件问题工件问题 4 4.5 .5 问题确定问
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 碳素掺杂剂在铁合金冶炼中的应用考核试卷
- 森林公园生态旅游市场细分与定位考核试卷
- 农业农业机械产业节能减排配合服务批发考核试卷
- 矿物加工厂职业卫生与员工健康考核试卷
- 渔业资源保护与海洋资源长期可持续发展战略全面实施考核试卷
- 电信行业区块链技术探索与应用考核试卷
- 红富士苹果病虫害防治考核试卷
- 武汉民政职业学院《描述统计学和概率》2023-2024学年第一学期期末试卷
- 石家庄工程职业学院《环境学导论》2023-2024学年第二学期期末试卷
- 山西体育职业学院《高级应用气象统计》2023-2024学年第二学期期末试卷
- 自来水过户转让协议
- 精神科诊疗常规及技术操作规范
- 2023年湖北高中学业水平合格性考试生物试卷真题(含答案详解)
- (医学课件)SOAP的规范书写及练习
- 【行业研究报告】2023年中国演出市场年度报告
- 向上管理的艺术(升级版):如何正确汇报工作
- 国开2023春计算机组网技术形考任务一参考答案
- 甘肃省兰州市成考专升本2023年英语真题及答案
- 推荐如果历史是一群喵读书分享会模板
- 全过程跟踪审计和结算审计服务方案技术标投标方案
- 凯撒大帝(英语介绍)
评论
0/150
提交评论