首页 > 其他分享 >软件分析和设计过程的重要图形(架构图)

软件分析和设计过程的重要图形(架构图)

时间:2023-05-05 16:45:04浏览次数:43  
标签:视图 架构图 用例 https 设计 组件 软件 图形 描述

架构图(4+1视图)

总体

一种视图:场景视图(用例图)

一文掌握14种UML图 : https://cloud.tencent.com/developer/article/1684161

  • 【概念】用例图是指由参与者、用例,边界以及它们之间的关系构成的用于描述系统功能的视图。
  • 【目的】用来描述整个系统的功能。

用例图中包含以下三种关系:

  • 包含关系使用符号《include》,想要查看订单列表,前提是需要先登录。
  • 扩展关系使用符号《extend》,基于查询订单列表的功能,可以增加一个导出数据的功能
  • 泛化关系,子用例继承父用例所有结构、行为和关系。

 

记忆:(先有谁,就指向谁)包含谁、指向谁;扩展谁,指向谁 

包含(扩展 无要求):如果没有子用例,基用例无法完成
扩展:如果xxx,则xxx(分支流)

四种视图

1.  逻辑视图(组件图/类图)

1.1 组件图

https://www.zhihu.com/tardis/zm/art/352590602?source_id=1003,https://bbs.huaweicloud.com/blogs/375202

 

描述 软件的模块及其之间的关系

最简单的组件图:

下面springcloud微服务的逻辑视图示例(仅部分),就描述了springcloud中各个功能组件。从这个图中,基本可以对springcloud有一个大颗粒度的了解。

  咱们以java体系架构来说明逻辑视图,下图描述了java体系中各个功能组件,以及他们的层级关系,作用和依赖范围。

 

1.2 类图

2. 处理流程视图(流程图/时序图)

流程图、顺序图、状态图他们三者分别解决什么样的问题? https://www.zhihu.com/question/23356888

3. 开发视图

4. 物理视图

 

软件需求分析、系统设计的图

需求分析设计之七武器  https://www.jianshu.com/p/1c4061717797

软件建模与设计过程可拆分为需求分析、概要设计和详细设计三个阶段。我们往往需要在不同阶段输出不同的设计文档。这个过程,除了自身的业务理解能力外,建模工具UML必不可少,其中常用的有七种(“七武器”):类图、用例图、时序图、活动图、状态图、组件图和部署图。

适用阶段模型图说明
需求分析:    
  类图 关注领域对象识别及其关系
  活动图 描述业务流程(一种 流程图)
  用例图 通过反映用户和软件系统的交互来描述系统的功能需求
  时序图 通常用于表示对象之间的交互’这个对象可以是类对象,也可以是更大粒度的参与者’如组件、服务器、子系统等
  状态图 描述状态变迁的逻辑关系
概要设计:    
  活动图 描述子系统和组件的交互  (一种 流程图)
  时序图 通常用于表示对象之间的交互’这个对象可以是类对象,也可以是更大粒度的参与者’如组件、服务器、子系统等
  组件图 粒度比较粗,通常用以描述和设计软件的模块及其之间的关系,需要在设计早期阶段画出来
  部署图 是整个软件设计模型中比较宏观的一种图,是在设计早期就需要画的一种模型图;还可以估算服务器和第三方软件的采购成本
详细设计:    
  类图 开发工程师按照类图实现代码即可
  状态图 这个时候状态要用枚举值表示,以指导具体的开发
  时序图 常用于描述系统内部详细的接口调用时序或业务模块数据流转过程
  活动图 可用于描述一个类方法内部的计算流程


作者:那一缕尘心
链接:https://www.jianshu.com/p/1c4061717797
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。  

 

标签:视图,架构图,用例,https,设计,组件,软件,图形,描述
From: https://www.cnblogs.com/wxdlut/p/17374532.html

