cht
cht
发布于 2026-06-06 / 38 阅读
0
0

软件工程

画图题

用例图

  • 用例图主要包含“涉及的角色、角色对应的行为、第三方参与部分”。 review.txt (line 310) 里说:用例本质上是在描述“最终用户如何与系统交互”。 review.txt (line 1055) 里说:用例视图是“从用户角度看到的系统外部功能”,而且是其它视图的基础。 所以你画用例图时,核心不是“系统内部怎么实现”,而是“谁,在系统外面,想让系统帮他完成什么事”。

    • 例题

CRC

  • 一张 CRC 卡片通常直接画成一个矩形: 顶部:Class Name , 中间先写一行 Description , 左下:Responsibilities , 右下:Collaborators

    • 2020 真题明确要你写 applier 和 patent 两张 CRC 卡,所以就从题面直接抽。

泳道图

类图

  1. 画出 最重要的类

  2. 每个类写出 类名 / 属性 / 方法

  3. 再补 类间关系

    • 一对一:1 —— 1

      一对多:1 —— *

      零或一:0..1

      至少一个:1..*

      多对多:* —— *

状态图

  1. 先确定“画谁的状态图”。题目如果写了 for the patent class / QR code class / document,就只画这个对象,不画整个系统。

  2. 从题干里找“稳定状态”。状态一般写成名词或形容词,不写动作。例如对 patent,状态更像 Draft、Submitted、Under Review、Approved、Rejected,而不是 submit、review、approve。

  3. 再找“事件”写在箭头上。事件通常来自题目里的动词或条件。比如:submit application、format check passed、format rejected、reviewers request revision、approve、reject。

  4. 开始和结束。你们课件对活动图明确写了开始/结束状态;状态图考试里也建议画 初始点 和一个或多个 终止点,这样更完整。

  5. 只画“外部可观察”的关键状态。不要把每个小动作都变成状态。例如 填写标题、上传附件 一般不是状态,而是导致对象进入 Submitted 的过程

  • 圆角矩形:状态 ; 箭头:状态转移 ; 箭头标签:事件/条件 ; 黑实心圆:开始 ; 同心圆或终止节点:结束 ; 如果时间紧,状态里只写 状态名 就够,状态变量/活动 可以省略

时序图

  • 它属于 行为建模,和 状态图 一样都在描述动态行为,但区别是:

    • 状态图:看一个对象自己的生命周期怎么变

    • 时序图:看多个对象之间怎么传消息、怎么配合完成一个用例

  • 组成:对象,生命线,消息,控制焦点,控制结构

    • 对象:对于参与者,使用小人标记

    • 生命线:虚线

    • 消息类型:同步消息( -> 等待返回),异步消息( --> 不等待返回 ),返回消息( <-- )

    • 控制焦点:表示当前对象的活动状态

  1. 先选一个具体场景 ; 时序图通常不是画整个系统,而是画一个 use case 或一段 normal scenario 所以最稳的思路是:先有用例/脚本,再把脚本改写成时序图

  2. 找参与交互的对象 ; 从题面里先找“谁在互相发消息”。常见分三类:actor:用户、管理员、PE、Reviewer ; boundary/UI:页面、表单、界面对象 ; control/service:控制类、业务处理类 ; entity:核心业务对象,如 Patent、Order、QR Code

  3. 横向排对象,纵向看时间 ; 标准布局:最左边放 actor , 中间放 boundary / control , 右边放 entity / database 之类后端对象 , 时间从 上往下

  4. 把脚本改成“消息” : 把文字场景里的动作改写成对象间调用,比如:

  5. 画生命线和控制焦点 ; 你们课件明确点了这两个元素,所以别省:每个对象下面一条 虚线生命线 ; 正在执行时用一个细长矩形表示 控制焦点

  • 比如“申请人提交专利申请”的时序图,可以写成这样

