欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    软件需求获取与结构化分析方法.ppt

    • 资源ID:65765646       资源大小:631.51KB        全文页数:75页
    • 资源格式: PPT        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件需求获取与结构化分析方法.ppt

    第3章 软件需求获取与结构化分析方法需求获取与需求分析阶段的任务需求获取与需求分析阶段的任务结构化分析方法结构化分析方法系统需求规格说明系统需求规格说明需求评审需求评审需求管理需求管理3.1 需求获取与需求分析阶段的任务需求获取的任务和原则需求获取的任务和原则需求获取的过程需求获取的过程软件需求分析阶段的任务软件需求分析阶段的任务需求获取的任务和原则需求获取的任务和原则需求获取的主要任务是与客户或用户沟通,了解需求获取的主要任务是与客户或用户沟通,了解系统或产品的目标是什么?客户或用户想要实现系统或产品的目标是什么?客户或用户想要实现什么?系统和产品如何满足业务的要求,最终系什么?系统和产品如何满足业务的要求,最终系统或产品如何用于日常工作?统或产品如何用于日常工作?获取并理解用户的需求是软件工程师所面对的最获取并理解用户的需求是软件工程师所面对的最困难的任务之一困难的任务之一。需求获取的任务和原则需求获取的任务和原则导出需求变得如此困难的原因归为以下几导出需求变得如此困难的原因归为以下几个方面的问题:个方面的问题:系统的目标或范围问题;系统的目标或范围问题;需求不准确性问题需求不准确性问题 ;需求的易变问题需求的易变问题 ;需求获取除了需要有专业的系统分析师,还需要需求获取除了需要有专业的系统分析师,还需要通过有效的客户开发者的合作才能成功。通过有效的客户开发者的合作才能成功。需求获取的任务和原则需求获取的任务和原则1.需求获取的任务需求获取的任务(1)(1)发现和分析问题,并分析问题的原因发现和分析问题,并分析问题的原因/结果关系。结果关系。(2)(2)与用户进行各种方式的交流,并使用调查研究与用户进行各种方式的交流,并使用调查研究方法收集信息。方法收集信息。(3)(3)按照三个成分观察问题的不同侧面:即数据、按照三个成分观察问题的不同侧面:即数据、过程和接口。过程和接口。(4)(4)将获取的需求文档化,形式有用例、决策表、将获取的需求文档化,形式有用例、决策表、需求表等。需求表等。需求获取的任务和原则需求获取的任务和原则2.需求获取应遵循的原则需求获取应遵循的原则(1)(1)深入浅出的原则。就是说,需求获取要尽可能深入浅出的原则。就是说,需求获取要尽可能全面、细致。获取的需求是个全集,目标系统真全面、细致。获取的需求是个全集,目标系统真正实现的是个子集。正实现的是个子集。(2)(2)以流程为主线的原则。在与用户交流的过程中,以流程为主线的原则。在与用户交流的过程中,应该用流程将所有的内容串起来。如信息、组织应该用流程将所有的内容串起来。如信息、组织结构、处理规则等。这样便于交流沟通。流程的结构、处理规则等。这样便于交流沟通。流程的描述既有宏观描述,也有微观描述。描述既有宏观描述,也有微观描述。需求获取的过程需求获取的过程1.开发高层的业务模型开发高层的业务模型2.定义项目范围和高层需求定义项目范围和高层需求3.识别用户类和用户代表识别用户类和用户代表系统的不同用户之间在很多方面存在差异,例如:系统的不同用户之间在很多方面存在差异,例如:(1)(1)使用产品的频率;使用产品的频率;(2)(2)用户在应用领域的经验和使用计算机系统的技用户在应用领域的经验和使用计算机系统的技能;能;(3)(3)所用到的产品功能;所用到的产品功能;(4)(4)为支持业务过程所进行的工作;为支持业务过程所进行的工作;(5)(5)访问权限和安全级别访问权限和安全级别 需求获取的过程需求获取的过程4.获取具体的需求获取具体的需求 确定了项目范围和高层需求,并确定了用户类及用户代表确定了项目范围和高层需求,并确定了用户类及用户代表后,就需要获取更具体、完整和详细的需求。具体需求的后,就需要获取更具体、完整和详细的需求。具体需求的来源可以来自以下几种典型的途径。来源可以来自以下几种典型的途径。(1)(1)与用户进行交流。与用户进行交流。(2)(2)现有产品或竞争产品的描述文档。现有产品或竞争产品的描述文档。(3)(3)系统需求规格说明。系统需求规格说明。(4)(4)当前系统的问题报告和改进要求。当前系统的问题报告和改进要求。(5)(5)市场调查和用户问卷调查。市场调查和用户问卷调查。(6)(6)观察用户如何工作。观察用户如何工作。需求获取的过程需求获取的过程5.确定目标系统的业务工作流确定目标系统的业务工作流 具体到当前待开发的应用系统,确定系统具体到当前待开发的应用系统,确定系统的业务工作流和主要的业务规则,采取需的业务工作流和主要的业务规则,采取需求调研的方法获取所需的信息。例如,针求调研的方法获取所需的信息。例如,针对信息系统的需求调研方法如下:对信息系统的需求调研方法如下:(1)(1)调研用户的组织结构、岗位设置、职调研用户的组织结构、岗位设置、职责定义,从功能上区分有多少个子系统,责定义,从功能上区分有多少个子系统,划分系统的大致范围,明确系统的目标。划分系统的大致范围,明确系统的目标。(2)(2)调研每个子系统的工作流程、功能与处调研每个子系统的工作流程、功能与处理规则,收集原始信息资料,用数据流来理规则,收集原始信息资料,用数据流来表示物流、资金流、信息流三者的关系。表示物流、资金流、信息流三者的关系。(3)(3)对调研内容事先准备,针对不同管理层对调研内容事先准备,针对不同管理层次的用户询问不同的问题,列出问题清单。次的用户询问不同的问题,列出问题清单。将操作层、管理层、决策层的需求既联系将操作层、管理层、决策层的需求既联系又区分开来,形成一个需求的层次。又区分开来,形成一个需求的层次。需求获取的过程需求获取的过程需求获取的过程需求获取的过程6.需求整理与总结需求整理与总结必须对上面步骤取得的需求资料进行整理和总结,必须对上面步骤取得的需求资料进行整理和总结,确定对软件系统的综合要求,即软件的需求。确定对软件系统的综合要求,即软件的需求。并提出这些需求实现条件,以及需求应达到的标并提出这些需求实现条件,以及需求应达到的标准。准。这些需求包括功能需求、性能需求、环境需求、这些需求包括功能需求、性能需求、环境需求、可靠性需求、安全保密要求、用户界面需求、资可靠性需求、安全保密要求、用户界面需求、资源使用需求、软件成本消耗与开发进度需求等。源使用需求、软件成本消耗与开发进度需求等。软件需求分析阶段的任务软件需求分析阶段的任务可以把软件需求分析阶段的工作分为可以把软件需求分析阶段的工作分为4 4个步骤,即个步骤,即获取需求获取需求、分析需求分析需求、定义需求定义需求和和验证需求验证需求,如,如图所示。图所示。软件需求分析阶段的工作步骤软件需求分析阶段的工作步骤 软件需求分析阶段的任务软件需求分析阶段的任务1.需求获取需求获取 通过启发、引导从客户(或用户)那里得到的原始通过启发、引导从客户(或用户)那里得到的原始需求是他们的业务要求(需求是他们的业务要求(needs),简称为),简称为N。这是分析之前获取的需求,其中可能存在一些实际这是分析之前获取的需求,其中可能存在一些实际问题,这些问题只有通过分析才能得到解决,直接问题,这些问题只有通过分析才能得到解决,直接把获取的需求作为软件设计阶段的依据将会导致严把获取的需求作为软件设计阶段的依据将会导致严重的后果。重的后果。软件需求分析阶段的任务软件需求分析阶段的任务2.需求分析需求分析 认真研究获取的需求,必须考虑以下几方面:认真研究获取的需求,必须考虑以下几方面:(1)完整性完整性:每项获取的需求都应给出清楚的描:每项获取的需求都应给出清楚的描述,使得软件开发工作能够取得设计和实现该功述,使得软件开发工作能够取得设计和实现该功能所需要的全部必要信息。能所需要的全部必要信息。(2)正确性正确性:获取的每项需求必须是准确无误的,:获取的每项需求必须是准确无误的,并且需求描述无歧义性。并且需求描述无歧义性。(3)合理性合理性:各项需求之间、软件需求与系统需:各项需求之间、软件需求与系统需求之间应是协调一致的,不应存在矛盾和冲突。求之间应是协调一致的,不应存在矛盾和冲突。软件需求分析阶段的任务软件需求分析阶段的任务2.需求分析需求分析 (4)可行性可行性:包括技术可行性:包括技术可行性、经济可行性、经济可行性、社会可行性社会可行性。(5)充分性充分性:获取的需求是否全面、周到。:获取的需求是否全面、周到。软件需求分析阶段的任务软件需求分析阶段的任务2.需求分析需求分析 由于分析的过程会对获取的需求做部分调整,也即由于分析的过程会对获取的需求做部分调整,也即从获取的需求从获取的需求N中去掉了一些中去掉了一些a,又补充了一些,又补充了一些c,从而得到的是分析的需求从而得到的是分析的需求R1(b+c)。)。软件需求分析阶段的任务软件需求分析阶段的任务3.需求定义需求定义 将已经过分析的需求清晰、全面、系统、准确地将已经过分析的需求清晰、全面、系统、准确地描述成为正式的文档,这一步定义需求的工作就描述成为正式的文档,这一步定义需求的工作就是编写需求规格说明。是编写需求规格说明。软件需求分析阶段的任务软件需求分析阶段的任务4.需求验证需求验证 为了确保已定义的需求(需求规格说明)准确无为了确保已定义的需求(需求规格说明)准确无误,并能为客户(或用户)理解和接受,需要对误,并能为客户(或用户)理解和接受,需要对其进行严格的评审。其进行严格的评审。3.2 结构化分析方法结构化分析方法结构化分析方法传统的分析建模方法称为结构化分析传统的分析建模方法称为结构化分析(structured analysis,SA)方法。)方法。最有代表性的是一种面向数据流进行需求分析的最有代表性的是一种面向数据流进行需求分析的方法,最初于方法,最初于20世纪世纪70年代由年代由D.Ross提出,后提出,后来又经过扩充,形成了今天的结构化分析方法的来又经过扩充,形成了今天的结构化分析方法的框架。框架。3.2 结构化分析方法结构化分析模型结构化分析模型 结构化分析方法是一种建模技术,它建立的分析结构化分析方法是一种建模技术,它建立的分析模型如图所示。模型如图所示。3.2.1 功能建模概念概念 功能建模的思想就是用抽象模型的概念,按照软功能建模的思想就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件解,直到找到满足功能要求的所有可实现的软件为止。功能模型用为止。功能模型用数据流图数据流图来描述。来描述。3.2.1 功能建模数据流图的基本图形符号数据流图的基本图形符号3.2.1 功能建模 多个数据流之间的关系多个数据流之间的关系 3.2.1 功能建模环境图环境图环境图(环境图(context diagram)也称为)也称为顶层数据流顶层数据流图图(或(或0层数据流图层数据流图),它仅包括一个数据处理过),它仅包括一个数据处理过程,也就是要开发的目标系统。程,也就是要开发的目标系统。环境图的作用是确定系统在其环境中的位置,通环境图的作用是确定系统在其环境中的位置,通过确定系统的输入和输出与外部实体的关系确定过确定系统的输入和输出与外部实体的关系确定其边界。其边界。3.2.1 功能建模典型的环境图典型的环境图3.2.1 功能建模招生系统需求描述招生系统需求描述学校首先公布招生条件,考生根据自己的条件报学校首先公布招生条件,考生根据自己的条件报名,之后系统进行资格审查,并给出资格审查信名,之后系统进行资格审查,并给出资格审查信息;息;对于资格审查合格的考生可以参加答卷,系统根对于资格审查合格的考生可以参加答卷,系统根据学校提供的试题及答案进行自动判卷,并给出据学校提供的试题及答案进行自动判卷,并给出分数及答题信息,供考生查询;分数及答题信息,供考生查询;最后系统根据学校的录取分数线进行录取,并将最后系统根据学校的录取分数线进行录取,并将录取信息发送给考生。录取信息发送给考生。3.2.1 功能建模招生系统的环境图招生系统的环境图 3.2.1 功能建模数据流图的分层数据流图的分层对于稍微复杂一些的实际问题,在数据流图上常对于稍微复杂一些的实际问题,在数据流图上常常出现十几个甚至几十个加工,这样的数据流图常出现十几个甚至几十个加工,这样的数据流图看起来不直观,不易理解,分层的数据流图能很看起来不直观,不易理解,分层的数据流图能很好地解决这一问题。好地解决这一问题。按照系统的层次结构进行逐步分解,并以分层的按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。易理解整个系统。3.2.1 功能建模招生系统的分层数据流图招生系统的分层数据流图 3.2.1 功能建模数据流图的分层示意图数据流图的分层示意图 3.2.1 功能建模实例研究实例研究 银行储蓄系统的业务流程:银行储蓄系统的业务流程:储户填写的存款单或取款单由业务员键入系统;储户填写的存款单或取款单由业务员键入系统;如果是存款则系统记录存款人姓名、住址(或电话如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期号码)、身份证号码、存款类型、存款日期、到期日期、利率、密码(可选)等信息,并印出存单给日期、利率、密码(可选)等信息,并印出存单给储户;储户;如果是取款而且开户时留有密码,则系统首先核对如果是取款而且开户时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。计算利息并印出利息清单给储户。要求画出分层的数据流图,并细化到要求画出分层的数据流图,并细化到2层数据流图。层数据流图。3.2.1 功能建模(1)识别外部实体及输入输出数据流。识别外部实体及输入输出数据流。外部实体外部实体:储户、业务员。:储户、业务员。输入数据输入数据:如果需要储户输入密码,储户才直接:如果需要储户输入密码,储户才直接与系统进行交互。储户填写的存款或取款信息通与系统进行交互。储户填写的存款或取款信息通过业务员键入系统,可以将存款及取款信息抽象过业务员键入系统,可以将存款及取款信息抽象为事务。为事务。输出数据输出数据:存款单,利息清单。:存款单,利息清单。3.2.1 功能建模(2)画出环境图(顶层数据流图)画出环境图(顶层数据流图)3.2.1 功能建模(3)画出一层数据流图画出一层数据流图 3.2.1 功能建模(4)画出二层数据流图画出二层数据流图 对一层图中的对一层图中的“处理存款处理存款”及及“处理取款处理取款”进行进行进一步分解,得到二层数据流图,即进一步分解,得到二层数据流图,即处理存款的处理存款的数据流图数据流图和和处理取款的数据流图处理取款的数据流图。处理存款的数据流图处理存款的数据流图3.2.1 功能建模(4)画出二层数据流图画出二层数据流图处理取款的数据流图处理取款的数据流图3.2.2 数据建模在结构化分析方法中,使用实体在结构化分析方法中,使用实体关系建模技术关系建模技术来建立数据模型。来建立数据模型。这种技术是在较高的抽象层次(概念层)上对数这种技术是在较高的抽象层次(概念层)上对数据库结构进行建模的流行技术。据库结构进行建模的流行技术。实体实体关系模型表示为可视化的实体关系模型表示为可视化的实体关系图关系图(entity-relationship diagramentity-relationship diagram,ERDERD),也称),也称为为ERER图。图。ERER图中仅包含图中仅包含3 3种相互关联的元素:种相互关联的元素:数据对象数据对象(实(实体)、描述数据对象的体)、描述数据对象的属性属性及数据对象彼此间相及数据对象彼此间相互连接的互连接的关系关系。3.2.2 数据建模数据对象数据对象数据对象是目标系统所需要的复合信息的表示,数据对象是目标系统所需要的复合信息的表示,所谓复合信息是具有若干不同属性的信息。在所谓复合信息是具有若干不同属性的信息。在ERER图中用矩形表示数据对象。图中用矩形表示数据对象。在实际问题中,数据对象(实体)可以是外部实在实际问题中,数据对象(实体)可以是外部实体、事物、角色、行为或事件、组织单位、地点体、事物、角色、行为或事件、组织单位、地点或结构等。或结构等。3.2.2 数据建模属性属性属性定义数据对象的特征,如数据对象属性定义数据对象的特征,如数据对象学生学生的学号、姓名、的学号、姓名、性别、专业等,性别、专业等,课程课程的课程编号、课程名称、学分等。的课程编号、课程名称、学分等。在在ERER图中用椭圆或圆角矩形表示属性,并用无向边将属性图中用椭圆或圆角矩形表示属性,并用无向边将属性与相关的数据对象连接在一起。与相关的数据对象连接在一起。3.2.2 数据建模关系关系不同数据对象的实例之间是有关联关系的,在不同数据对象的实例之间是有关联关系的,在ERER图上用图上用无向边无向边表示。表示。在无向边的两端应标识出关联实例的数量,也称在无向边的两端应标识出关联实例的数量,也称为关联的为关联的重数重数。从关联重数的角度可以将关联分为种。从关联重数的角度可以将关联分为种。(1)(1)一对一(一对一(1:11:1)关联)关联(2)(2)一对多(一对多(1:m1:m)关联)关联(3)(3)多对多(多对多(m:nm:n)关联)关联实例关联还有实例关联还有“必须必须”和和“可选可选”之分。之分。3.2.2 数据建模关联数量的表示关联数量的表示在在ERER图中用圆圈表示所关联的实例是可选的,隐含图中用圆圈表示所关联的实例是可选的,隐含表示表示“0”0”,没有出现圆圈就意味着是必须的。出,没有出现圆圈就意味着是必须的。出现在连线上的短竖线可以看成是现在连线上的短竖线可以看成是“1”1”。3.2.2 数据建模关联关系举例关联关系举例3.2.2 数据建模关系的属性关系的属性关系本身也可能有属性,这在多对多的关系中尤关系本身也可能有属性,这在多对多的关系中尤其常见,如学生和课程之间的关系可起名为其常见,如学生和课程之间的关系可起名为“选选课课”,其,其属性属性应该有应该有学期学期、成绩成绩等。等。关系属性的表示关系属性的表示:在表示关系的无向边上再加一:在表示关系的无向边上再加一个菱形框,并在菱形框中标明关系的名字,关系个菱形框,并在菱形框中标明关系的名字,关系的属性同样用椭圆形或圆角矩形表示,并用无向的属性同样用椭圆形或圆角矩形表示,并用无向边将关系与其属性连接起来。边将关系与其属性连接起来。3.2.2 数据建模关系的属性关系的属性3.2.2 数据建模银行储银行储蓄系统蓄系统的的ERER图图3.2.3 行为建模状态转换图(简称状态图)通过描绘系统的状态状态转换图(简称状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。及引起系统状态转换的事件,来表示系统的行为。状态图中使用的主要符号如图所示。状态图中使用的主要符号如图所示。3.2.3 行为建模状态状态状态是任何可以被观察到的系统行为模式,一个状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式,状态规定了系统状态代表系统的一种行为模式,状态规定了系统对事件的响应方式。对事件的响应方式。状态可能有:状态可能有:初态初态(初始状态)、(初始状态)、终态终态(最终状(最终状态)和态)和中间态中间态。在一张状态图中只能有一个初态,而终态则可以在一张状态图中只能有一个初态,而终态则可以有多个,也可以没有。有多个,也可以没有。3.2.3 行为建模状态的表示:状态的表示:初态用初态用实心圆实心圆表示,终态用表示,终态用牛眼牛眼图形图形表示,中间态用表示,中间态用圆角矩形圆角矩形表示。表示。3.2.3 行为建模状态转换状态转换状态图中两个状态之间带箭头的连线称为状态转状态图中两个状态之间带箭头的连线称为状态转换。换。状态的变迁通常是由事件触发的,在这种情况下状态的变迁通常是由事件触发的,在这种情况下应在表示状态转换的箭头线上标出触发转换的事应在表示状态转换的箭头线上标出触发转换的事件表达式。件表达式。如果在箭头线上未标明事件,则表示在源状态的如果在箭头线上未标明事件,则表示在源状态的内部活动执行完之后自动触发转换。内部活动执行完之后自动触发转换。3.2.3 行为建模状态转换状态转换下图为计算机应用软件的启动过程,在这个过程下图为计算机应用软件的启动过程,在这个过程中没有外部事件触发,每个状态下的活动完成时,中没有外部事件触发,每个状态下的活动完成时,状态发生转换。状态发生转换。3.2.3 行为建模事件事件事件是在某个特定时刻发生的事情,它是对引起系统做动作事件是在某个特定时刻发生的事情,它是对引起系统做动作或从一个状态转换到另一个状态的外部事件的抽象。事件表或从一个状态转换到另一个状态的外部事件的抽象。事件表达式的语法如下:达式的语法如下:事件说明(守卫条件)事件说明(守卫条件)/动作表达式动作表达式(1)(1)事件说明事件说明的语法如下:的语法如下:事件名(参数表)事件名(参数表)(2)(2)守卫条件守卫条件是一个布尔表达式。如果同时使用守卫条件和事是一个布尔表达式。如果同时使用守卫条件和事件说明,则当且仅当事件发生且布尔表达式成立时,状态转件说明,则当且仅当事件发生且布尔表达式成立时,状态转换才发生。如果只有守卫条件没有事件说明,则只要守卫条换才发生。如果只有守卫条件没有事件说明,则只要守卫条件为真,状态转换就发生。件为真,状态转换就发生。(3)(3)动作表达式动作表达式是一个过程表达式,当状态转换开始时执行该是一个过程表达式,当状态转换开始时执行该表达式。表达式。3.2.3 行为建模存款过程的状态图存款过程的状态图(考虑新开户考虑新开户 )3.2.3 行为建模取款过程的状态图取款过程的状态图3.2.4 数据字典数据字典以词条方式定义在数据模型、功能模型数据字典以词条方式定义在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,和行为模型中出现的数据对象及控制信息的特性,给出它们的准确定义,包括数据流、加工、数据给出它们的准确定义,包括数据流、加工、数据文件、数据元素,以及数据源点、数据汇点等。文件、数据元素,以及数据源点、数据汇点等。数据字典成为把数据字典成为把3 3种分析模型黏合在一起的种分析模型黏合在一起的“黏合黏合剂剂”,是分析模型的,是分析模型的“核心核心”。3.2.4 数据字典词条描述词条描述对于在数据流图中每一个被命名的图形元素均加对于在数据流图中每一个被命名的图形元素均加以定义;以定义;其内容包括图形元素的名字,图形元素的别名或其内容包括图形元素的名字,图形元素的别名或编号,图形元素类别(如加工、数据流、数据文编号,图形元素类别(如加工、数据流、数据文件、数据元素、数据源点或数据汇点等)、描述、件、数据元素、数据源点或数据汇点等)、描述、定义、位置等。定义、位置等。3.2.4 数据字典数据流词条数据流词条数据流是数据结构在系统内传播的路径,数据流词数据流是数据结构在系统内传播的路径,数据流词条应包括以下几项内容。条应包括以下几项内容。数据流名:要求与数据流图中该图形元素的名字一致。数据流名:要求与数据流图中该图形元素的名字一致。简述:简要介绍它产生的原因和结果。简述:简要介绍它产生的原因和结果。组成:数据流的数据结构。组成:数据流的数据结构。来源:数据流来自哪个加工或作为哪个数据源的外部实体。来源:数据流来自哪个加工或作为哪个数据源的外部实体。去向:数据流流向哪个加工或作为哪个数据汇点的外部实体。去向:数据流流向哪个加工或作为哪个数据汇点的外部实体。流通量:单位时间数据的流通量。流通量:单位时间数据的流通量。峰值:流通量的极限值。峰值:流通量的极限值。3.2.4 数据字典数据元素词条数据元素词条数据流图中的每个数据结构都是由数据元素构成的,数据数据流图中的每个数据结构都是由数据元素构成的,数据元素是数据处理中最小的、不可再分的单位,它直接反映元素是数据处理中最小的、不可再分的单位,它直接反映事物的某一特征。事物的某一特征。类型:数据元素分为数字型与文字型。数字型又分为离类型:数据元素分为数字型与文字型。数字型又分为离散值和连续值,文字的类型用编码类型和长度区分。散值和连续值,文字的类型用编码类型和长度区分。取值范围:离散值的取值或是枚举的(如取值范围:离散值的取值或是枚举的(如3 3,1717,2121),),或是介于上下界的一组数(如或是介于上下界的一组数(如2.1002.100);连续值一般是有);连续值一般是有取值范围的实数集(如取值范围的实数集(如0.0.100.00.0.100.0)。对于文字型,文字)。对于文字型,文字的取值需加以定义。的取值需加以定义。相关的数据元素及数据结构。相关的数据元素及数据结构。3.2.4 数据字典数据存储文件词条数据存储文件词条数据存储文件是数据保存的地方。一个数据存储文件词条数据存储文件是数据保存的地方。一个数据存储文件词条应有以下几项内容。应有以下几项内容。文件名:要求与数据流图中该图形元素的名字一致。文件名:要求与数据流图中该图形元素的名字一致。简述:简要介绍存放的是什么数据。简述:简要介绍存放的是什么数据。组成:文件的数据结构。组成:文件的数据结构。输入:从哪些加工获取数据。输入:从哪些加工获取数据。输出:由哪些加工使用数据。输出:由哪些加工使用数据。存取方式:分为顺序、直接、关键码等不同存取方式。存取方式:分为顺序、直接、关键码等不同存取方式。存取频率:单位时间的存取次数。存取频率:单位时间的存取次数。3.2.4 数据字典加工词条加工词条加工可以使用诸如判定表、判定树、结构化语言加工可以使用诸如判定表、判定树、结构化语言等形式表达,主要描述如下。等形式表达,主要描述如下。加工名:要求与数据流图中该图形元素的名字一致。加工名:要求与数据流图中该图形元素的名字一致。编号:用以反映该加工的层次和父子关系。编号:用以反映该加工的层次和父子关系。简述:加工逻辑及功能简述。简述:加工逻辑及功能简述。输入:加工的输入数据流。输入:加工的输入数据流。输出:加工的输出数据流。输出:加工的输出数据流。加工逻辑:简述加工程序和加工顺序。加工逻辑:简述加工程序和加工顺序。3.2.4 数据字典数据源点及数据汇点词条数据源点及数据汇点词条对于一个数据处理系统来说,数据源点和数据汇对于一个数据处理系统来说,数据源点和数据汇点应比较少。点应比较少。名称:要求与数据流图中该外部实体的名字一致。名称:要求与数据流图中该外部实体的名字一致。简述:简要描述是什么外部实体。简述:简要描述是什么外部实体。有关数据流:该实体与系统交互时涉及哪些数据流。有关数据流:该实体与系统交互时涉及哪些数据流。数目:该实体与系统交互的次数。数目:该实体与系统交互的次数。3.2.4 数据字典数据结构描述数据结构描述在数据字典的编制中,分析员最常用的描述数在数据字典的编制中,分析员最常用的描述数据结构的方式有定义式、据结构的方式有定义式、WarnierWarnier图等。图等。(1)(1)定义式。在数据流图中,数据流和数据文件都定义式。在数据流图中,数据流和数据文件都具有一定的数据结构,因此,必须以一种清晰、具有一定的数据结构,因此,必须以一种清晰、准确、无二义性的方式来描述数据结构。准确、无二义性的方式来描述数据结构。(2)(2)WarnierWarnier图。图。WarnierWarnier图是表示数据结构的另一图是表示数据结构的另一种图形工具,它用树形结构来描绘数据结构。种图形工具,它用树形结构来描绘数据结构。3.2.4 数据字典定义式中的符号定义式中的符号3.2.4 数据字典定义式举例:存折定义式举例:存折3.2.4 数据字典存折的定义格式存折的定义格式存折户名所号账号开户日性质(印密)存折户名所号账号开户日性质(印密)11存取行存取行5050所号所号“001”.“999”001”.“999”户名户名22字母字母2424账号账号“00000000001”.“99999999999”00000000001”.“99999999999”开户日年月日开户日年月日性质性质“1”.“6”1”.“6”印密(印密(“0”|“000001”.“999999”0”|“000001”.“999999”)存取行日期(摘要)支出存入余额操作复核存取行日期(摘要)支出存入余额操作复核日期年月日日期年月日年年“0001”.“9999”0001”.“9999”月月“01”.“12”01”.“12”日日“01”.“31”01”.“31”3.2.4 数据字典存折的定义格式存折的定义格式摘要摘要11字母字母44支出金额支出金额 存入金额存入金额余额金额余额金额金额金额“0000000.01”.“9999999.99”0000000.01”.“9999999.99”操作操作“00001”.“99999”00001”.“99999”复核复核“00001”.“99999”00001”.“99999”字母字母“a”.“z”|“A”.“Za”.“z”|“A”.“Z”3.2.4 数据字典WarnierWarnier图图举例:存折举例:存折 3.2.5 加工规格说明在对数据流图的分解中,位于层次树最低层的加工在对数据流图的分解中,位于层次树最低层的加工也称为也称为基本加工基本加工或或原子加工原子加工,对于每一个基本加工,对于每一个基本加工都需要进一步说明,这称为都需要进一步说明,这称为加工规格说明加工规格说明。在编写基本加工的规格说明时,主要目的是要表达在编写基本加工的规格说明时,主要目的是要表达“做什么做什么”,而不是,而不是“怎样做怎样做”。3.2.5 加工规格说明加工规格说明应满足如下的要求加工规格说明应满足如下的要求:(1)(1)对数据流图的每一个基本加工,必须有一个加对数据流图的每一个基本加工,必须有一个加工规格说明。工规格说明。(2)(2)加工规格说明必须描述基本加工如何把输入数加工规格说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则。据流变换为输出数据流的加工规则。(3)(3)加工规格说明必须描述实现加工的策略而不是加工规格说明必须描述实现加工的策略而不是实现加工的细节。实现加工的细节。(4)(4)加工规格说明中包含的信息应是充足的,完备加工规格说明中包含的信息应是充足的,完备的,有用的,没有重复的多余信息。的,有用的,没有重复的多余信息。3.2.5 加工规格说明决策表决策表决策表由决策表由4 4个部分组成:个部分组成:左上部分是左上部分是条件茬条件茬,在此区域列出了各种可能的单个条,在此区域列出了各种可能的单个条件;件;左下部分是左下部分是动作茬动作茬,在此区域列出了可能采取的单个动,在此区域列出了可能采取的单个动作;作;右上部分是右上部分是条件项条件项,在此区域列出了针对各种条件的每,在此区域列出了针对各种条件的每一组条件取值的组合;一组条件取值的组合;右下部分是右下部分是动作项动作项,这些动作项与条件项紧密相关,它,这些动作项与条件项紧密相关,它指出了在条件项的各组取值的组合情况下应采取的动作。指出了在条件项的各组取值的组合情况下应采取的动作。3.2.5 加工规格说明决策表举例决策表举例商店业务处理系统中商店业务处理系统中“检查订货单检查订货单”的决策表。的决策表。3.2.5 加工规格说明决策表的改进决策表的改进 如果表中有两条或更多的处理规则具有相同的动作,并且如果表中有两条或更多的处理规则具有相同的动作,并且其条件项之间存在着某种关系,就可设法将它们合并。其条件项之间存在着某种关系,就可设法将它们合并。3.2.5 加工规格说明建立决策表的步骤建立决策表的步骤(1)(1)列出与一个具体过程(或模块)有关的所有处理。列出与一个具体过程(或模块)有关的所有处理。(2)(2)列出过程执行期间的所有条件(或所有判断)。列出过程执行期间的所有条件(或所有判断)。(3)(3)将特定条件取值组合与特定的处理相匹配,消去不可能将特定条件取值组合与特定的处理相匹配,消去不可能发生的条件取值组合。发生的条件取值组合。(4)(4)将右部每一纵列规定为一个处理规则,即对于某一条件将右部每一纵列规定为一个处理规则,即对于某一条件取值组合将有什么动作。取值组合将有什么动作。3.2.5 加工规格说明决策树决策树决策树(决策树(decision treedecision tree)也是用来表达加工逻辑的一种)也是用来表达加工逻辑的一种工具,有时侯它比决策表更直观。工具,有时侯它比决策表更直观。检查订货单的决策树检查订货单的决策树 3.3 系统需求规格说明需求分析阶段的重要任务之一是根据分析的结果需求分析阶段的重要任务之一是根据分析的结果编写需求规格说明,经过严格评审并得到用户确编写需求规格说明,经过严格评审并得到用户确认之后,作为这个阶段的最终成果。认之后,作为这个阶段的最终成果。按照国家标准按照国家标准GB/T 85672006GB/T 85672006计算机软件文档计算机软件文档编制规范编制规范,涉及需求规格说明的文档有,涉及需求规格说明的文档有“软件软件需求规格说明(需求规格说明(SRSSRS)”、“数据需求说明数据需求说明(DRDDRD)”等。等。

    注意事项

    本文(软件需求获取与结构化分析方法.ppt)为本站会员(赵**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开