相关文章

  • 软件测试面试题(带答案)
    1.请自我介绍一下(需简单清楚的表述自已的基本情况,在这过程中要展现出自信,对工作有激情,上进,好学)面试官您好,我叫###,今年26岁,来自江西九江,就读专业是电子商务,毕业后就来深圳工作,有三年的软件测试工程师的经验,我性格比较开朗,能和同事小伙伴友好相处。2.平时工作中是怎么去测的?(至......
  • 架构师日记-深入理解软件设计模式
    作者:京东零售刘慧卿一设计模式与编程语言1.1什么是设计模式设计模式(Designpattern):由软件开发人员在软件开发中面临常见问题的解决方案,是经过长时间的试验积累总结出来的,它使设计更加灵活和优雅,复用性更好。从实用的角度来看,它代表了某一类问题的最佳实践。设计模式到底解......
  • yt-dlp 图形化客户端 Cube YouTube Downloader
    yt-dlp——Youtube视频命令行下载工具youtube-dl扩展版,添加了新的特性和补丁。https://bbs.zsxwz.com/thread-4855.htm虽然强大,命令行下载工具,可能很多小伙伴护台喜欢用,就可以使用图形化客户端CubeYouTubeDownloader。 1、下载CubeYouTubeDownloader并解压:https:/......
  • Ubantu20.4 换源:apt-get 软件更新镜像源
    参考地址:点击这里TRANSLATEwithxEnglishArabicHebrewPolishBulgarianHindiPortugueseCatalanHmongDawRomanianChineseSimplifiedHungarianRussianChineseTraditionalIndonesianSlovakCzechItalianSlovenianDanishJapaneseSp......
  • 6-4 【CPP0026】以点类Point及平面图形类Plane为基础设计三角形类Triangle
    6-4【CPP0026】以点类Point及平面图形类Plane为基础设计三角形类Triangle分数 10作者 C++多态编程单位 石家庄铁道大学以平面图形类Plane为基类公有派生三角形类Triangle,main(void)函数完成对其的测试。Point类结构说明: Point类的数据成员包括:①私有......
  • 上门预约小程序|上门服务小程序开发|上门服务软件开发功能
    上门预约小程序你听说过吗?这几年人们的生活水平不断提升,大家对于上门服务的需求也越来越大,因此上门服务小程序也成为人们生活中不可缺少的一部分,比如一些需要到店服务的如输液、家政、足疗养生等,正在如火如荼的转型上门服务不仅可以提高工作人员的工作效率还可以让用户更方便的下单......
  • 8.1 基本立体图形(2)-- 圆柱、圆锥、圆台、球
    \({\color{Red}{欢迎到学科网下载资料学习}}\)[【基础过关系列】高一数学同步精品讲义与分层练习(人教A版2019)](https://www.zxxk.com/docpack/2921718.html)\({\color{Red}{跟贵哥学数学,so\quadeasy!}}\)必修第二册同步巩固,难度2颗星!基础知识圆柱(1)概念以矩形......
  • 8.2 立体图形的直观图
    \({\color{Red}{欢迎到学科网下载资料学习}}\)[【基础过关系列】高一数学同步精品讲义与分层练习(人教A版2019)](https://www.zxxk.com/docpack/2921718.html)\({\color{Red}{跟贵哥学数学,so\quadeasy!}}\)必修第二册同步巩固,难度2颗星!基础知识空间几何体的直观图用来......
  • 软件架构风格-黑板架构风格(Blackboard architecture)
    参考链接:https://cs.uwaterloo.ca/~m2nagapp/courses/CS446/1181/Arch_Design_Activity/Blackboard.pdfhttp://users.encs.concordia.ca/~gregb/home/PDF/soen6461_blackboard_arch.pdf......
  • 8.1 基本立体图形(1) --棱柱、棱锥、棱台
    基础知识空间几何体多面体一般地,由若干个平面多边形围成的几何体叫做多面体.围成多面体的各个多边形叫做多面体的面,如面\(PAB\);两个面的公共边叫做多面体的棱,如棱\(PA\),棱\(AB\);棱与棱的公共点叫做多面体的顶点,如顶点\(P\),顶点\(A\).以前学过的长方体、正方体是多面体. 旋......