案例分析技巧-软件工程

一、考试情况

  • 需求分析(※※※※)
  • 面向对象设计(※※)

二、结构化需求分析

数据流图

数据流图的平衡原则

数据流图的答题技巧

  • 利用数据平衡原则,比如顶层图的输入输出应与0层图一致
  • 补充实体
    • 人物角色:客户、管理员、学生、老师
    • 组织机构:银行、供应商
    • 外部系统:银行系统、工资系统
  • 补充存储:例如**文件,**表,**库,**清单,**档案
  • 补充加工:找"动词+名词"的结构,分析是否可作为加工的,如生成报告、发出通知等

三、UML图

静态图(结构图):类图、对象图、构件图、部署图、制品图、包图、组合结构图

动态图(行为图):用例图、顺序图、通信图、状态图、活动图、定时图、交互概览图

(1)用例图:描述一组用例、参与者以及它们之间的关系;用户角度描述系统功能;参与者是外部触发因素(用户、组织、外部系统、时间);用例是功能单位

(2)用例关系

  • 包含关系:将两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们,包含关系必然
  • 扩展关系:如果一个用例明显地混合了两种或两种以上的不同环境,即根据情况可能发生多种分支,则可以将这个用例分为基本用例和一个或多个扩展用例。扩展关系可选
  • 泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象为父用例,其他的用例作为泛化关系中的子用例。泛化关系是一个父子关系

用例规约包括用例名称、用例ID、角色、用例说明、前置条件、基本事件流、其他事件流、异常事件流和后置条件。

类图:类图描述一组类、接口、协作和它们之间的关系。

对象图:对象图描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。

该图的解释:一本书籍对应0或1条借阅记录

多重度

  • 1:表示一个集合中的一个对象对应另一个集合中一个对象
  • 0..*:表示一个集合中的一个对象对应另一个集合中的0个或多个对象
  • 1..*:表示一个集合中的一个对象对应另一个集合中的一个或多个对象
  • *:表示一个集合中的一个对象对应另一个集合中的多个的对象

关系

顺序图(序列图)

顺序图是一个交互图,它强调了对象之间消息发送的顺序,同时显示对象之间的交互

通信图(协作图)

通信图是交互图,它强调对象之间存在的消息收发关系,而不专门突出这些消息发送的时间消息

状态图:是对类描述的补充。用于展现此类对象所具有的可能状态,以及某些事件发生时其状态转移情况。

活动图

活动图里的节点表示是活动,状态图的节点表示的是状态

活动图的黑线表示两条路径可以并行执行的

泳道代表角色

定时图(交互图):也是交互图,用于展示交互过程中的真实时间信息,具体描述对象状态变化的时间点以及维持特定状态的时间段。

相关推荐
码匠许师傅4 小时前
【设计模式精讲】22.中介者模式(Mediator)
c++·设计模式·软件工程·uml·中介者模式
梁辰兴12 小时前
软件工程:确认测试
软件工程·最佳实践·测试报告·测试方法·梁辰兴·测试内容·实施条件
梁辰兴13 小时前
软件工程:单元测试
单元测试·软件工程·梁辰兴·‘设计原则·方法技术·tdd驱动·mock隔离
码匠许师傅13 小时前
【设计模式精讲】23.备忘录模式(Memento)
c++·设计模式·软件工程·uml·备忘录模式
风123456789~15 小时前
【架构专栏】5.7 软件工程 -软件项目管理 3/3-2
架构·软件工程
xierui1231231 天前
给内容 Agent 接平台账号前,先设计四层权限:读、写、预填、提交
人工智能·网络安全·aigc·软件工程
梁辰兴1 天前
软件工程:白盒测试
软件工程·白盒测试·应用场景·梁辰兴·路径覆盖·逻辑覆盖技术·路径测试
xierui1231231 天前
Agent记忆不是聊天记录:用三层存储构建可追溯的 AI 工作流
数据库·人工智能·aigc·软件工程
帅次2 天前
软考中项第11章:规划过程组,核心知识点与备考重点
项目管理·软件工程·软考·系统集成项目管理工程师·软考中项
码匠许师傅2 天前
【设计模式精讲】21.迭代器模式(Iterator)
c++·设计模式·rpc·迭代器模式·软件工程·uml