欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    本科生软件工程.ppt

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

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

    本科生软件工程.ppt

    第三部分 软件需求分析,软件需求分析的任务需求分析的过程软件需求分析的原则软件需求分析方法结构化分析方法原型化方法动态分析方法数据及数据库需求,软件需求分析的任务,深入描述软件的功能和性能确定软件设计的约束和软件同其它系统元素的接口细节定义软件的其它有效性需求分析员通过需求分析,逐步细化对软件的要求,描述软件要处理的数据域,给软件开发提供一种可转化为数据设计,结构设计和过程设计的数据与功能表示。制定的 软件需求规格说明还要为评价软件质量提供依据。,需求分析研究的对象是软件项目的用户要求准确地表达被接受的用户要求确定被开发软件系统的系统元素将功能和数据结构分配到这些系统元素中,需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的“做什么”的问题。,通常软件开发项目是要实现目标系统的物理模型目标系统的具体物理模型是由它的逻辑模型经实例化,即具体到某个业务领域而得到的,需求分析的过程,问题识别分析人员要研究计划阶段产生的可行性分析报告和软件项目实施计划。从系统的角度来理解软件并评审软件范围是否恰当 确定对目标系统的综合要求,即软件的需求 提出这些需求实现条件,以及需求应达到的标准,软件需求包括:,功能需求性能需求环境需求可靠性需求安全保密要求用户界面需求,资源使用需求成本消耗需求开发进度需求预先估计以后系统可能达到的目标,问题识别的另一项工作是建立分析所需要的通信途径,以保证能顺利地对问题进行分析。,(2)分析与综合需求分析的第二步工作是问题分析和方案的综合。从数据流和数据结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的约束,分析它们是否满足功能要求,是否合理。剔除其不合理的部分,增加其需要部分。最终综合成系统的解决方案,给出目标系统的详细逻辑模型。,常用的分析方法,面向数据流的结构化分析方法(SA)面向数据结构的Jackson方法(JSD)面向对象的分析方法(OOA)等建立动态模型的状态迁移图或Petri网,(3)编制需求分析阶段的文档 软件需求说明书 数据要求说明书 初步的用户手册 修改、完善与确定软件开发实施计划,(4)需求分析评审,系统定义的目标是否与用户的要求一致;系统需求分析阶段提供的文档资料是否齐全;文档中的所有描述是否完整、清晰、准确反映用户要求;与所有其它系统成分的重要接口是否都已经描述;,被开发项目的数据流与数据结构是否足够,确定;所有图表是否清楚,在不补充说明时能否理解;主要功能是否已包括在规定的软件范围之内,是否都已充分说明;设计的约束条件或限制条件是否符合实际;开发的技术风险是什么;,是否考虑过软件需求的其它方案;是否考虑过将来可能会提出的软件需求;是否详细制定了检验标准,它们能否对系统定义是否成功进行确认;,需求分析流程,软件需求分析的原则,必须能够表达和理解问题的数据域和功能域必须按自顶向下,逐层分解的方式对问题进行分解和不断细化要给出系统的逻辑视图和物理视图,软件需求分析方法,需求分析方法由对软件问题的数据域和功能域的系统分析过程及其表示方法组成大多数的需求分析方法是由信息驱动的数据域有三种属性:数据流、数据内容和数据结构。,结构化分析方法,结构化分析是面向数据流进行需求分析的方法结构化分析方法适合于数据处理类型软件的需求分析,具体来说,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止结构化分析方法使用工具:数据流图,数据词典,结构化英语,判定表与判定树,数据流图,数据流图中的主要图形元素,例:办理取款手续的数据流图,数据流与数据加工之间的关系,分层的数据流图,为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统,分层数据流图,在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据底层流图是指其加工不需再做分解的数据流图,它处在最底层中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。,结构化分析方法步骤示例商店业务处理系统,这个数据流图只是一个高层的系统逻辑模型,它反映了目标系统要实现的功能数据流图绘制步骤首先确定系统的输入和输出根据商店业务,画出顶层数据流图,以反映最主要业务处理流程,经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。主要数据流输入的源点和输出终点是顾客和供应商。然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出端,得到第一层数据流图,第一层数据流图,加细每一个加工框 销售细化,采购细化,检查和修改数据流图的原则,数据流图上所有图形符号只限于前述四种基本图形元素数据流图的主图必须包括前述四种基本元素,缺一不可数据流图的主图上的数据流必须封闭在外部实体之间每个加工至少有一个输入数据流和一个输出数据流,在数据流图中,需按层给加工框编号。编号表明该加工所处层次及上下层的亲子关系规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。此即父图与子图的平衡可以在数据流图中加入物质流,帮助用户理解数据流图,图上每个元素都必须有名字数据流图中不可夹带控制流初画时可以忽略琐碎的细节,以集中精力于主要数据流,数据词典,数据词典与数据流图配合,能清楚地表达数据处理的要求词条描述 对于在数据流图中每一个被命名的图形元素,均加以定义,其内容有:名字,别名或编号,分类,描述,定义,位置,其它,等,(1)数据流词条描述,数据流名:说明:简要介绍作用即它产生的原因和结果数据流来源:来自何方数据流去向:去向何处数据流组成:数据结构数据量流通量:数据量,流通量,(2)数据元素词条描述,数据元素名:类型:数字(离散值,连续值),文字(编码类型)长度:取值范围:相关的数据元素及数据结构:,(3)数据文件词条描述,数据文件名:简述:存放的是什么数据输入数据:输出数据:数据文件组成:数据结构存储方式:顺序,直接,关键码存取频率:,(4)加工逻辑词条描述,加工名:加工编号:反映该加工的层次简要描述:加工逻辑及功能简述输入数据流:输出数据流:加工逻辑:简述加工程序,加工顺序,(5)源点及汇(终)点词条描述,名称:外部实体名简要描述:什么外部实体有关数据流:数目:,数据结构的描述,符 号 含 义 举 例 被定义为 与 x=ab.,.或.|.或 x=a,b,x=a|b.或 m.n 重复 x=a,x=3a8(.)可选 x=(a)“.”基本数据元素 x=“a”.连结符 x=1.9,存折格式,存折户名所号帐号开户日性质(印密)1存取行50户名2字母24所号“001”.“999”帐号“00000001”.“99999999”开户日年月日性质“1”.“6”注:“1”表示普通户,“5”表示工资户等印密“0”注:印密在存折上不显示存取行日期(摘要)支出存入余额操作复核,对数据流图的每一个基本加工,必须有一个基本加工逻辑说明基本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则加工逻辑说明必须描述实现加工的策略而不是实现加工的细节加工逻辑说明中包含的信息应是充足的,完备的,有用的,没有重复的多余信息,基本加工逻辑说明,用于写加工逻辑说明的工具,结构化英语判定表判定树,(1)结构化英语(PDL)语言,结构化英语的词汇表由 英语命令动词 数据词典中定义的名字 有限的自定义词 逻辑关系词 IF_THEN_ELSE、CASE_OF、WHILE_DO、REPEAT_UNTIL等组成。,是一种介于自然语言和形式化语言之间的语言语言的正文用基本控制结构进行分割,加工中的操作用自然语言短语来表示其基本控制结构有三种:简单陈述句结构:避免复合语句;重复结构:WHILE_DO 或 REPEAT_UNTIL结构。判定结构:IF_THEN_ELSE 或 CASE_OF结构;,商店业务处理系统中“检查发货单”,IF 发货单金额超过$500 THEN IF 欠款超过了60天 THEN 在偿还欠款前不予批准 ELSE(欠款未超期)发批准书,发货单 ENDIFELSE(发货单金额未超过$500)IF 欠款超过60天 THEN 发批准书,发货单及赊欠报告ELSE(欠款未超期)发批准书,发货单 ENDIFENDIF,(2)判定表,如果数据流图的加工需要依赖于多个逻辑条件的取值,使用判定表来描述比较合适,以“检查发货单”为例,(3)判定树,判定树也是用来表达加工逻辑的一种工具。有时侯它比判定表更直观。,原型化方法,在开发初期,要想得到一个完整准确的规格说明不是一件容易的事。特别是对一些大型的软件项目。用户往往对系统只有一个模糊的想法,很难完全准确地表达对系统的全面要求。,软件开发者对于所要解决的应用问题认识更是模糊不清随着开发工作向前推进,用户可能会产生新的要求,或因环境变化,要求系统也能随之变化;开发者又可能在设计与实现的过程中遇到些没有预料到的实际困难,需要以改变需求来解脱困境。,因此规格说明难以完善、需求的变更、以及通信中的模糊和误解,都会成为软件开发顺利推进的障碍。为了解决这些问题,逐渐形成了软件系统的快速原型的概念。,软件原型的分类,在软件开发中,原型是软件的一个早期可运行的版本,它反映最终系统的部分重要特性。探索型:目的是要弄清对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性。,实验型:这种原型用于大规模开发和实现之前,考核方案是否合适,规格说明是否可靠。进化型:这种原型的目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。,原型使用策略,废弃策略 追加策略,建立快速原型,进行系统的分析和构造的好处:,增进软件人员和用户对系统服务需求的理解,使比较含糊的具有不确定性的软件需求(主要是功能)明确化。软件原型化方法提供了一种有力的学习手段。,使用原型化方法,可以容易地确定系统的性能,确认各项主要系统服务的可应用性,确认系统设计的可行性,确认系统作为产品的结果。软件原型的最终版本,有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,这样有利于建成最终系统。,快速原型开发模型(原型生存期),软件开发过程,软件复用技术,利用可复用的模块,做出适当的组合,就可得到快速构造的原型系统。为了快速地构造原型,这些模块首先必须有简单而清晰的界面;其次它们应当尽量不依赖其它的模块或数据结构;第三,它们应具有一些通用的功能。,软件复用的范围尚无严格定义,它包容了用来开发软件的任何信息的复用。包括现有软件开发方法论的复用;软件要求,规格说明和设计的复用;源代码,模块和操作系统的复用;文档的复用;分析数据的复用;测试信息的复用;维护信息数据库的复用等等。软件工具与支撑环境的复用也属于软件复用工作的范围。,软件复用的范围基本上规为五个层次:复用数据复用模块复用结构复用设计复用规格说明,软件复用技术合成技术:构件是复用的基础。构件方法以抽象数据类型为基础,将功能与数据结构封装在构件内部,构件可以是对某一个函数,过程,子程序,数据类型,算法等可复用软件成分的抽象。形成大构件的方法:连接;消息传递和继承;管道机制,生成技术:生成技术利用可复用的模式,通过生成程序产生一个新的程序或程序段,产生的程序可以看成是程序的实例。两种复用模式:代码模式:将可复用的代码模式存于生成器内,通过特定的参数替换,生成抽象软件模块的具体实现。规则模式:利用变换规则集合。其变换方法中通常采用高级的规格说明语言,形式化地给出软件的需求规格说明,利用程序变换系统把采用高级的规格说明语言编写的程序转化成某种可执行语言的程序。,系统动态分析,系统的需求规格说明通常是用自然语言来叙述的,但是用自然语言描述往往会出现歧义性。为了直观地分析系统的动作,从特定的视点出发描述系统的行为,需要采用动态分析的方法。,最常用的动态分析方法,状态迁移图时序图Petri网,状态迁移图,状态迁移图是描述系统的状态如何相应外部的信号进行推移的一种图形表示。圆圈“”表示可得到的系统状态 箭头“”表示从一种状态向另一种状态的迁移。,例如,当有多个申请占用CPU运行的进程时,有关CPU分配的进程的状态迁移。,可得到的状态就绪,运行,等待生成的事件t1,t2,t3,t4 t1 中断事件 t2 中断已处理 t3 分配CPU t4 用完CPU时间,状态迁移图的优点,状态之间的关系能够直观地捕捉到由于状态迁移图的单纯性,能够机械地分析许多情况,可很容易地建立分析工具,Petri网,Petri网已广泛地应用于硬件与软件系统的开发中,它适用于描述与分析相互独立、协同操作的处理系统,也就是并发执行的处理系统。,Petri网简称PNG(Petri Net Graph),是一种有项图,它有两种结点:位置(place):符号为“”,它用来表示系统的状态。转移(transition):符号为“|”或“”,它用来表示系统中的事件。图中的有向边表示对转移的输入,或由转移的输出,标记,或称令牌(token),是表明系统当前处于什么状态的标志,图中,表示位置P3与P5的圆圈中间点了一个黑点,称为标记。标记在位置上的出现表明了处理要求的到来。也就是说事件t3激发的两个前提都已具备,转移t3激发。作为执行结果,位置p3与p5上的标记移去,移到了位置p4上。反过来,当激发产生的结果有几个时,将随机地选择一个结果输出,并把作为结果的位置的状态加上标记。,教师-学生-课程E-R 图,E-R方法(Entity-Relationship Approach)实体关系模型,人与车关系E-R 图,制造商,ID,类型,制造,车型,ID号,模型,实体类型,引擎,传输,N,N,合同,货主,运输,许可证,销售关系,货栈,N,N,N,1,1,1,N,M,M,汽车业务销售的E-R图,数据结构的规范化,三个条件:表格中每个信息项必须是一个不可分割的数据项。表格中每一列中所有信息项必是同一类型,名字各异表格中各行互不相同不满足以上关系的叫做非规范化关系,例:教学管理有三个实体型,课程,学生,教师学生(学号,姓名,性别,年龄,专业,籍贯)教师(职工号,姓名,年龄,职称,工资级别,工资)课程(课程号,课程名,学分,学时,课程类别)为了表示实体型之间的关系,又建立两个关系:选课(学号,课程号,听课出勤率,作业完成率,分数)教课(职工号,课程号)这五个关系组成了数据库模型。在每个关系中,属性加下划线指明关键字。关系的规范化程度通常按属性间的依赖程度来区分,并以范式来表达。,判断规范化程度的条件:关系中所有属性都是“单纯域”,即不出现表中有表;非主属性完全函数依赖于关键字非主属性相互独立,即任何非主属性间不存在函数依赖如果满足关系1)则为第一范式(1NF))如果满足关系1)和2)为第二范式(2NF)如果满足关系1),2)和3)为第三范式(3NF),

    注意事项

    本文(本科生软件工程.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开