版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程导论软件设计:从原则到架构的系统方法软件工程导论专题课件日期2026年课程导览01软件设计概述界定地位任务,梳理演进脉络02设计原则与范式建立模块化与抽象准则03体系结构设计掌握架构风格与视图表达04详细设计与模式深入过程数据与经典模式05设计质量与评估建立度量与评审机制06工程实践与趋势面向现代范式的设计演进CHAPTER01软件设计概述设计是需求到实现的桥梁从问题域走向解空间的关键一跃设计是需求与实现的桥梁设计是软件工程中决定质量与成本的关键环节设计的三重定位3项需求分析回答做什么,软件设计回答怎么做的问题设计承接承接需求规格说明,向编码与测试交付可实现的蓝图早期缺陷设计缺陷越到下游,修正代价越高软件设计的目标与任务把需求转化为可实现的、高质量的软件表示软件设计围绕四项核心任务展开,共同支撑从需求到可行方案的转化。“四项任务由整体到局部,层层细化,共同构成完整的设计方案。”体系结构设计确定软件的整体组织结构数据设计定义数据结构及其相互关系接口设计定义模块之间及与外部系统的交互方式过程设计描述模块内部的处理逻辑与算法设计过程与主要阶段设计输入2项需求模型需求规格说明设计活动5项抽象细化模块划分接口定义方案权衡设计输出3项体系结构文档接口说明模块详细设计设计方法的演进脉络方法核心思想典型产物结构化设计功能分解与数据流映射结构图、模块图方法核心思想典型产物面向对象设计对象封装与复用类图、交互图面向数据结构设计依据数据层次与结构Jackson图、Warnier图设计方法随编程范式与工程复杂度不断演进:由功能分解走向对象封装CHAPTER02设计原则与范式好的设计源于好的原则抽象、模块化与信息隐藏的工程智慧模块化与抽象模块划分过粗则难以维护,过细则接口成本上升,需要权衡粒度。分而治之是控制复杂性的根本手段模块化分而治之把系统分解为可独立命名、可组装、可替换的单元降低求解复杂度,使问题分而治之抽象聚焦本质抽取本质特征、忽略次要细节,聚焦问题核心分为过程抽象与数据抽象,层次分明、自顶向下细化信息隐藏与模块独立性模块内部实现细节对使用者不可见信息隐藏把可能变化的细节封装在模块内部,降低影响范围;模块独立性由内聚与耦合共同度量。独立性的高低,直接决定软件后续的可修改性与可测试性。高内聚模块内元素围绕同一职责紧密协作低耦合模块间的依赖尽可能少而弱三大设计范式概览结构化范式自顶向下、逐步求精,以功能分解为主线。面向对象范式以对象和类为核心,具备封装、继承、多态三大特性数据与操作绑定,更贴近问题域的自然结构面向数据结构范式以数据的层次与结构作为设计依据。范式之间并非互相排斥,实际项目中常按需混合使用。CHAPTER03体系结构设计架构决定系统的骨架风格选择与视图表达塑造系统全局软件体系结构的内涵体系结构描述系统的构件、构件间关系及其约束体系结构是系统的骨架,是最早做出、也最难更改的一类设计决策软件内部设计2项算法与数据结构为每个模块确定具体实现方案内部处理与边界定义处理步骤、局部数据与边界条件模块间联系2项模块调用与参数明确调用关系与参数传递方式表达手段图形、表格与设计语言三类常见体系结构风格(一)每种风格都有其适用场景与代价,选择时需结合具体约束判断。分层风格按抽象层次组织各层仅依赖相邻下层客户机服务器风格分离服务请求者与服务提供者管道过滤器风格数据流经一系列过滤器被逐步变换仓库风格以共享数据中心协调各构件的读写常见体系结构风格(二)选择风格需在性能、可修改性与开发复杂度之间权衡事事件驱动风格构件通过事件的发布与订阅进行通信耦合度低微微内核风格核心功能与外延功能分离按需扩展MMVC风格模型、视图、控制器职责分离交互式系统架构视图与4+1视图模型单一视图无法刻画架构全貌,需多视图协同表达视图关注点主要受众逻辑视图功能与对象模型最终用户进程视图并发与同步系统集成人员开发视图模块组织与复用程序员物理视图硬件部署与分布系统运维人员场景视图用例串联验证全体相关方CHAPTER04详细设计与模式细节之处见真章过程、数据与模式共同支撑可实现的蓝图详细设计的任务把体系结构细化到可以直接编码的程度详细设计将体系结构落到可直接编码的实现方案算法与数据结构实现方案为每个模块确定具体实现方案,把抽象设计落到可执行的代码路径。内部处理与边界处理细则定义处理步骤、局部数据与边界条件,明确各模块内部的运行边界。模块调用与参数接口约定明确调用关系与参数传递方式,保证模块间协作顺畅。表达手段呈现方式采用图形、表格与设计语言三类手段呈现设计结果。结构化设计表达工具工具本身无优劣之分,关键是完整、准确地表达设计意图。程序流程图以图形符号直观描述处理流程N-S图(盒图)结构化程度高,不允许随意跳转PAD图问题分析图,层次清晰,便于阅读与转换判定表与判定树清晰表达多条件组合的逻辑判断面向对象的详细设计对象设计不只是画出类图,更要回答每条消息由谁响应、如何处理;职责分配质量决定对象设计的优劣识别类与对象明确职责与边界为每个类分配明确的职责属性与操作设计类成员设计属性、操作及可见性类间关系确定关系类型确定继承、组合、依赖与关联职责分配原则遵循设计原则遵循单一职责与高内聚低耦合数据设计的基本要点数据结构一旦确定,往往比算法更难更改,需谨慎决策。映射与关注数据设计把需求阶段的数据模型映射为可实现结构关注数据抽象、数据结构选择与数据完备性规范与影响数据库设计遵循规范化要求,减少冗余与操作异常数据结构的选择直接影响程序效率与后期维护成本设计模式的分类与应用设计模式是成熟经验的复用,需结合场景判断适用性设计模式依据目的与作用对象划分为三大类别创建型模式关注对象的创建机制代表模式:工厂单例结构型模式关注类与对象的组合方式代表模式:适配器装饰器行为型模式关注对象间的职责分配与交互代表模式:观察者策略CHAPTER05设计质量与评估可度量的设计才可改进内聚耦合与评审机制保障设计品质耦合:模块间连接的度量耦合衡量模块之间依赖关系的强弱应尽量避免内容耦合模块间直接访问内部,最强依赖公共耦合共享全局数据区,高耦合风险理想目标数据耦合仅传递必要数据,最理想耦合形式耦合越弱,模块越易替换与测试内容依赖最强公共共享全局外部外部协议控制控制参数标记数据结构数据仅传数据非直接依赖最弱内聚:模块内元素的度量内聚衡量模块内部各元素结合的紧密程度内聚强度偶然逻辑时间过程通信顺序功能弱由弱到强偶然内聚逻辑内聚时间内聚过程内聚通信内聚顺序内聚功能内聚强理想形式各元素无实质关联功能相关但松散因同一时间执行而聚合按处理流程先后排列因使用同一数据而聚合前一步输出作为后一步输入模块只完成一项明确功能偶然内聚与逻辑内聚应尽量避免理想方向是高内聚低耦合设计评审与设计度量评审与度量结合,形成发现问题到持续改进的闭环设计评审通过同行审查在早期发现设计缺陷,成本更低检查重点:需求覆盖程度检查重点:接口一致性检查重点:模块独立性设计度量以结构复杂度、耦合程度等指标量化评估设计结构复杂度耦合程度CHAPTER06工程实践与趋势设计思维随工程范式演进在敏捷与云原生时代重新理解设计设计在敏捷开发中的实践设计从一次性完成转向持续演进01演进式设计敏捷强调演进式设计,而非一次性完成全部设计02重构控债通过重构持续改善既有结构,控制技术债务03简单设计通过测试、表达意图、消除重复04文档轻量化设计文档趋向轻量化,代码与测试成为重要载体现代架构实践趋势架构演进的核心方向:可独立部署与快速迭代微服务架构业务能力拆分按业务能力拆分,服务可独立部署与交付。领域驱动设计业务领域模型以业务领域模型驱动架构边界划分。云原生架构弹性与可观测面向弹性伸缩、可观测与自动化运维。给软件工程学习者的建议掌握设计原则,比记住具体工具更重要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年秋招:海南金林投资集团面试题及答案
- DB32/T 5092-2025低压分布式光伏接入电网数据采集要求
- 医疗保险与支付体系创新
- 船舶教育模拟试题及参考答案要点
- 2025-2026学年美丽高中教学楼设计
- 药膳试题C与对应答案呈现
- 中枢神经系统感染医学知识培训专家讲座
- 美发培训综合试题及答案集锦
- 医院清洁消毒灭菌
- 2026年海岸警察考试模拟题目及答案详解
- 2026-2027学年第一学期儿童秋冬季传染病防控课件
- 危险货物运输车辆安全作业活动风险分析培训
- 2026年下半年咸阳市事业单位招聘硕士研究生(53人)笔试备考题库及答案详解
- 文言文二则之《曹冲称象》教案(2课时)-2026-2027学年统编版六年级语文上册
- 2026南开大学校友工作办公室招聘劳务派遣人员1人考前冲刺试卷附参考答案详解【达标题】
- 初高中语文衔接第一课
- GB/T 10858-2023铝及铝合金焊丝
- 德育为先 立德树人
- 校服采购投标方案
- 医院海姆立克急救操作考核评分标准
- 宝马工程师及系列软件一些地址
评论
0/150
提交评论