数据流图

  • 最重要的 4 个元素

    • 外部实体系统外的人或对象,表示数据的来源/去向。2020 这题老师提示里直接写了:外部实体,方框:申请人,评论家,PE,见 2020画图真题.pdf。

    • 处理过程:把输入数据变成输出数据的功能,通常画成泡泡/圆角过程框。

    • 数据流带名字的箭头,表示“流动的数据”,不是操作步骤。

    • 数据存储:系统内部要保存的数据,比如申请库、评审库、主题目录。

  1. 先找 外部实体谁在系统外和系统交换信息,谁就是外部实体。典型是:用户、管理员、PE、Reviewer、外部系统。

  2. 再找 主处理过程。从题目动作里抽 3 到 5 个大处理 最稳。例如不要把“输入标题”“输入作者”拆成单独处理,它们通常都属于“提交申请”。

  3. 再补 数据存储。只有会被系统保存、后续还会再用的数据才值得画成存储。例如:Patent DB、Review DB、Task DB、Topic Catalog。

  4. 最后连 数据流。箭头上写的是 申请信息、评审意见、审批结果、通知信息 这种“数据名”,不要写成“审批”“检查”这种动作名。

软件架构图

UI / View Layer
--------------------------------
ApplierUI   PEUI   ReviewerUI

Controller Layer
--------------------------------
ApplierController   PEController   ReviewerController

Service Layer
--------------------------------
PatentService   ReviewService   InviteService
DecisionService   TaskService   CommentService

DAO Layer
--------------------------------
PatentMapper   ReviewMapper   InviteMapper
DecisionMapper   TaskMapper   CommentMapper

Model Layer
--------------------------------
PatentEntity   ReviewEntity   InviteEntity
DecisionEntity   TaskEntity   CommentEntity

Database
--------------------------------
PAPS Database
  • 题目里的角色界面塞进 View 把题目里的业务入口塞进 Controller 把主要业务功能塞进 Service 把数据访问对象塞进 DAO 把核心业务对象塞进 Model 最底下接 Database

十大 testing strategy

PRINCUSICC 可以对应成

  • P = Performance testing

  • R = Regression testing , 回归测试 , 修改或更新后,检查旧功能有没有被破坏。

  • I = Interface testing 接口测试 验证模块之间、前后端之间、API 和 UI 之间能否正常通信。

  • N = Navigation testing 验证页面跳转、菜单、链接、用户操作路径是否正确。

  • C = Content testing 验证系统里的文本、数据、内容是否完整、一致、无明显错误

  • U = Unit testing 验证每个函数、方法或模块本身是否正确

  • S = Security testing 验证系统是否能抵御非法访问、攻击和数据泄露。

  • I = Integration testing 集成测试 :验证多个模块组合后能否协同工作。

  • C = Configuration testing 验证系统在不同硬件、操作系统、浏览器、网络环境下是否正常。

  • C = Certification testing 验证系统是否符合相关规范、标准、法规或认证要求。

Ch1 The Nature of Software

T1

T2

Ch2 Software Engineering

T1🎤

  • 注意翻译

  • tmqp Q比!

T2🎤

  • 注意翻译

    • dpccm communication, planing, modeling, constructing, deploying

T3🎵

  • 注意翻译

T4

Ch4 Process Models

T1

  • 生词 throwaway 一次性

T2

  • prototyping model 原型模型

T3

  • The spiral model 螺旋模型

T4

T5

T6

  • defect free computer based systems : 无缺陷的计算机系统

T7

T8

T9

  • 过程模型不允许跳过活动,而是将其自动化以提升效率

Ch5 Agile Development

T1

T2🎤

  • dpct

Ch6 Human Aspects of Software Engineer

T1

T2

T3

T4

Ch7 Principles that Guide Practice

T1

T2

Ch8 Understanding Requirements

T1

T2

  • AB

    • elicitation的意思 是 引出,启发

T3

    • stakeholder 利益相关者

T4

T5

    • facilitator

T6

T7

T8

Ch9 Requirements Modeling: Scenario-Based Methods

T1

    • 信工行

T2

    • 同 T1 图

T3

T4

T5

T6

Ch10 Requirements Modeling: Class-Based Methods

T1

T2

    • 相关实体无法得出属性,需要在系统中的作用

T3

T4

    • 同 T3

Ch11 Requirements Modeling: Behavior, Patterns, and Web/Mobile Apps

T1

T2🎤

    • 2cf ni

T3

Ch12 Design Concepts

T1

T2

T3

T4🎤

T5🎤

T6

    • 翻译 : cohesion 内聚性 , 相应的 coupling 耦合性

T7

    • 翻译 : refactoring重构

T8🎤

    • 永夜 进程 持久控制

