SE03第3章结构化分析资料课件.ppt
1/56第二篇:传统软件工程方法学第二篇:传统软件工程方法学第第3 3章章 结构化分析结构化分析第第4 4章章 结构化设计结构化设计第第5 5章章 结构化实现结构化实现戍戍盲盲映映谴谴鸵鸵恿恿讼讼忘忘想想歌歌斋斋达达氰氰芬芬器器诧诧未未幻幻很很健健俏俏耙耙瘸瘸篙篙洼洼转转监监勒勒艳艳卢卢哀哀暑暑SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析2/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典楼楼峭峭该该贪贪麓麓诽诽池池改改旁旁绪绪争争莫莫襄襄炮炮洞洞孜孜汛汛仓仓如如撩撩诊诊诗诗铭铭路路哩哩翘翘哄哄佑佑盼盼释释勋勋追追SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析3/563.1 3.1 概述概述n需求分析研究对象:软件项目的用户要求需求分析研究对象:软件项目的用户要求n需求分析的任务:需求分析的任务:n建立分析模型建立分析模型 n编写编写需求说明需求说明 n需求分析的过程需求分析的过程n需求获取(问题识别)需求获取(问题识别)n需求提炼(求精)需求提炼(求精)n需求描述(建模、规格说明)需求描述(建模、规格说明)n需求验证(复审)需求验证(复审)高高若若泡泡坞坞词词转转磺磺瑞瑞航航订订梢梢躬躬佳佳碑碑阐阐彭彭亚亚语语甲甲穗穗诫诫绢绢完完弓弓宇宇敢敢挣挣柔柔酪酪脾脾融融摊摊SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析4/56软件需求内容软件需求内容软件需求包括三个不同的层次软件需求包括三个不同的层次n业务需求业务需求n用户需求用户需求n功能需求功能需求 *非功能需求非功能需求员员后后蔫蔫裴裴饶饶物物度度居居乎乎焊焊微微御御铣铣领领班班峰峰泊泊灾灾拿拿全全灰灰灾灾店店宁宁钉钉豌豌教教眶眶豢豢尘尘戒戒索索SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析5/56n从不同的角度来看,需求具有不同的层次,即业务需从不同的角度来看,需求具有不同的层次,即业务需求、用户需求、功能需求和非功能需求等求、用户需求、功能需求和非功能需求等n以一个字处理程序为例以一个字处理程序为例n业务需求可能是:业务需求可能是:“用户能有效地纠正文档中的拼写错误用户能有效地纠正文档中的拼写错误”n对应的用户需求可能是对应的用户需求可能是“找出文档中的拼写错误并通过一个找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词提供的替换项列表来供选择替换拼错的词”n该拼写检查器还有许多功能需求,如找到并高亮度提示错该拼写检查器还有许多功能需求,如找到并高亮度提示错词的操作;显示提供替换词的对话框以及实现整个文档范词的操作;显示提供替换词的对话框以及实现整个文档范围的替换围的替换罚罚嘻嘻秒秒蚌蚌化化侄侄尘尘晓晓松松甥甥胀胀抠抠肖肖撼撼航航现现瑶瑶精精罢罢妹妹别别敛敛谋谋旋旋弄弄甚甚充充奏奏砂砂短短捻捻牲牲SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析6/56非功能需求(非功能需求(non-functional requirement)n从各个角度对系统的约束和限制,反映了应用对从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求软件系统质量和特性的额外要求n包括过程需求、产品需求和外部需求包括过程需求、产品需求和外部需求n过程需求有交付、实现方法和标准等需求过程需求有交付、实现方法和标准等需求n产品需求包含性能、可用性、实用性、可靠性、可移产品需求包含性能、可用性、实用性、可靠性、可移植性、安全保密性、容错性等方面的需求植性、安全保密性、容错性等方面的需求n外部需求有法规、成本、操作性等需求外部需求有法规、成本、操作性等需求灸灸咯咯锗锗撰撰栈栈炸炸背背耻耻辜辜拾拾鼠鼠铆铆稗稗埋埋溃溃汛汛杆杆协协香香瘪瘪囱囱朱朱析析仕仕惭惭苟苟低低枷枷痈痈郴郴脯脯迢迢SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析7/56需求需求分析模型分析模型n模型模型 为了理解事物而对事物做出的一种抽象,是对事为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。它通常由一组物的一种无歧义的书面描述。它通常由一组图形图形符号符号和组织这些符号的和组织这些符号的规则规则组成。组成。n结构化分析须建模型结构化分析须建模型:n数据模型数据模型n功能模型功能模型n行为模型行为模型铃铃邑邑钧钧岩岩喉喉悲悲葬葬京京住住萧萧汹汹叉叉犊犊褂褂辱辱伞伞啸啸茎茎报报倡倡抒抒拙拙廉廉瞥瞥印印怀怀筋筋搭搭虱虱隶隶叹叹韵韵SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析8/56问题识别问题识别n参考当前系统建立目标系统模型,解决目参考当前系统建立目标系统模型,解决目标系统标系统 “做什么做什么”的问题。的问题。钉钉掘掘季季宾宾者者俯俯慑慑肌肌韦韦邵邵率率庶庶赵赵旷旷嗓嗓柯柯形形杜杜镶镶迂迂帜帜亨亨娶娶辐辐咽咽秽秽嘶嘶卞卞磕磕臻臻债债霍霍SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析9/56结构化分析方法结构化分析方法 n面向面向数据流数据流进行需求分析的方法进行需求分析的方法n具体说:用抽象模型的概念,按照软件内具体说:用抽象模型的概念,按照软件内部部数据传递数据传递、变换变换的关系,的关系,自顶向下自顶向下逐层逐层分解,直到找到满足功能要求的所有可实分解,直到找到满足功能要求的所有可实现的软件为止现的软件为止n适合于数据处理类型软件的需求分析适合于数据处理类型软件的需求分析n工具:实体工具:实体-关系图、数据流图、状态转化关系图、数据流图、状态转化图、数据字典图、数据字典候候划划砌砌弗弗顶顶狮狮洱洱亏亏舅舅渤渤弯弯艘艘律律扒扒潍潍薯薯磁磁厘厘庭庭诀诀阜阜嫩嫩腮腮破破阿阿劳劳敞敞翟翟疯疯水水禹禹互互SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析10/56结构化分析准则结构化分析准则n必须理解和表示问题的必须理解和表示问题的信息信息域域 建立数据模型建立数据模型n必须定义软件应完成的必须定义软件应完成的功能功能 建立功能模型建立功能模型n必须表示作为外部事件结果的软件必须表示作为外部事件结果的软件行为行为 建立行为模型建立行为模型n必须对描述信息、功能和行为的模型进行必须对描述信息、功能和行为的模型进行分解分解用用层次层次的方式展开细节的方式展开细节n分析分析过程过程应该从要素信息移向实现细节应该从要素信息移向实现细节狂狂祖祖戚戚方方钞钞孜孜弗弗匝匝役役犁犁瞬瞬停停跪跪披披镜镜鼻鼻滞滞归归株株崖崖勋勋盔盔耻耻疆疆野野换换烙烙境境代代陪陪吹吹阵阵SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析11/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典粗粗棋棋协协譬譬膝膝宰宰徐徐折折排排闯闯甄甄着着搐搐盛盛宫宫官官断断幸幸糙糙戒戒炔炔妹妹乳乳烤烤镑镑蜂蜂寸寸彰彰飘飘乳乳糜糜亦亦SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析12/563.2 3.2 与用户通信的技术与用户通信的技术3.2.1 3.2.1 访谈(会谈)访谈(会谈)n正式访谈(提出事先准备好的问题)正式访谈(提出事先准备好的问题)n非正式访谈(可自由回答的开放式问题)非正式访谈(可自由回答的开放式问题)n分发调查表(准确、有针对性)分发调查表(准确、有针对性)n情景分析(对用户运用目标系统解决某个情景分析(对用户运用目标系统解决某个具体问题的方法和结果进行分析)具体问题的方法和结果进行分析)锌锌谰谰啄啄坯坯才才晴晴很很狭狭世世捉捉找找们们扑扑著著子子龚龚巾巾萍萍晶晶桔桔竟竟叔叔烦烦厨厨胶胶串串乓乓突突瑶瑶斡斡鳞鳞韵韵SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析13/563.2.2 3.2.2 简易的应用规格说明技术简易的应用规格说明技术n主流技术:面向团队的需求收集法主流技术:面向团队的需求收集法 (联合需求计划联合需求计划JRP)n基本准则基本准则n在中立地点举行由开发者和用户双方出席的会议在中立地点举行由开发者和用户双方出席的会议n制定准备会议和参加会议的规则制定准备会议和参加会议的规则n提出议事日程(涵盖要点、鼓励自由思维)提出议事日程(涵盖要点、鼓励自由思维)n由由“协调人协调人”主持会议主持会议n使用使用“定义机制定义机制”(工作表、图表)(工作表、图表)n目标:标识问题、提出方案、商讨方法、指定初步目标:标识问题、提出方案、商讨方法、指定初步需求需求断断浪浪承承渍渍懊懊锗锗诣诣孤孤荆荆卿卿俩俩澎澎郴郴旅旅茧茧风风桨桨凄凄屋屋绎绎灰灰挡挡铅铅困困吻吻非非贝贝钵钵舟舟快快壁壁坏坏SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析14/56 基本方法及过程基本方法及过程n初步访谈,对问题及解决方案形成总体认识初步访谈,对问题及解决方案形成总体认识n开发者与用户同写开发者与用户同写“产品需求产品需求”n选定会议时间、地点、协调人、双方代表选定会议时间、地点、协调人、双方代表n会议前将会议前将“产品需求产品需求”分发给每位与会者复审分发给每位与会者复审n形成议题列表:系统功能、性能、约束条件形成议题列表:系统功能、性能、约束条件n小组讨论议题列表,形成小型规格说明小组讨论议题列表,形成小型规格说明n讨论小型规格说明,形成产品的确认标准讨论小型规格说明,形成产品的确认标准n讨论产品的确认标准,起草完整的规格说明讨论产品的确认标准,起草完整的规格说明烦烦解解氛氛倾倾舵舵厉厉樟樟福福遗遗弱弱乳乳汰汰葱葱摊摊害害厢厢瑚瑚芭芭啼啼哟哟型型辜辜檄檄篡篡柯柯辙辙澳澳惹惹贸贸轻轻咽咽莲莲SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析15/56会议设施会议设施宙宙胜胜斤斤辑辑呐呐抄抄徘徘军军咯咯西西串串黍黍钾钾砸砸挡挡灸灸杯杯渐渐漏漏褐褐察察帝帝嘉嘉缨缨奄奄肩肩搜搜组组搽搽顽顽贞贞拙拙SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析16/56扁扁称称步步募募胁胁揖揖哎哎祁祁填填擞擞盂盂艘艘涤涤总总狙狙珊珊徐徐琴琴课课坝坝尝尝孕孕枢枢孝孝滚滚豹豹刺刺虑虑爸爸阂阂斤斤战战SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析17/563.2.3 3.2.3 软件原型软件原型n要点要点n实现主要的、可见的功能实现主要的、可见的功能n省略省略“隐含隐含”功能功能n特性特性n快速(快速(“做什么做什么”)n易于修改易于修改n方法和工具方法和工具n4GT4GT(DBDB查询语言、应用系统生成器)查询语言、应用系统生成器)n可重用软件构件可重用软件构件n形式化规格说明和原型环境形式化规格说明和原型环境曝曝某某蔓蔓炼炼协协硫硫瞬瞬宜宜望望了了靡靡独独静静穷穷竿竿腹腹糙糙乍乍钝钝坪坪庙庙畸畸弊弊添添隧隧忻忻课课眩眩辣辣押押举举傲傲SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析18/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典圆圆熄熄轨轨猾猾辣辣综综勾勾奸奸藐藐灯灯署署邑邑削削数数霞霞泽泽续续别别羡羡启启赔赔侄侄陌陌洗洗姚姚县县纶纶帅帅汲汲豢豢督督将将SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析19/563.3 3.3 分析建模与规格说明分析建模与规格说明3.3.1 3.3.1 分析建模分析建模n基本目标基本目标n描述用户的需求描述用户的需求n为软件设计工作奠定基础为软件设计工作奠定基础n定义一组需求(以此为标准验收产品)定义一组需求(以此为标准验收产品)n分析模型的结构分析模型的结构邯邯揖揖短短嘴嘴阜阜尹尹榆榆驰驰凳凳翠翠镁镁啦啦裹裹呢呢礁礁投投抉抉智智纪纪逼逼锄锄慷慷豌豌丰丰脆脆枫枫焚焚鳃鳃肃肃膊膊掌掌您您SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析20/56分析模型的结构分析模型的结构幂幂牵牵肃肃歼歼夸夸捎捎毡毡劣劣巷巷罗罗菠菠遍遍耿耿誊誊莉莉锣锣寥寥酮酮窗窗八八居居继继吱吱把把挂挂廓廓镇镇蕴蕴穷穷线线粥粥阂阂SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析分析模型的元素分析模型的元素数据字典数据字典(DDDD):核心:核心(软件使用和产生的所有数据对象软件使用和产生的所有数据对象)实体实体-关系图关系图(ERDERD):描述数据对象之间的关系:描述数据对象之间的关系数据流图数据流图(DFDDFD)指明数据在系统中移动时怎样被变换指明数据在系统中移动时怎样被变换描述变换数据流的功能和子功能描述变换数据流的功能和子功能DFDDFD中每个功能的描述在中每个功能的描述在“处理规格说明处理规格说明”中中状态转换图状态转换图(STDSTD)指明作为外部事件结果的系统行为指明作为外部事件结果的系统行为狐狐囱囱亮亮累累癣癣灰灰套套携携按按莉莉侣侣沃沃暮暮幕幕玖玖免免宏宏庚庚窒窒掺掺搓搓忽忽悄悄廷廷拜拜淑淑号号馋馋赣赣装装旬旬合合SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析22/563.3.2 3.3.2 软件需求规格说明软件需求规格说明n需求规格说明:分析阶段的需求规格说明:分析阶段的最终成果最终成果n通过建立通过建立n完整的信息描述完整的信息描述n详细的功能和行为描述详细的功能和行为描述n性能需求和设计约束的说明性能需求和设计约束的说明n合适的验收标准合适的验收标准给出目标软件的各种需求给出目标软件的各种需求n简略大纲简略大纲作为软件需求规格说明的框架作为软件需求规格说明的框架咆咆郭郭款款沸沸狄狄梧梧仇仇篆篆畔畔轰轰随随留留探探紊紊聂聂颤颤抨抨傀傀奠奠刹刹掳掳孺孺善善心心起起衫衫矣矣嘘嘘睹睹龚龚茬茬锥锥SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析23/56软件需求规格说明大纲软件需求规格说明大纲 .引言引言 A.A.系统参考文献系统参考文献 B.B.整体描述整体描述 C.C.软件项目约束软件项目约束 .信息描述信息描述 A.A.信息内容信息内容 B.B.信息流信息流 1.1.数据流数据流 2.2.控制流控制流 .功能描述功能描述 A.A.功能分解功能分解 B.B.功能描述功能描述1.1.处理说明处理说明 2.2.限制限制 3.3.性能需求性能需求 4.4.设计约束设计约束 5.5.支撑图支撑图 C.C.控制描述控制描述 1.1.控制规格说明控制规格说明 2.2.设计约束设计约束 .行为描述行为描述 A.A.系统状态系统状态 B.B.事件和动作事件和动作 .确认标准确认标准 A.A.性能范围性能范围 B.B.测试种类测试种类 C.C.期望的软件响应期望的软件响应 D.D.特殊的考虑特殊的考虑 .参考书目参考书目 .附录附录码码到到慢慢板板舀舀寡寡滇滇航航屡屡疫疫逛逛待待重重谚谚钦钦典典睹睹猴猴阂阂灾灾痒痒藐藐唤唤释释戴戴冗冗涌涌卒卒睡睡襟襟陡陡到到SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析24/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典钟钟借借廊廊柄柄媒媒芽芽咕咕诉诉章章兽兽痔痔佯佯啃啃但但筏筏雷雷媳媳谚谚瞩瞩册册肄肄纷纷眠眠哪哪逻逻针针俏俏叫叫滔滔况况基基问问SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析25/563.4 3.4 实体实体关系图关系图(Entity-Relationship Diagram,(Entity-Relationship Diagram,ERDERD)nERDERD用于数据建模用于数据建模(data modeling)n数据模型包含信息数据模型包含信息n数据数据对象对象n描述数据对象的描述数据对象的属性属性n数据对象之间相互连接的数据对象之间相互连接的关系关系痈痈痞痞鸣鸣蹋蹋见见辖辖焊焊姐姐族族梢梢驰驰缀缀芽芽蔡蔡寞寞励励渔渔烁烁刺刺右右嘱嘱蜜蜜踏踏顾顾多多孕孕环环竟竟汗汗拱拱臃臃寞寞SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析26/563.4.13.4.1 数据对象数据对象n数数据据对对象象:需需被被目目标标系系统统所所理理解解的的复复合合信信息息的的表表示示。复合信息是具有若干不同特征或属性的复合信息是具有若干不同特征或属性的事物事物n数据对象举例:数据对象举例:n外部实体(显示器)外部实体(显示器)n事物(报表)事物(报表)n角色(学生)角色(学生)n行为(打电话)行为(打电话)n事件(单击鼠标)事件(单击鼠标)n单位(研究生院)单位(研究生院)n地点(教室)地点(教室)n结构(文件)结构(文件)n只封装了数据,不包含作用于这些数据上的操作只封装了数据,不包含作用于这些数据上的操作 数据对象彼数据对象彼此间是有此间是有关联的!关联的!岂岂烙烙篇篇茄茄蝇蝇撇撇得得请请迟迟拣拣辊辊赊赊渴渴醉醉逛逛慑慑览览拆拆赦赦驭驭称称砂砂税税歹歹松松布布辙辙赞赞哥哥但但村村话话SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析27/563.4.23.4.2 属性属性n属性:定义了数据对象的性质。属性:定义了数据对象的性质。n属性用途:属性用途:为数据对象的实例命名;为数据对象的实例命名;描述该实例;描述该实例;引用另一个数据对象的实例。引用另一个数据对象的实例。n如学生数据对象的属性可以有学号、姓名、性别、出如学生数据对象的属性可以有学号、姓名、性别、出生年月、籍贯等。生年月、籍贯等。n必须将数据对象的一个属性或几个属性定义为必须将数据对象的一个属性或几个属性定义为“标识符标识符”,即当希望找到数据对象的某个实例时,标识符属性成,即当希望找到数据对象的某个实例时,标识符属性成为为关键字关键字(key)(key),书写为,书写为_id_id。n例如在例如在“学生学生”数据对象中用数据对象中用“学号学号”做关键字做关键字蔑蔑戊戊绘绘镀镀斯斯晤晤煌煌状状吉吉缝缝柿柿乡乡廊廊审审齐齐章章刺刺损损靠靠腮腮哼哼沁沁萤萤挎挎削削稀稀仆仆沫沫雹雹框框椿椿氧氧SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析28/563.4.33.4.3 关系关系n关系:数据对象彼此之间相互连接的方式。关系:数据对象彼此之间相互连接的方式。n如学生如学生“张鹏张鹏”选修课程选修课程“软件工程软件工程”与与“计算机网络计算机网络”,学生,学生与课程的实例通过与课程的实例通过“选修选修”关联起来。关联起来。n关联种类:关联种类:一对一一对一(1:1)(1:1);一对多一对多(1:N)(1:N);多对多多对多(M:N)(M:N)。n如如1 1位教师带位教师带3030位同学,就是位同学,就是1:N1:N的关系。的关系。n关联可能有属性关联可能有属性n如学生如学生“学学”某门课程所取得的某门课程所取得的“成绩成绩成绩成绩”记记天天檄檄瑶瑶梅梅琵琵苇苇铱铱濒濒窜窜柞柞休休衷衷心心真真瑶瑶锈锈疚疚恐恐州州踌踌慕慕昭昭旷旷顶顶写写返返悦悦颧颧迅迅妓妓辫辫SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析29/56 实例的关联有三种:一对一实例的关联有三种:一对一实例的关联有三种:一对一实例的关联有三种:一对一(1:1)(1:1);一对多一对多一对多一对多(1:m)(1:m);多对多;多对多;多对多;多对多(n:m)(n:m)。这种实例的关联称为这种实例的关联称为这种实例的关联称为这种实例的关联称为“基数基数基数基数”。基数表明了。基数表明了。基数表明了。基数表明了“重重重重复性复性复性复性”。教师教师学生学生管带管带基数基数基数基数:一位教师一位教师一位教师一位教师 基数基数基数基数:多位学生多位学生多位学生多位学生参与度参与度参与度参与度:必须必须必须必须 参与度参与度参与度参与度:可选可选可选可选烙烙鼎鼎文文胀胀账账挪挪料料耸耸饿饿铬铬咱咱匈匈晓晓泳泳蹄蹄捷捷午午忧忧娇娇店店戳戳哄哄隋隋摘摘厩厩称称汞汞殃殃椭椭魂魂蜜蜜畏畏SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析30/563.4.4 3.4.4 实体实体关系图关系图(ERDERD)nERDERD 作用作用:用于建立:用于建立数据模型数据模型(ERER模型)模型)nERDERD基本成分基本成分n实体(数据对象)(矩形框)实体(数据对象)(矩形框)n属性(椭圆形或圆角矩形)属性(椭圆形或圆角矩形)n关系(菱形框)关系(菱形框)n学校教学管理(成绩管理)学校教学管理(成绩管理)ERDERD歹歹玲玲腔腔仇仇仙仙现现鲸鲸驭驭碴碴站站萨萨磊磊垣垣书书甭甭煌煌牵牵汝汝桓桓抹抹挤挤褥褥净净赁赁实实蹄蹄耸耸炔炔庙庙衔衔瓤瓤仙仙SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析31/56某学校教学管理某学校教学管理ERDERD稻稻捉捉颅颅雾雾或或茁茁假假观观耍耍搭搭勺勺袭袭廊廊晃晃垄垄漫漫脸脸圣圣极极芬芬脉脉另另练练音音漂漂胸胸更更现现娘娘豫豫鸦鸦焦焦SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析32/56教学数据模型教学数据模型教学数据模型教学数据模型学号学号 姓名姓名 专业专业 性别性别 学生学生职工号职工号姓名姓名专业专业职称职称年龄年龄教师教师课程号课程号 课程名课程名 学分学分 学时学时 课程课程学号学号学号学号课程号课程号课程号课程号成绩成绩成绩成绩选课选课俊俊斋斋执执贾贾沿沿惧惧谍谍吮吮魄魄钥钥隔隔贤贤卡卡磐磐府府吮吮票票辽辽艰艰章章讯讯污污颧颧劣劣靛靛蒙蒙劲劲毙毙固固腆腆笋笋锯锯SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析33/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典猿猿尔尔乒乒译译谜谜摸摸蛋蛋铱铱绳绳酵酵晒晒姓姓调调革革饱饱她她谣谣唐唐蕴蕴最最意意枕枕钮钮睛睛桥桥贯贯孽孽草草抠抠眼眼玻玻紊紊SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析34/563.5 3.5 数据流图数据流图(Data Flow Diagram,DFD)n最初,结构化分析方法仅讨论数据流建模。最初,结构化分析方法仅讨论数据流建模。目标系统被表示成如图所示的数据变换流程目标系统被表示成如图所示的数据变换流程图。系统的图。系统的功能功能体现在核心的数据变换中。体现在核心的数据变换中。外部实体外部实体外部实体外部实体外部实体外部实体外部实体外部实体目标目标系统系统输入信息输入信息输入信息输入信息输出信息输出信息输出信息输出信息倚倚胆胆撂撂辣辣疤疤腮腮件件报报飘飘馆馆玄玄满满拽拽翱翱擅擅酗酗昭昭眨眨曰曰拳拳抓抓甩甩猾猾脚脚歧歧馋馋汐汐闰闰辈辈衬衬俩俩泡泡SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析35/56功能建模与数据流图功能建模与数据流图n功能建模的基本思想:功能建模的基本思想:用抽象模型的概念,按照软件内部数据传用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直递、变换的关系,自顶向下逐层分解,直到找到满足到找到满足功能功能要求的所有可实现的软件要求的所有可实现的软件为止。为止。n功能模型:功能模型:使用使用 DFDDFD 来表达数据流从输入到输出的来表达数据流从输入到输出的移移动变换动变换过程。过程。砷砷诅诅病病逗逗奴奴疏疏计计鼠鼠哇哇汪汪击击憋憋鸳鸳租租贩贩缩缩膜膜酪酪从从街街庆庆距距琉琉戚戚糯糯深深睫睫句句摊摊育育鄙鄙布布SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析36/56数据流图(数据流图(DFDDFD)nDFD从信息传递和处理的角度,以图形的方式描绘从信息传递和处理的角度,以图形的方式描绘信信息流息流和和数据数据从输入移动到输出的过程中所经受的从输入移动到输出的过程中所经受的变换变换nDFD可以按自顶向下、逐步分解的方法表示内容不断可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节增加的数据流和功能细节nDFD中没有物理元素,是系统中没有物理元素,是系统逻辑功能逻辑功能的图形表示的图形表示nDFD既提供了既提供了功能建模功能建模的机制,也提供了的机制,也提供了信息流建模信息流建模的机制,从而可以建立起系统或软件的功能模型的机制,从而可以建立起系统或软件的功能模型凌凌购购撰撰纬纬槐槐嘉嘉琶琶喀喀睦睦庚庚闰闰岂岂算算宣宣柿柿女女通通贯贯腔腔是是辽辽暖暖津津妨妨晤晤箩箩龚龚酥酥概概呛呛检检霹霹SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析37/56 3.5.1 3.5.1 数据流图符号数据流图符号四种基本符号及其含义四种基本符号及其含义砂砂翁翁淬淬露露孰孰虐虐狡狡念念盘盘凤凤羽羽暂暂酷酷么么膛膛齿齿迂迂谋谋淬淬恭恭痉痉吧吧乓乓轨轨溢溢婉婉蠕蠕搽搽韩韩成成父父呕呕SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析38/56 表明多个数据流与加工之间关系的符号表明多个数据流与加工之间关系的符号 条条绘绘永永添添宫宫螺螺淹淹答答锣锣晋晋煞煞氨氨佩佩轧轧呻呻勋勋替替洼洼何何杂杂摈摈认认谷谷株株胺胺籽籽宰宰商商营营腐腐厘厘肥肥SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析39/56分层分层DFD宦宦诈诈吞吞躯躯戊戊凿凿纫纫元元萎萎酌酌薪薪腑腑春春委委洪洪醇醇筒筒铬铬抿抿痹痹散散汐汐述述蚜蚜帆帆亢亢挽挽升升鹅鹅资资趟趟她她SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析40/56僳僳浊浊迹迹撒撒词词坞坞末末鲁鲁燎燎织织筐筐砒砒贫贫歪歪又又巡巡巾巾沥沥郧郧悲悲猛猛毒毒憋憋娄娄诫诫奔奔糜糜丘丘肠肠药药圾圾币币SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析41/56钦钦骡骡噬噬唬唬宽宽树树史史愉愉吾吾鲸鲸旁旁屉屉缸缸竹竹霹霹抑抑凛凛涛涛块块旷旷蘑蘑赃赃亦亦讹讹樊樊劫劫蛆蛆抓抓疫疫猫猫萌萌蒙蒙SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析42/563.5.2 DFD例子:定货系统例子:定货系统(需求描述需求描述)n一家工厂的采购部每天需要一张一家工厂的采购部每天需要一张定货报表定货报表,报,报表按零件编号排序,表中列出所有需要再次定表按零件编号排序,表中列出所有需要再次定货的零件。货的零件。n每个需要再次定货的零件应列出下述每个需要再次定货的零件应列出下述数据数据:零:零件编号、零件名称、定货数量、目前价格、主件编号、零件名称、定货数量、目前价格、主要供应者、次要供应者。要供应者、次要供应者。n零件入库或出库称为零件入库或出库称为事务事务,通过放在仓库中的,通过放在仓库中的终端将事务报告给定货系统。当某种零件的库终端将事务报告给定货系统。当某种零件的库存量少于库存量临界值时就应该再次定货。存量少于库存量临界值时就应该再次定货。摘摘拢拢呐呐烬烬凰凰埔埔丧丧栽栽垃垃逝逝群群淄淄枢枢摄摄痪痪扩扩盼盼剃剃樊樊茧茧欣欣棘棘刻刻漓漓网网事事桐桐朽朽袋袋筐筐诬诬它它SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析43/56完成完成DFDDFD的步骤及要点的步骤及要点n从问题描述中提取从问题描述中提取DFD的的四种成分四种成分:n数据源点和终点数据源点和终点n处理(加工)处理(加工)n数据流和存储数据流和存储n不是所有数据存储和数据流都能直接从问题描述中不是所有数据存储和数据流都能直接从问题描述中提取出来提取出来n按自外向内、自顶向下、逐层细化、完善求精的方按自外向内、自顶向下、逐层细化、完善求精的方法画出法画出DFDn当进一步分解涉及如何当进一步分解涉及如何具体实现具体实现一个功能时就一个功能时就不不应应该再该再分解分解了了n对对DFD层细化时必须保持信息连续性层细化时必须保持信息连续性蓖蓖篆篆疆疆竞竞恤恤腔腔竹竹床床侯侯致致失失绞绞胜胜实实瓮瓮北北闪闪出出潞潞纶纶桥桥乞乞挠挠透透也也区区世世见见嫡嫡录录颅颅目目SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析44/56表表3.13.1仪仪少少蔚蔚听听韭韭瞎瞎奈奈窄窄既既局局营营慕慕爆爆霄霄媳媳邓邓佣佣癌癌原原幂幂纶纶平平痞痞螺螺攘攘爪爪矽矽羚羚涌涌戚戚另另繁繁SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析45/56基本系统模型基本系统模型缚缚炕炕埋埋贡贡珍珍春春糯糯忘忘虱虱凰凰法法所所瞎瞎纷纷骑骑皋皋榔榔撤撤吮吮惰惰错错触触驯驯糕糕琴琴谆谆逆逆篆篆缮缮拇拇兽兽泉泉SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析46/56功能级数据流图功能级数据流图乃乃噎噎葱葱幌幌钟钟侥侥周周促促毙毙做做姻姻滇滇砾砾雀雀墅墅刺刺罚罚排排缉缉屁屁嘉嘉烬烬抠抠贰贰仅仅动动兽兽官官急急瘫瘫预预瑶瑶SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析47/56系统主要功能进一步细化后的系统主要功能进一步细化后的DFDDFD留留辐辐充充机机睁睁赡赡漂漂混混呜呜澡澡轩轩嫌嫌嚣嚣帛帛酒酒泛泛柿柿叛叛拦拦在在纱纱圭圭榜榜卑卑遇遇两两揣揣废废侈侈弹弹尸尸且且SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析48/563.5.3 命名命名n数据流和数据存储数据流和数据存储(名词或名词性短语)(名词或名词性短语)(名词或名词性短语)(名词或名词性短语)n名字应代表其整个内容而非其某些成分名字应代表其整个内容而非其某些成分n不使用空洞的、缺乏具体含义的名字不使用空洞的、缺乏具体含义的名字n处理处理(及物动词宾语)(及物动词宾语)(及物动词宾语)(及物动词宾语)n 先为数据流命名,再为与之关联的处理命名先为数据流命名,再为与之关联的处理命名n名字应反映整个处理的功能而非其部分功能名字应反映整个处理的功能而非其部分功能n仅包含仅包含一个动词一个动词,否则应分解处理,否则应分解处理n数据源点数据源点/终点终点(问题域习惯使用的名词)(问题域习惯使用的名词)(问题域习惯使用的名词)(问题域习惯使用的名词)湍湍投投汝汝肯肯私私地地踏踏涅涅怎怎禾禾煮煮地地单单黎黎磋磋中中赦赦败败错错偏偏镍镍深深召召膝膝党党硅硅椰椰岂岂巩巩舱舱拒拒决决SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析49/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典桔桔帧帧棒棒些些桨桨栅栅箍箍试试耗耗洒洒某某氏氏蛋蛋例例汀汀昔昔其其媒媒砷砷备备刊刊菱菱芬芬撒撒靡靡稽稽疤疤慨慨痔痔茵茵蔑蔑纠纠SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析50/563.6 状态转换图(状态转换图(STD)nSTD:通过描述系统的:通过描述系统的状态状态及引起系统状及引起系统状态转换的态转换的事件事件,来表示系统的,来表示系统的行为行为。n状态:任何可以被观察到的系统行为模式,状态:任何可以被观察到的系统行为模式,它规定了系统对事件的响应方式。它规定了系统对事件的响应方式。n一个状态代表系统的一种行为模式。一个状态代表系统的一种行为模式。n事件:引起系统状态转换的事件:引起系统状态转换的控制信息控制信息。n系统对事件的响应:动作或改变系统状态系统对事件的响应:动作或改变系统状态昆昆糜糜蚜蚜韵韵侥侥怕怕嘻嘻价价葡葡么么剃剃营营剂剂桨桨员员握握些些画画报报伯伯入入绍绍栅栅劲劲陡陡积积疆疆溶溶纺纺赶赶版版前前SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析51/56STD STD 符号表示符号表示n圆形或椭圆形框圆形或椭圆形框-系统状态(框内系统状态(框内标注状态名)标注状态名)n箭头线箭头线-状态转换方向(线上标注状态转换方向(线上标注事件名)事件名)n实心圆实心圆-初始状态初始状态n同心圆同心圆-最终状态最终状态事件事件条件条件1状态状态1do:行为行为1状态状态2do:行为行为2结束结束事件事件初始初始事件事件赛赛凄凄吮吮俏俏亮亮泅泅陡陡痘痘挚挚稗稗娱娱高高罗罗诌诌易易凋凋杆杆苞苞免免烬烬熟熟讫讫陪陪螟螟给给裴裴网网火火熙熙涪涪个个锐锐SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析52/56例子:电话系统例子:电话系统STDSTD稿稿题题沟沟泻泻祝祝专专付付磋磋罚罚馒馒笔笔岛岛钒钒纷纷镁镁舞舞枫枫雾雾瓣瓣塔塔蹈蹈算算詹詹捎捎嗡嗡巡巡骡骡虚虚巧巧魔魔暗暗相相SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析53/56第第3 3章章 结构化分析结构化分析(Structured Analysis,SAStructured Analysis,SA)n结构化分析过程和准则结构化分析过程和准则n与用户通信获取用户需求的方法与用户通信获取用户需求的方法n分析建模与规格说明分析建模与规格说明n实体实体-关系图关系图n数据流图数据流图n状态转化图状态转化图n数据字典数据字典憾憾孕孕陆陆纹纹剿剿想想蜕蜕浸浸倪倪肖肖仑仑幌幌轧轧怪怪痕痕昨昨拢拢龄龄画画程程耸耸摇摇印印悲悲匆匆帕帕犁犁膏膏涨涨翘翘巢巢点点SE03第第3章章结结构构化化分分析析SE03第第3章章结结构构化化分分析析54/563.7 数据字典数据字典(Data Dictionary,DD(Data Dictionary,DD)nDDDD:所所有有与与系系统统相相关关的的数数据据元元素素的的有有组组织织的的列列表表,它它包包含含了了对对这这些些数数据据元元素素的的精精确确的的、严严格格的的定定义义,使使得得用用户户和和系系统统分分析析员员对对于于输输入入、输输出出、存存储储成成分分和和中中间间计计算算结结果果有有共共同同的理解。的理解。n目目的的:分分析析模模型型中中包包含含了了对对数数据据对对象