案例分析技巧-软件工程

一、考试情况

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

二、结构化需求分析

数据流图

数据流图的平衡原则

数据流图的答题技巧

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

三、UML图

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

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

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

(2)用例关系

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

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

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

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

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

多重度

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

关系

顺序图(序列图)

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

通信图(协作图)

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

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

活动图

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

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

泳道代表角色

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

相关推荐
阿勉要睡觉1 天前
软件工程期末汇总
软件工程
搞科研的小刘选手2 天前
【高届数会议推荐】第九届先进电子技术、计算机与软件工程国际学术会议(AETCSE 2026)
计算机·软件工程·软件开发·学术会议·计算机工程·先进电子技术·电子技术
Coder_Boy_2 天前
基于SpringAI的在线考试系统-数据库 表结构 & 完整外键依赖关系梳理
java·数据库·人工智能·软件工程
嵌入式知行合一2 天前
软件工程知识体系
软件工程
郝学胜-神的一滴2 天前
Linux条件变量:线程同步的利器
linux·服务器·开发语言·c++·程序人生·软件工程
雾江流2 天前
AI视频生成1.7.5 |无限AI视频生成,需要特殊网络
软件工程
Coder_Boy_2 天前
基于SpringAI的在线考试系统-系统业务全流程
java·人工智能·spring boot·软件工程
Coder_Boy_3 天前
基于SpringAI的在线考试系统-核心业务流程图
java·数据库·spring boot·软件工程
不会玩电脑的Xin.3 天前
软件工程笔记2
软件工程
宇钶宇夕3 天前
CoDeSys入门实战一起学习(七):CoDeSys任务配置与应用对象详解——程序运行的核心控制
运维·自动化·软件工程