T9

Ch13 Architectural Design

T1

T2

    • A genre is a category or style of artistic, musical, or literary composition characterized by a particular set of form, style, or content

T3

T4🎵

T5

T6

T7

T8

Ch14 Component-Level Design

T1

T2

T3🎵

    • 翻译; A stereotype is a generalized, oversimplified mental image or assumption applied to a group of people

T4

    • 选择题

T5

T6

T7

T8

T9🎵

T10

    • 同上

T11

T12🎵

Ch15 User Interface Design

T1

T2

T3

T4

T5

    • 翻译

T6

T7🎵

T8

Ch16 Pattern-Based Design

T1

T2

    • used in conjunction 结合使用

T3

T4

T5

    • judicious 明智的

T6

T7

    • Granularity 粒度

T8

Ch17 WebApp Design

T1

T2

T3

    • pyramid 金字塔

T4

T5

T6

    • 如上

T7

    • 如上上

T8

Ch18 MobileApp Design

T1

    • intermittent connectivity outages 间歇性网络连接中断

T2

T3

Ch19 Quality Concepts

T1

T2

    • stakeholder requirements 利益相关者要求

T3

T4

    • 功可易 夏威夷

T5

T6

T7

T8

T9

Ch20 Review Techniques

T1

T2

T3

T4

T5

T6

T7

Ch21 Software Quality Assurance

T1

T2

T3

T4

T5

Ch22 Software Testing Strategies

T1

T2

T3

T4🍅

T5🎩

T6🎩

T5

T6🍅🎩

T7

T8🎩

T9🍅

Ch23 Testing Conventional Applications

T1🍅🎤

  • ABC

    • 草管控分简稳设

T2

T3

    • cyclomatic 圈的

T4

    • criteria 标准

T5🍅

T6🎩

T7🎩

T8🎩

Ch24 Testing Object-Oriented Applications

T1

T2🍅

T3🇸🇬

T4🍅

T5🇸🇬

T6🎩

    • Fault-based testing 基于故障的测试

T7🍅

T8🍅

    • csa (class state attribute)

Ch25 Testing Web Applications

T1🍅🎤

    • 内功 解渴 可(导)性jian 互爱

T2🍅🎤

    • 尊(组件)界 导致(配置) 信安累(内容)

T3🎩

    • interface mechanism 界面机制

T4🎩

T5🎩

T6🍅🎩

T7🇬🇧

    • appearance 外观

T8🎩

T9🍅

Chapter 29 Software Configuration Management

T1🍅🎤

    • PDD case

T2🍅🎤

    • CPCH

T3🇸🇬

T4🍅🎵

    • audit 审计 cs里的virtual address

T5🍅

T6🍅🎤

T7🍅

T8🎩

Chapter 30 Project Metrics

T1🍅

T2🍅

T3🍅🎩

T4🍅🇸🇬🎤

    • cs

T5🍅🎵

T6🍅

T7🍅🎵

T8🇬🇧

    • reside within 居住在

T9🍅

T10🍅

T11🍅

T12🍅

Chapter 31 Project Management Concepts

T1🍅🎵

T2🦦

T3🍅🎩

T4🍅

T5🍅🇸🇬

T6🎩

Ch32 Process and Project Metrics

T1🍅🎤

    • 频频💏根雕

T2🍅

T3🍅🎩

T4🍅🎩

T5🦦

T6🇸🇬

Ch33 Estimation

T1🍅🎤

    • 内功限数

T2🦦🎩

T3🍅

problem decomposition🍅

A

B

T4🦦🎩

T5🇸🇬🍅

T6🦦

T7🇬🇧

    • outsourcing 外包

Ch34 Project Scheduling

T1🍅🎤

    • 一公分, 李则成

T2🎩

T3🦦

T4🍅🎤

  • 还有一个质量保证点

    • 理工至交(清穗)

T5🍅🇸🇬

T6🦦

T7🇬🇧🦦

Ch35 Risk Analysis

T1🍅🎤

    • 品质失衡

T2🍅🎤

    • 信竞支撑

T3🍅🎤

    • 产开(产品开发)过人

T4🦦🎩🫖

T5🦦🎩🫖

T6🍅🎤

    • RMMM mitigation

Ch36 Maintenance and Reengineering

T1🦦

T2


评论