收藏 分销(赏)

软件工程复习比较完善市公开课金奖市赛课一等奖课件.pptx

上传人:天**** 文档编号:9988889 上传时间:2025-04-16 格式:PPTX 页数:144 大小:690.34KB
下载 相关 举报
软件工程复习比较完善市公开课金奖市赛课一等奖课件.pptx_第1页
第1页 / 共144页
软件工程复习比较完善市公开课金奖市赛课一等奖课件.pptx_第2页
第2页 / 共144页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,软件工程,-,原理、办法与应用,第1页,第1页,课程安排,理论,内容:基本原理、办法和技术,形式:讲授、自学、讨论,实践,内容:结构一个应用系统(包括分析、设计、编码、测试),形式:分组、分阶段文档、编码、集成,第2页,第2页,软件工程主要内容,软件工程基本概念,软件开发模型,软件开发各阶段任务、技术、办法,老式办法、面向对象办法,软件工程管理,软件质量确保,软件工程环境,第3页,第3页,第一章 绪论,软件与软件危机,软件工程学,老式软件工程和面向对象软件工程,软件工程应用,=,第4页,第4页,1-1,什么是软件危机,?,它有哪些典型表现,?,为何会出现软件危机,?1-2,什么是软件工程,?,它有哪些本质特性,?,如何用软件工程消除软件危机,?1-3,简述结构化范型和面向对象范型要点,并分析它们优缺点。,1-4,什么是软件过程,?,它与软件工程办法学有何关系,?,第5页,第5页,软件,程序、软件与软件产品,独唱,-,小合唱,-,合唱,-,万人大合唱,|,简朴程序 较复杂程序 软件,软件定义:软件,=,程序,+,数据,+,文档,程序:按事先设计功效和性能需求执行指令序列,数据:是程序能正常操纵信息数据结构,文档:与程序开发、维护和使用相关图文材料,第6页,第6页,软件特性,软件是逻辑,而不是物理,软件开发与人关系密切,软件开发成本大,软件生产是简朴拷贝,软件不会磨损和老化,软件受环境影响大,软件维护易产生新问题,第7页,第7页,软件开发发展过程,计算机应用发展,软件数量多规模大,软件成本高质量低,个体化软件开发办法,软件维护困难,软件危机,软件工程,第8页,第8页,软件危机,定义,计算机软件开发和维护过程所碰到一系列严重问题,表现,对软件开发成本和进度估算很不准确,用户很不满意,质量很不可靠,没有适当文档,软件成本比重上升,供不应求:软件开发生产率跟不上计算机应用快速进一步趋势,第9页,第9页,硬件,/,软件成本改变趋势,硬件,软件,100%,0%,1955,1970,1985,第10页,第10页,软件技术进步落后于需求增长,第11页,第11页,软件危机,原因,客观:软件本身特点,逻辑部件,规模庞大,主观:不正确开发办法,忽略需求分析,错误认为:软件开发,=,程序编写,轻视软件维护,第12页,第12页,软件危机,处理路径,组织管理,工程项目管理办法,技术办法,软件开发技术与办法,软件工具,第13页,第13页,软件工程学范围,软件工程学,指导计算机软件开发和维护工程学科,工程管理,+,开发技术,软件开发技术,软件开发办法学,软件工具,软件工程环境,软件工程管理,软件管理学,软件经济学,软件度量学,第14页,第14页,两种程序设计办法,程序设计两次奔腾,结构化程序设计,程序,=,数据结构,+,算法,面向对象程序设计,程序,=,对象,+,消息,第15页,第15页,面向过程和面向对象编码,存款,取款,利息结算,帐户余额,帐户余额,利息结算,存 款,取 款,第16页,第16页,两类软件工程办法,老式软件工程,软件分析,总体设计,详细设计,面向过程编码,测试,面向对象软件工程,软件分析与对象抽取,对象详细设计,面向对象编码,测试,第17页,第17页,软件工程应用,软件工程指导中小型软件,软件工程指导大型软件,软件工程成就,软件工程局限,第18页,第18页,第二章 软件开发模型,2-1,什么是软件生命周期模型,?,试比较瀑布模型、快速原型模型、增量模型和螺旋模型优缺点,阐明每种模型合用范围。,2-2,什么是面向对象办法学?它有哪些长处?,2-3,什么是“对象”?它与老式数据有何异同?,2-4,什么是“类”?,2-5,什么是“继承”?,2-6,什么是模型,?,开发软件为何要建模,?,第19页,第19页,第二章 软件开发模型,老式开发模型,瀑布模型(,waterfall model,),快速原型模型(,rapid prototype model,),演化开发模型,增量模型(,incremental model,),螺旋模型(,spiral model,),面向对象开发模型,构件集成模型(,component integration model,),形式化开发模型,转换模型(,transformational model,),净室模型(,cleanroommodel,),第20页,第20页,软件生存周期,计划时期,问题定义,可行性分析,开发时期,需求分析,软件设计,编码,测试,运营时期,软件维护,第21页,第21页,瀑布模型,问题定义,可行性研究,需求分析,软件设计,编码,测试,维护,计划时期,开发时期,运营时期,第22页,第22页,瀑布模型,特点,阶段顺序性和依赖性,推迟实现观点,质量确保,存在问题,不适合需求模糊系统,第23页,第23页,快速原型模型,需求分析,原型开发,最后系统设计,原型评价,最后系统实现,用户,反馈,第24页,第24页,快速原型模型,特点,快速开发工具,循环,低成本,种类,渐进型,抛弃型,第25页,第25页,增量模型,规格阐明,设计,实现和集成,交付客户,规格阐明,设计,实现和集成,交付客户,规格阐明,设计,实现和集成,交付客户,规格阐明,设计,实现和集成,交付客户,增量,1,增量,2,增量,3,增量,n,第26页,第26页,增量模型,增量,小而可用软件,特点,在前面增量基础上开发后面增量,每个增量开发可用瀑布或快速原型模型,迭代思绪,第27页,第27页,螺旋模型,第28页,第28页,螺旋模型,特点,瀑布模型,+,快速原型,+,风险分析,迭代过程,一个螺旋,式周期,拟定目的,选择方案,选定完毕目的策略,风险角度分析该策略,启动一个开发阶段,评价前一步结果,,,计划下一轮工作,第29页,第29页,构件集成模型,第30页,第30页,构件集成模型,特点,面向对象,基于构件库,融合螺旋模型特性,支持软件开发迭代办法,软件重用,第31页,第31页,面向对象基本概念,对象,Object,类,Class,继承,Inheritance,消息,Message,面向对象,对象,+,类,+,继承,+,消息通信,第32页,第32页,对象,Object,客观世界中实体,状态(静态属性,Attributes,),操作(动态行为,Methods,),对象,:=,Identifier,Method Set,Data Structure,Message Interface,第33页,第33页,对象特点,以数据为中心,对象是积极,实现数据封装,本质上有并行性,模块独立性好,第34页,第34页,类,Class,和实例,Instance,类,相同属性和行为对象抽象,实例,特定类所描述一个详细对象,第35页,第35页,子类直接继承父类数据和操作,继承传递性,单继承、多重继承,继承(,Inheritance,),家具,桌子,椅子,衣柜,床,椅子实例,第36页,第36页,多态性,Polymorphism,概念,不同类层次共享一个方法名,相同参数特性和返回值类型,各种不同实现,C+中虚函数实现,动态联编,第37页,第37页,重载,Overloading,函数重载,同一作用域,多个名字相同函数,参数特性不同,静态联编,运算符重载,第38页,第38页,消息,Message,对象间交互手段,形式:,Message:dest,op,para,Destination Object,Operation,Parameters,第39页,第39页,转换模型,形式化,规格阐明,与需求比较后修正,变换,2,变换,1,变换,n,测试,形式化开发统计,系统需求,目的系统,第40页,第40页,转换模型,特点,形式化软件开发办法,形式化需求规格阐明,变换技术,程序自动生成技术,确保正确,第41页,第41页,净室模型,需求,搜集,盒结构,规约,形式化,设计,统计性使,用测试,正确性,证实,代码生成,与检查,测试计划,认证,需求,搜集,盒结构,规约,形式化,设计,统计性使,用测试,正确性,证实,代码生成,与检查,测试计划,认证,需求,搜集,盒结构,规约,形式化,设计,统计性使,用测试,正确性,证实,代码生成,与检查,测试计划,认证,增量,1,增量,2,增量,n,第42页,第42页,净室模型,净室思想,在分析和设计阶段消除错误,在,“,洁净,”,状态下实现软件制作,形式化,盒结构表示分析和设计,正确性验证,增量模型,第43页,第43页,小结,软件开发模型是不断发展,各种软件开发模型各有优缺点,选取时不必拘泥与某种模型,可组合各种模型,也可依据实际创建新模型,第44页,第44页,第三章 软件需求分析,3-1,为何要进行需求分析,?,通常对软件系统有哪些需求,?3-2,如何与用户有效地沟通以获取用户真实需求,?,第45页,第45页,第三章 软件需求分析,3-3,银行计算机储蓄系统工作过程大体下列:储户填写存款单或取款单由业务员键入系统,假如是存款则系统统计存款人姓名、住址,(,或电话号码,),、身份证号码、存款类型、存款日期、到期日期、利率及密码,(,可选,),等信息,并印出存单给储户;假如是取款并且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。,请用数据流图描绘本系统功效,并用实体,-,联系图描绘系统中数据对象。,第46页,第46页,第三章 软件需求分析,3-4,分析习题,2,第,3,题所述机票预订系统。请用实体,-,联系图描绘本系统中数据对象并用数据流图描绘本系统功效。,第47页,第47页,需求分析任务和环节,需求分析任务,建立分析模型,编写需求阐明,需求分析环节,需求获取,需求提炼,需求描述,需求验证,第48页,第48页,需求获取惯用办法,联合分析小组,用户代表、领域专家和系统分析员,客户访谈,充足准备,寻找共同语言,循循序渐进、逐步迫近,问题分析与确认,多个往返,第49页,第49页,分析建模,结构化分析模型,面向对象分析模型,分析模型描述工具,DFD,、,DD,和,PSPEC,CFD,、,CSPEC,和,STD,E-R,图,用例图,对象,-,关系图,对象,-,行为图,第50页,第50页,结构化分析模型,加工阐明,数据对象阐明,CFD,STD,图,DFD,图,E-R,图,DD,控制阐明,第51页,第51页,面向对象分析模型,属性、操作、协作者,对象,-,行为模型,对象,-,关系模型,类,/,对象,模型,使用实例,第52页,第52页,第,3,章,需求分析,3-1,为何要进行需求分析,?,通常对软件系统有哪些需求,?3-2,如何与用户有效地沟通以获取用户真实需求,?3-3,银行计算机储蓄系统工作过程大体下列:储户填写存款单或取款单由业务员键入系统,假如是存款则系统统计存款人姓名、住址,(,或电话号码,),、身份证号码、存款类型、存款日期、到期日期、利率及密码,(,可选,),等信息,并印出存单给储户;假如是取款并且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。,请用数据流图描绘本系统功效,并用实体,-,联系图描绘系统中数据对象。,3-4,分析习题,2,第,3,题所述机票预订系统。请用实体,-,联系图描绘本系统中数据对象并用数据流图描绘本系统功效。,第53页,第53页,分析模型描述工具,结构化分析工具,DFD,、,DD,和,PSPEC,CFD,、,CSPEC,和,STD,E-R,图,面向对象分析工具,用例图,类对象图,对象,-,关系图,对象,-,行为图,第54页,第54页,数据流图,DFD,描述系统逻辑模型,信息在系统中流动和处理,用途,交流信息工具,结构化分析和设计工具,第55页,第55页,数据流图,DFD,构成符号,圆框代表加工,箭头代表数据流向,方框代表源点和终点,双杠表示数据文献或数据库,分层,从高层到低层,分解前后数据流必须一致,命名,数据流,处理,第56页,第56页,领书单,进书告知,购书单,缺书单,DFD,练习,售,书系统,学,生,教材,购销,系统,书库保管员,第57页,第57页,领书单 进书告知,进书告知,购书单缺书单,DFD,练习,售,书系统,1,销售,2,采购,书库,保管员,学,生,F1,教材存量表,F2,缺书登记表,第58页,第58页,数据字典,DD,DFD,中所有元素定义集合,内容,数据流,数据流分量,数据存储,处理(普通不用,DD,描述),第59页,第59页,数据字典,DD,定义数据办法,自顶向下分解数据,数据元素组合方式,顺序:,A+B,选择:,A|B,重复:,1A5,可选,:(,A,),第60页,第60页,数据字典,DD,DD,用途,分析阶段交流工具,包括控制信息,数据库设计基础,例子,P41,例,3.6,第61页,第61页,加工阐明,加工阐明,PSPEC,阐明,DFD,中每个加工,描述工具,结构化语言,鉴定表,鉴定树,第62页,第62页,加工阐明,例子,结构化语言,P42-43,例,3.7,3.8,鉴定树,P44,例,3.9,鉴定表,P44,例,3.9,第63页,第63页,CFD,和,CSPEC,适合实时系统分析,与,DFD,和,PSPEC,类似,和,DFD,与,PSPEC,配合使用,表示控制流和控制加工,第64页,第64页,CFD,和,DFD,关系,数据条件,控制输入,加工激活信号,控制输出,输入数据,加工模型,PSPEC,控制模型,CSPEC,输出数据,控制输入,第65页,第65页,CFD,符号表示,控制信息或事件,引用控制阐明,第66页,第66页,DFD,和,CFD,例子,-DFD,信号,半分钟数据,光电管,采集,计数,传送,工控机,处理,实时数据显示,班数据,处理,半小时数据,班数据,第67页,第67页,DFD,和,CFD,例子,-CFD,翻屏,人工驱动信息,时钟,半小时,半分钟,某型号累加,物品通过,信号,半分钟数据,光电管,采集,计数,传送,工控机,处理,实时数据显示,班数据,处理,半小时数据,班数据,第68页,第68页,STD,描述软件状态变迁,符号表示,矩形,-,系统状态,箭头,-,状态转变方向,规则表示式,-,事件,/,触发行为,状 态,1,状 态,2,事件,/,触发行为,第69页,第69页,STD,例子,20,秒到,/,翻屏,生成最新数据,/,翻屏,半小时到,/,工控处理,半分钟到,/,传送,空闲,/,采集,物品通过,/,计数,采集,PLC,计数,传送,工控处理,实时翻屏,第70页,第70页,E-R,图,用于对复杂数据用作数据分析和建模,实体、属性和关系,构成符号,0,:,1,1,:,1,0,:,m,1:m,第71页,第71页,E-R,图例子,电话机,生产厂商,经销商,用户,生产,购买,使用,经销,第72页,第72页,用例图,用例:系统和外部角色交互,符号表示:,系统名称,系统,用例名,用例,角色,关联,第73页,第73页,Use Case,图例子,保险商务系统,签定保险单,销售统计,客户统计,客户,保险销售员,第74页,第74页,用例之间关系,扩展关系,使用关系,组合关系,扩展,签保险单,签汽车购买契约,使用,使用,签保险单,签汽车保险单,签房屋保险单,第75页,第75页,对象,-,关系图,从,E-R,图演变而来,描述对象间关系,学生,书,出版商,购买,来自,1,:,1 0,:,m,1,:,1 1,:,1,第76页,第76页,对象,-,行为图,描述对象动态行为,对象状态转换图,事件轨迹图,事件流图,第77页,第77页,对象状态转换图例子,加纸,纸用完,故障修复,打印故障,打印完毕,接到打印命令,就绪,打印,缺纸,故障,第78页,第78页,事件轨迹图例子,打印机忙,保留文献,打印机就绪,打印文献,打印文献,打印文献,计算机,打印服务器,打印队列,打印机,第79页,第79页,事件流图例子,打印机忙,保留文献,打印机就绪,打印文献,打印文献,计算机,打印队列,打印服务器,打印机,第80页,第80页,软件需求阐明(,SRS,),引言,信息描述,功效描述,行为描述,质量确保,接口描述,其它,第81页,第81页,结构化分析办法,基本环节,自顶向下,功效分解,分层,DFD,由后向前,定义数据和加工,DD,PSPEC,依据需要,分析复杂数据和动态模型,E-R,图,,CFD,CSPEC,STD,编写,SRS,第82页,第82页,DFD,复审,父图和子图不平衡,未区别局部文献和局部外部项,分解速度太快,不遵守加工编号规则,第83页,第83页,面向对象分析办法,基本环节,定义系统用例,领域分析,建立类对象模型,建立对象,-,关系模型,建立对象,-,行为模型,编写,SRS,第84页,第84页,定义用例,回答问题发觉角色,使用系统主要功能人是谁?,需要借助于系统完毕日常工作人是谁?,谁来维护、管理系统,保证系统正常工作?,系统控制硬件设备有哪些?,系统需要和哪些其它系统接口?,对系统产生结果感兴趣人和事是哪些?,第85页,第85页,定义用例,回答问题发觉用例,角色需要从系统中获得哪种功能?需要角色做什么?,角色需要读取、产生、删除、修改或存储系统中某种信息吗?,系统中发生事件需要告知角色吗?角色需要告知系统某件事吗?这些事件能干什么?,系统需要输入/输出是什么信息?这些输入/输出信息从哪儿来?到哪儿去?,系统当前实现要解决问题是什么?,第86页,第86页,领域分析,目的,发觉或创建可广泛应用类,以便复用,分析特定应用领域,形式,公共对象、类、子集合和框架等,第87页,第87页,类对象建模(一),拟定分析模型中类对象,考察系统用例,汇总名词、名词短语,得到候选对象,拟定类对象,必要信息、需求、服务,多个属性、公共操作,第88页,第88页,类对象建模(二),定义类结构与层次,普通,-,特殊,整体,-,部分,定义主题和子系统,高层抽象,第89页,第89页,例子,电话,话筒,按键,连接线,话机,人,电话,人,教师,大学生,小学生,学生,中学生,第90页,第90页,建立对象,关系模型,环节,复审需求描述和用例陈说,找出表示关系动词或动词短语,用线连接起来,箭头表示方向,给连接命名,标上基数,第91页,第91页,对象,-,关系图例子,:,0,:,:,:,0:1,:,:,:,:,m,0:,:,:,0,:,:,:,:,:,:,:,:,:,部门,流水线,工序,材料,在制品,:,不良品,指标数据,:,:,规格,实时数据,第92页,第92页,建立对象行为模型,基本过程,评估用例,理解系统中交互序列,找出驱动交互序列事件,为每个用例创建事件轨迹,为对象创建状态转换图,第93页,第93页,第四章 软件设计概述,软件设计任务,软件设计基本概念,模块化设计,设计需要处理问题,设计文档及其复审,第94页,第94页,软件设计任务,分析模型 设计模型 设计文档,回答,How to do?,能够分为概要设计、详细设计,软件设计包括,数据设计,体系结构设计,接口设计,过程设计,第95页,第95页,软件设计任务,数据设计,信息模型 软件数据结构,体系结构设计,定义软件部件间关系,接口设计,软件内部、外部及与人之间通信,过程设计,软件组件过程性描述,第96页,第96页,软件设计基本概念,模块(,module,)与构件,(component),模块:定义输入、输出和特性程序实体,构件:可重复使用软件组件,抽象(,abstract,)与细化,(refinement),抽象:分层次考虑和处理问题,(,数据和过程,),细化:从高到低逐步分解过程,信息隐藏,对其它模块隐藏模块内部数据和过程,软件复用,Design with reuse,design for reuse,第97页,第97页,模块化设计,(modular design),分解(,decomposition,),模块独立性(,module independence,),自顶向下(,top,down design,),自底向上(,bottom,up design,),第98页,第98页,分解(,decomposition,),C(P,1,+P,2,)C(P,1,)+C(P,2,),E(P1+P,2,)E(P,1,)+E(P,2,),C,为问题复杂度,,E,为解题需要工作量,模块数,接口成本,最小成本区,M,软件开发工,作,量,总成本,模块成本,第99页,第99页,模块独立性(,module independence,),内聚(,cohesion,),模块内部各成份之间,耦合(,coupling,),一个模块与其它模块之间,模块独立性高,块内联系强,块间联系弱,第100页,第100页,内聚,弱 强,低内聚中内聚高内聚,第101页,第101页,内聚,cohesion,.,偶然性内聚,coincidental cohesion,.,逻辑性内聚,logical cohesion,.,时间性内聚,temporal cohesion,.,过程性内聚,procedural cohesion,.,通讯性内聚,communicational cohesion,.,顺序性内聚,sequential cohesion,.,功效性内聚,functional cohesion,第102页,第102页,逻辑性模块,读入分数,平均,/,最高,?,计算平均分,计算最高分,输出结果,第103页,第103页,耦合,coupling,1.,非直接耦合,no direct coupling,2.,数据耦合,d,ata coupling,3.,特性耦合,stamp coupling,4.,控制耦合,control coupling,5.,外部耦合,external coupling,6.,公共耦合,common coupling,7.,内容耦合,content coupling,第104页,第104页,弱耦合,数据耦合,非直接,耦合,模块,2,模块,1,模块,4,模块,3,特性耦合(参数表,传递数据结构),第105页,第105页,公共耦合,第106页,第106页,自定向下和自底向上设计,自顶向下,顶层开始,逐步分解,由底向上,选择关键部分先设计,扩展到整个系统,第107页,第107页,设计需要处理问题,协同设计,谁最适当设计系统某首先?,如何使组内组员互相理解别人设计?,如何协调设计组件使整个系统统一?,用户界面设计,让用户驾驭软件,不是软件驾驭用户,减少用户记忆,保持界面一致性,并发系统设计,如何确保同时执行组件间对共享数据一致性,第108页,第108页,并发处理(顺序执行),1,、,组件,1,查询,X,是否为空。,2,、,组件,1,被告知,X,不为空。,3,、,组件,2,查询,X,是否为空。,4,、,组件,2,被告知,X,不为空。,5,、,组件,1,出栈,删除最后一个元素。,6,、,组件,2,想出栈,但,X,已为空,系统进入非法状态。,第109页,第109页,并发处理,1,、,组件,1,问询栈,X,是否为空。,2,、,组件,1,被告知栈,X,不为空。,3,、,组件,2,问询栈,X,是否为空。,4,、,组件,2,被告知栈,X,不为空。,5,、,组件,1,出栈,删去最后一个元素,并锁住栈,X,。,6,、,组件,2,想出栈,但被告知,X,已上锁。,7,、,另一个组件加了一个元素到栈,X,中。,8,、,组件,2,被告知,X,已开锁(由于外部进程或者由于组件,2,再次尝试),9,、组件,2,出栈。,第110页,第110页,软件设计文档,软件设计阐明书,1,),范围,2,),数据设计,3,),体系结构设计,4,),接口设计,5,),模块过程设计,6,)其它,包括测试考虑,确保设计满足所有需求,设计约束和一些特殊注解等内容。,第111页,第111页,设计复审(,design review,),及早发觉设计中缺点,差错传播,复审内容,概要设计复审,系统总体结构,模块划分,内外接口,详细设计复审,各个模块详细设计,第112页,第112页,设计复审(,design review,),复审方式,Formal review,Design review meeting,Informal review,Walk-through,第113页,第113页,第五章 老式设计办法,结构化设计模型,结构化设计办法,过程设计,Jackson,办法,第114页,第114页,PSPEC,结构化设计内容,数据对象描述,CFD,DFD,E-R,DD,CSPEC,过程设计,接口设计,体系结构设计,数据设计,第115页,第115页,结构化设计内容,结构设计,概,要设计,体系结构设计,SC,图,接口设计,SC,图,数据库设计,物理数据模型,过程设计,详,细设计,模块处理过程,N-S,图,,PAD,,,PDL,等,第116页,第116页,描述工具,SC,图,SC,图构成符号,(,P88,),矩形框来表示模块,带箭头连线表示模块间调用关系,传入和传出模块数据流,SC,图中模块符号,传入,传出,变换,源,漏,控制,第117页,第117页,SC,图中模块调用,简朴调用,选择调用,循环调用,A,B,C,D,A,B,C,第118页,第118页,面向数据流设计办法,DFD,图类型,变换型结构,事务型结构,从,DFD,图到,SC,图映射,复审,DFD,图,必要时可再次进行修改或细化,判别,DFD,图结构特性,:,事务?变换?,按照规则,把,DFD,图为初始,SC,图,改进初始,SC,图,第119页,第119页,变换结构,DFD,变换,中心,传入,传出,信息,传入流,传出流,变换流,时间,第120页,第120页,事务型结构,DFD,事务中心,接受路径,动作路径,第121页,第121页,同时存在两类结构,T,传入,变换,传出,事务中心,第122页,第122页,变换分析,划分,DFD,图边界,建立初始,SC,图框架,顶层都只含一个用于控制主模块,第一层包括传入、传出和中心变换三个模块,分解,SC,图各个分支,分解实质上是“映射”,第123页,第123页,例子,划,分,DFD,P,E,D,C,B,A,W,R,U,V,Q,a,b,c,d,e,p,r,w,u,v,传入部分,变换中心,传出部分,第124页,第124页,第一级分解,M,E,M,T,M,C,M,A,c,e,c,e,u,w,u,w,第125页,第125页,传入分支分解,GetE,AtoB,ReadD,DtoE,ReadA,BtoC,GetB,GetC,M,A,c,e,c,e,b,b,c,a,a,b,d,d,b,第126页,第126页,传出分支分解,WriteW,UtoV,Write V,PutU,M,E,w,u,w,u,u,v,v,第127页,第127页,变换中心分解,M,T,R,P,Q,e,p,c,p,r,r,w,u,第128页,第128页,初始,SC,图,M,C,M,T,Q,P,R,M,E,WriteW,PutU,Uto V,WriteV,A toB,ReadA,GetB,DtoE,Read D,BtoC,GetC,Get E,M,A,第129页,第129页,事务分析,在,DFD,图上拟定边界,事务中心,接受部分(包括接受路径),发送部分(包括所有动作路径),画出,SC,图框架,DFD,图三个部分分别映射为事务控制模块,接受模块和动作发送模块,分解和细化接受分支和发送分支,第130页,第130页,例子,划,分,DFD,传入,T,变换,传出,接受部分,事务中心,动作部分,第131页,第131页,Example-first,level factoring,发送,事务控制,接受,顶层,第一层,第132页,第132页,混合结构,C1,A,C3,B,C2,D,L,F,G,E,K,J,a,b,b1,b2,b3,c1,c2,c3,d,e,f,g,h,j,k,l,m,第133页,第133页,优化结构设计指导规则,对模块分割、合并和变动调用关系指导规则,提升内聚,减少耦合后,简化模块接口,少用全局性数据和控制型信息,保持高扇入,/,低扇出原则,作用域,/,控制域规则,作用域不要超出控制域范围,位置离受它控制模块越近越好,第134页,第134页,扇入和扇出,M,M,M,扇入,M,扇出,第135页,第135页,例子:扇出,计算,实发工资,取得,工资数据,编外人员,扣款,编外人员,工资,编外人员,税收,薪金制,工资额,计时制,工资额,常规,扣款,税收,扣款,煎饼形结构,不可取!,第136页,第136页,例子:扇出,常规,扣款,编外人员,实发工资,计算,实发工资,取得,工资数据,计时工人,实发工资,计薪工人,实发工资,编外人员,扣款,编外人员,税收,编外人员,工资,税收,扣款,计时制,工资额,薪金制,工资额,塔型结构,第137页,第137页,过程设计,目的,拟定模块采用算法和块内数据结构,任务:,编写软件“过程设计阐明书”,为每个模块拟定采用算法,拟定每一模块使用数据结构,拟定模块接口细节,第138页,第138页,过程设计原则,清楚第一设计风格,结构化控制结构,逐步细化实现办法,第139页,第139页,过程设计工具,流程图,N-S,图,伪代码,PDL,语言,第140页,第140页,N-S,图,S1,S2,顺序,C,T F,S1 S2,选择,While C,S,S,Until C,循环,第141页,第141页,Jackson,办法,实体动作,实体结构,初始建模,系统功效,系统时间,系统实现,第142页,第142页,Jackson,表示法,Jackson,图,Jackson,伪代码,A,B,C,A,B,0,C,0,A,B*,顺序,选择,重复,A,seq,A,select,cond1 A,iter,until,或,while,cond,B B,C or cond2 B,end,A C,end,A,end,A,(a),顺序,(b),选择,(c),重复,第143页,第143页,Jackson,办法和,SD,办法,Jackson,办法,数据结构,映射,程序结构,程序过程性表示,(Jackson,图,),(Jackson,图,),(Jackson,伪代码,),程序分析,程序设计,SD,办法,问题结构,映射,软件结构,各模块过程描述,(DFD,图,),(SC,图,),(PDL,等工具,),概要设计,过程设计,第144页,第144页,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服