尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
系统集成项目管理工程师-结构化设计面向对象设计UML与设计模式
一、软件设计概述掌握需求阶段解决“做什么”软件设计阶段解决“怎么做”。软件设计分为结构化设计与面向对象设计。二、结构化设计SD掌握结构化设计是一种面向数据流的方法以SRS和SA阶段的DFD、数据字典为基础自顶向下、逐层分解、逐步求精和模块化。从管理角度分为概要设计和详细设计两个阶段。阶段主要任务概要设计总体结构设计确定软件系统结构将功能需求进行模块划分确定每个模块的功能、接口和调用关系形成模块结构图系统结构图​详细设计​为每个模块设计实现细节包括输入/输出设计、处理流程设计、数据存储设计、用户界面设计、安全性和可靠性设计等1. 模块结构信息隐藏与抽象采用封装技术将模块实现细节隐藏模块设计成“黑盒”外部只能使用接口说明中的信息。模块化模块具有功能、逻辑和状态3个基本属性。先确定外部特性再确定内部特性。耦合模块间联系程度越低越好耦合类型从低到高描述非直接耦合​两个模块无直接关系完全通过上级模块控制调用数据耦合​借助参数表传递简单数据标记耦合​通过参数表传递记录等复杂信息数据结构控制耦合​传递的信息中包含控制模块内部逻辑的信息通信耦合​一组模块共用一组输入信息或输出需整合公共耦合​多个模块访问同一个公共数据环境内容耦合​一个模块直接访问另一个模块的内部数据或有多个入口等内聚模块内部各成分联系紧密程度越高越好内聚类型从高到低描述功能内聚​完成一个单一功能各部分协同工作顺序内聚​处理元素相关且必须顺序执行通信内聚​所有处理元素集中在一个数据结构的区域上过程内聚​处理元素相关且必须按特定次序执行时间内聚​所包含的任务必须在同一时间间隔内执行逻辑内聚​完成逻辑上相关的一组任务偶然内聚​完成一组没有关系或松散关系的任务 设计原则高内聚、低耦合2. 系统结构图系统结构图SC是软件概要设计阶段的工具反映系统功能实现和模块之间的联系与通信。3. 详细设计工具工具类别具体工具描述图形工具​业务流程图描述管理系统内各单位、人员之间的业务关系和作业顺序程序流程图用方框、菱形、箭头描述程序逻辑最广泛使用NS流程图盒图强制使用结构化构造功能域明确不能任意转移控制PAD图改进的图形描述反映自顶向下的历史过程提供5种基本控制结构表格工具​判定表等列出各种可能的操作和相应条件语言工具​伪码/PDL用高级语言描述过程细节可作为注释直接插在源程序中三、面向对象设计OOD掌握OOD基本思想包括抽象、封装、可扩展性通过继承和多态实现。主要任务是对类和对象进行设计。1. 常用面向对象设计原则7个原则说明单职原则​一个类应有且仅有一个引起它变化的原因开闭原则​对扩展开放对修改封闭李氏替换原则​子类可以替换父类不能改变父类原有功能依赖倒置原则​依赖于抽象不依赖于具体实现针对接口编程接口隔离原则​使用多个专门接口比使用单一总接口好组合重用原则​尽量使用组合而不是继承达到重用迪米特原则最少知识法则​一个对象应尽可能少了解其他对象降低耦合 记忆口诀单开李依接组迪单职、开闭、李氏替换、依赖倒置、接口隔离、组合重用、迪米特2. 类的三种类型类型描述实体类​映射需求中的每个实体保存需要存储在永久存储体中的信息如学员类、课程类控制类​用于控制用例工作的类由动宾结构短语转化而来如身份验证器边界类​封装在用例内、外流动的信息或数据流位于系统与外界的交接处如窗体、报表、打印机接口四、统一建模语言UML掌握UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言不是编程语言。结构包括构造块、规则和公共机制。1. UML中的事物建模元素事物类型说明结构事物​最静态的部分有7种类、接口、协作、用例、活动类、构件、节点行为事物​动态部分包括交互内部活动和状态机分组事物​唯一的包是一种将有组织的元素分组的机制只存在于开发阶段注释事物​UML模型的解释部分2. UML中的关系4种关系说明依赖​一个事物变化影响另一个事物关联​一种对象和另一种对象有联系泛化​一般元素和特殊元素之间的分类关系实现​一个类指定了由另一个类保证执行的契约3. UML 2.0 的14种图UML 14种图分类图序号图说明1类图​描述一组类、接口、协作及它们之间的关系给出系统静态设计视图2对象图​描述一组对象及它们之间的关系3构件图​描述一个封装的类和它的接口、端口及内部结构4组合结构图​描述结构化类的内部结构及交互点5用例图​描述一组用例、参与者及它们之间的关系6顺序图序列图​强调消息的时间次序的交互图7通信图​强调收发消息的对象或参与者的结构组织8定时图计时图​强调消息跨越不同对象或参与者的实际时间9状态图​描述状态机由状态、转移、事件和活动组成10活动图​展示计算内部一步步的控制流和数据流11部署图​描述运行时处理节点及构件配置12制品图​描述计算机中一个系统的物理结构13包图​描述模型本身分解而成的组织单元及依赖关系14交互概览图​活动图和顺序图的混合物4. UML视图视图说明逻辑视图设计视图​表示设计模型中架构方面重要的部分进程视图​可执行线程与进程作为活动类的建模描述并发与同步结构实现视图​对组成系统的物理代码的文件和构件进行建模部署视图​把构件部署到物理节点上表示软件到硬件的映射用例视图​最基本的需求分析模型五、设计模式掌握设计模式是前人经验的总结使人们可以方便地复用成功的软件设计。根据处理范围类模式和对象模式。根据目的和用途3种类型描述创建型模式​主要用于创建对象结构型模式​主要用于处理类或对象的组合行为型模式​主要用于描述类或对象的交互以及职责的分配六、本章真题小测Q1模块的耦合类型中耦合度最低的是。A. 数据耦合 B. 非直接耦合 C. 标记耦合 D. 控制耦合Q2UML中强调消息的时间次序的交互图是。A. 通信图 B. 顺序图 C. 定时图 D. 活动图Q3面向对象设计原则中“一个类应该有且仅有一个引起它变化的原因”指的是。A. 开闭原则 B. 单职原则 C. 李氏替换原则 D. 迪米特原则 答案Q1答案B解析耦合度从低到高非直接耦合 数据耦合标记耦合控制耦合。非直接耦合模块之间没有直接联系完全通过主程序调度耦合度最低。Q2答案B解析顺序图重点强调消息发送的时间次序、先后顺序通信图侧重对象之间连接关系不突出时间顺序定时图侧重时间约束、时间间隔活动图侧重流程、活动流转。Q3答案B解析单一职责原则单职原则一个类应该有且仅有一个引起它变化的原因。开闭原则对扩展开放对修改关闭李氏替换原则子类可以替换父类迪米特原则最少知道原则尽量减少对象之间交互✅汇总答案Q1BQ2BQ3B
RELATED

