还剩58页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
结构分析与设计总复习欢迎来到结构分析与设计总复习课程!本课程将帮助您全面掌握结构化分析与设计方法,并深入了解面向对象分析与设计,为您的系统开发能力奠定坚实基础我们将从系统分析基础开始,逐步深入到数据库设计、系统设计、实现与维护,最后通过案例分析加深理解课程概述及学习目标课程目标学习目标本课程旨在帮助学生掌握结构化分析与设计方法,并理解面通过本课程学习,您将能够向对象分析与设计的基本原理,具备独立分析和设计信息系理解信息系统概述及类型•统的能力掌握系统开发生命周期及各阶段主要内容•熟练运用结构化分析方法进行系统分析和设计•掌握面向对象分析与设计方法,并能运用进行建模•UML了解数据库设计的基本步骤及范式•考试重点内容分布2结构化分析方法系统分析基础125%20%面向对象分析330%系统设计与实现5数据库设计10%15%4第一部分系统分析基础信息系统概述1系统开发生命周期2需求分析3数据流程图4数据字典5信息系统概述定义作用信息系统是指由人、计算机硬帮助组织高效地收集、处理和件、软件、网络和数据等组成利用信息,提高工作效率,降的,用于收集、处理、存储、低成本,改善决策质量传播和利用信息的系统特点信息系统具有信息处理、信息存储、信息传输和信息共享等功能信息系统的类型事务处理系统管理信息系统决策支持系统专家系统TPS MISDSS ES用于处理日常业务,例如用于为管理人员提供决策帮助管理人员解决非结构模拟专家知识,提供专业销售、库存、财务等支持,例如销售分析、财化问题,例如市场调研、意见,例如医学诊断、故务报表等投资决策等障诊断等信息系统的组成部分硬件1计算机、服务器、存储设备、网络设备等软件2操作系统、数据库系统、应用软件等数据3原始数据、加工数据、分析数据等人员4系统分析员、程序员、数据库管理员等系统开发生命周期可行性研究1评估项目的可行性需求分析2确定系统需求系统设计3设计系统架构系统实现4开发系统代码系统测试5验证系统功能系统运行与维护6维护系统稳定运行可行性研究的主要内容1经济可行性评估项目的成本与收益2技术可行性评估项目的技术难度3操作可行性评估项目的管理和使用难度4法律可行性评估项目的法律风险需求分析的重要性需求分析是系统开发生命周期的重要错误的需求分析会导致系统无法满足因此,需求分析必须进行充分的调研阶段,它直接影响着系统的质量、效用户需求,甚至造成严重的后果和沟通,确保收集到准确、完整和一率和可维护性致的需求数据流程图()基础DFD数据流程图是由数据流、处理可以帮助我们理DFD DFDDFD一种图形化工具,用过程、数据存储和外解系统的功能和数据于描述数据在系统中部实体组成,它们之流,为系统设计提供的流动和处理过程间通过箭头和符号连基础接符号系统详解DFD数据流表示数据在系统中的流动方向处理过程表示对数据的加工处理数据存储表示数据的存储位置外部实体表示系统外部的组织或个人绘制规则DFD1每个数据流应该有一个唯一的名称2数据存储的名称应与数据字典中的名称一致3每个处理过程应该有一个唯一的编号4DFD应该从高层到低层逐步细化,每个子图应该对应一个父图的处理过程数据字典的作用记录数据辅助分析提高质量数据字典记录了系统中所有数据元素数据字典为系统分析和设计提供基础数据字典有助于保证数据的准确性和的定义和属性,例如名称、类型、长数据,方便理解和验证数据流一致性,提高系统开发的质量度、取值范围等数据字典的组成数据流定义描述数据流的名称、来源、去向、内容等数据元素定义描述数据元素的名称、类型、长度、取值范围等数据存储定义描述数据存储的名称、组织形式、内容等处理过程定义描述处理过程的名称、功能、输入输出数据等第二部分结构化分析方法结构图2描述系统模块的层次结构数据流图DFD1描述数据流和处理过程数据字典记录数据元素的定义和属性3结构化分析的基本概念12自顶向下逐步求精从系统总体目标开始,逐步细化到将复杂问题分解为若干子问题,逐具体功能步解决3模块化将系统分解为若干独立的模块,便于开发和维护结构图的类型层次图调用图描述系统模块的层次结构,每描述模块之间的调用关系,显个模块代表一个功能示模块之间的依赖关系数据流图描述数据在模块之间的流动,显示数据的处理过程结构化设计原则1模块化设计将系统分解为若干独立的模块2抽象设计隐藏模块内部实现细节,只暴露接口3信息隐藏将模块之间的耦合度降到最低4局部化将相关的模块放到一起模块化设计方法功能分解1将系统功能分解为若干模块模块划分2根据功能和数据结构划分模块模块设计3设计每个模块的内部结构和接口模块组装4将模块组装成完整的系统高内聚与低耦合高内聚低耦合模块内部的功能相关性强,模块的独立性强模块之间的依赖关系弱,模块的独立性强第三部分面向对象分析概述UML统一建模语言作用UML是一种标准化的图形化建模语可以帮助开发人员更好UML言,用于可视化、规范、构建地理解和沟通系统设计,提高和文档化面向对象软件系统的开发效率和代码质量过程组成包含多种图,例如用例图、类图、序列图、活动图、状态图等UML用例图详解参与者与系用例系关系参Actor UseCase Relation统交互的用户或外部统提供的功能或服务与者与用例之间的交系统互关系用例图实例分析用户1浏览商品添加购物车2下单支付查看订单类图基础1类Class描述系统中的2属性Attribute类的特征一类事物,具有相同的属性,描述对象的性质和方法3方法Method类的行为,描述对象的功能类之间的关系关联Association表示类之间的一种联系,例如学生和课程之间依赖Dependency表示一个类依赖于另一个类,例如订单和商品之间泛化Generalization表示类之间的继承关系,例如动物和猫之间实现Realization表示一个类实现另一个类的接口,例如接口和实现类之间聚合Aggregation表示一个类包含另一个类,例如汽车和引擎之间组合Composition表示一个类拥有另一个类,例如公司和部门之间类图示例解析类图解析该类图描述了学生、课程和成绩之间的关系学生与课程之间存在关联关系,学生可以选修多门课程,课程可以被多个学生选修成绩依赖于学生和课程,记录每个学生的课程成绩序列图概念定义作用组成序列图是用来描述对象之间交互的序列图可以帮助开发人员理解系统序列图由参与者、对象、生命线、时间顺序图,展示对象之间的消息中对象之间的交互逻辑,设计合理消息等组成传递流程的交互流程序列图绘制方法确定参与者1确定参与交互的对象或系统绘制对象生命线2为每个参与者创建生命线,表示对象存在的时间段添加消息3使用箭头表示对象之间传递的消息,并标注消息名称和参数绘制激活状态4使用矩形表示对象处于激活状态的时间段活动图特点1活动图是用来描述系统中活动执2活动图可以用来描述工作流程、3活动图由活动、状态、转换、分行顺序的图,展示活动之间的流业务流程、算法等,帮助开发人支、合并等组成程和分支员理解系统的动态行为状态图应用定义作用组成状态图是用来描述对象状态和状态之状态图可以用来描述系统中对象的行状态图由状态、转换、事件、动作等间转换的图,展示对象的生命周期和为模式,设计合理的交互流程组成行为第四部分数据库设计数据库设计步骤需求分析确定数据库要存储哪些数据概念设计用模型描述数据之间的关系ER逻辑设计将模型转换为关系模型ER物理设计确定数据库的存储结构和访问方法模型基础ER实体属性关系Entity AttributeRelationship表示现实世界中可以区别于其他事表示实体的特征,例如学生的姓名表示实体之间的联系,例如学生和物的对象,例如学生、课程、学号、专业课程之间的选修关系图实体关系ER一对一一个实体对一对多一个实体对多对多多个实体对应另一个实体应多个实体应多个实体关系数据库设计1关系数据库Relational2关系模型Relational将数据组织成描述关系数据库的Database Model表格形式,每个表格代表一结构和操作方法个关系3关系代数Relational Algebra提供操作关系的运算符,例如选择、投影、连接等第一范式()1NF定义示例每个属性都是不可分解的原子值,即属性的值不能再细分学生信息表学号、姓名、专业每个属性都是不可分解的原子值第二范式()2NF定义示例满足,并且每个非键属性都完全依赖于候选键订单表订单号、商品、商品名称、价格、数量商品名1NF ID称、价格依赖于商品,而订单号是候选键ID第三范式()3NF定义示例满足,并且每个非键属性都不依赖于其他非键属性学生信息表学号、姓名、专业、班级、老师姓名老师姓2NF名依赖于班级,而班级依赖于学号,学号是候选键范式BC定义满足,并且所有非键属性都直接依赖于候选键3NF特点范式是最严格的范式,能够有效地消除数据冗余,提高数据一致BC性第五部分系统设计系统架构设计技术选型详细设计选择合适的编程语言、数据库系统、开总体设计设计每个模块的内部结构和接口,例如发工具等确定系统的整体架构,例如客户端-服务数据库设计、界面设计、数据处理设计器架构、三层架构等等人机界面设计原则1一致性界面风格和操作方式保2简洁性界面简洁明了,易于理3易用性界面操作简单,用户易持一致解和使用于掌握4反馈性系统及时反馈用户操作结果5容错性系统能够处理用户错误操作输入设计要点数据完整性数据安全性易用性确保输入数据的完整性和准确性,例确保输入数据的安全性,例如数据加设计方便用户输入数据的界面,例如如数据校验、数据转换等密、访问控制等下拉菜单、自动补全等输出设计要点1信息清晰输出信息要清晰2格式规范输出格式要规范易懂,便于用户理解美观,例如图表、报表等3内容完整输出信息要完整,包含用户所需的所有内容处理过程设计算法设计设计数据数据结构设计选择错误处理设计异常处理的逻辑,例如排合适的数据结构,例处理机制,例如错误序、查找、统计等如数组、链表、树等提示、日志记录等系统安全设计安全审计数据加密记录用户的操作行为,便于访问控制对敏感数据进行加密,例如追溯和分析身份验证限制用户的访问权限,例如用户密码、交易信息等验证用户的身份,例如用户数据权限、操作权限等名、密码等数据库实现要点数据库选择数据表设计数据存储优化数据备份与恢复根据系统需求选择合适的设计数据表结构,例如字优化数据存储方式,例如定期备份数据库,并制定数据库系统,例如段名称、数据类型、主键索引、分区等数据恢复方案MySQL、、等、外键等Oracle SQLServer第六部分系统实现与维护编码规范1命名规范统一的变量名、2代码风格统一的代码格式函数名、类名等命名规则、缩进、注释等风格3代码安全避免常见的安全漏洞,例如SQL注入、跨站脚本等测试策略单元测试测试每个模块的内部逻辑和功能集成测试测试模块之间的交互和集成系统测试测试整个系统的功能和性能验收测试测试系统是否满足用户需求单元测试方法白盒测试1根据代码逻辑进行测试,覆盖所有代码分支黑盒测试2根据功能需求进行测试,不考虑代码逻辑灰盒测试3结合白盒测试和黑盒测试,同时考虑代码逻辑和功能需求集成测试技术增量集成自顶向下集成自底向上集成逐个将模块集成到系统中,并进行测从主模块开始,逐步集成下级模块从底层模块开始,逐步集成上级模块试系统测试要点1功能测试测试系统是否满足所2性能测试测试系统的性能指标3安全测试测试系统的安全措施有功能需求,例如响应时间、吞吐量等,例如身份验证、访问控制等4兼容性测试测试系统在不同环境下的兼容性5可靠性测试测试系统的稳定性和可靠性,例如错误率、崩溃率等验收测试流程制定计划制定验收测试计划,包括测试目标、测试范围、测试用例等执行测试根据计划执行测试,并记录测试结果评估结果评估测试结果,判断系统是否满足用户需求编写报告编写验收测试报告,总结测试结果和结论系统维护类型纠错性维护修复系统中的错误和缺陷适应性维护修改系统以适应环境变化,例如操作系统升级、数据库迁移等完善性维护改进系统功能,例如增加新功能、优化性能等预防性维护预防系统出现错误,例如定期备份数据、更新安全补丁等文档管理要求1文档齐全包括需求文档、设计文档、编码文档、测试文档、用户手册等2内容准确文档内容准确可靠,与实际情况相符3格式规范文档格式规范,便于阅读和理解4版本控制对文档进行版本控制,确保使用最新版本第七部分案例分析案例分析是学习结构分析与设计方法的有效方式,通过分析实际案例可以加深理解案例分析可以帮助我们掌握分析和设计系统的流程,并学习如何应用不同的方法和工具我们将通过几个案例分析,帮助您更好地理解结构分析与设计方法案例一学生信息系统需求分析1概念设计2逻辑设计3物理设计4系统实现与维护5。
个人认证
优秀文档
获得点赞 0