相关推荐

Typora字体定制全攻略:从区域化配置到跨平台优化

Typora字体定制全攻略:从区域化配置到跨平台优化

1. 项目概述:为什么我们需要定制Typora的字体?作为一名长期与文字打交道的创作者,我几乎每天都要在Typora里泡上好几个小时。从最初的惊艳于它的即时渲染,到后来逐渐发现默认的字体配置在某些场景下会让我感到视觉疲劳&#xff0c…

📅 2026/9/1 16:01:04
解读 IEC 61019-2-2005:声表面波谐振器使用指南核心要点解析

解读 IEC 61019-2-2005:声表面波谐振器使用指南核心要点解析

在射频通信、传感检测、频率控制等领域,声表面波(SAW)谐振器凭借其高稳定性、低损耗、小体积的优势,成为关键核心器件。而 IEC 61019-2-2005作为声表面波谐振器的使用指南,为器件的选型、设计、应用及测试提供了标准化…

📅 2026/9/11 3:09:32
2.5 HDLBits —— verilog 语言之更多Verilog特性

2.5 HDLBits —— verilog 语言之更多Verilog特性

三元运算符 语法:(条件表达式) ? 条件成立执行的表达式1 : 条件不成立时执行的表达式2 它可以在一行代码里根据条件二选一(本质就是二选一多路选择器 mux),不用在组合逻辑 always 块里写 if-else括号加上提升可读性示…

📅 2026/9/1 19:12:26
MORE NEWS

更多资讯

📰

2026游戏客服成本高、响应慢、出海合规难?这套一体化方案被多家头部公司验证过了

引言做游戏运营的人,对下面这些场景一定不陌生:玩家半夜充值不到账,客服没人响应,第二天差评已经刷屏;出海游戏玩家用LINE咨询,客服团队却只会用微信后台;每月客服人力成本几十万,但…

📰

Kali Linux渗透测试环境搭建:新手必学工具与基础配置详解

一、引言:装好 Kali ≠ 能干活 几乎所有网安新手的第一个动作都是"装个 Kali"。但真实情况往往是:虚拟机装完了,apt upgrade 一跑,桌面崩了;工具装了一堆,扫描时却连靶机都 ping 不通&#xff1b…

📰

linux-command 项目实战:grub2-set-default 命令详解——设置 GRUB 默认启动内核的完整指南

文档教程 【免费下载链接】linux-command Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux 项目地址: https://gitcode.com/GitHub_Trending/linux/linux-command 点击查看 免费下载 导读 grub2-set-default 是…

📰

en.javascript.info 逻辑运算符实战:深入解析 `alert( alert(1) alert(2) )` 的输出与短路求值

文档/教程前端 【免费下载链接】en.javascript.info Modern JavaScript Tutorial 项目地址: https://gitcode.com/gh_mirrors/en/en.javascript.info 点击查看 免费下载 导读 本篇文章基于 en.javascript.info(Modern JavaScript Tutorial&#xff09…

📰

Grok 4.7 API升级详解:稳定性优化与开发者适配指南

1. Grok 4.7 不是“新模型”,而是API层的一次精准外科手术 Grok 4.7 这个名字一出来,很多开发者第一反应是:“又出新大模型了?”——其实不是。它既不是参数量翻倍的下一代,也不是架构重构的全新版本,而是…

📰

Agent 开发实战:用 Laya 和 Jev 构建判断器,让智能体从能跑到靠谱

1. 从“能跑”到“靠谱”:为什么你的 Agent 需要一个判断器做 Agent 开发的朋友大概率都经历过这个阶段:Demo 跑通了,工具调用也接上了,看着模型一步步执行任务,感觉一切都很美好。但一旦把它放到真实场景里&#xff0…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