UML的定义和组成详细介绍_uml的定义是什么?它的组成部分有哪些?-程序员宅基地

技术标签: uml  软件工程  软件工程师  

1、UML

1.1概述

UML(Unified Modeling Language 统一建模语言) 是为软件系统的制品进行描述(specifying)可视化(visualizing)构造(constructing)文档化(documenting) 的一种语言。

UML规范用来描述建模的概念有: 类、对象、关联、职责、行为、接口、用例、包、顺序、协作,以及状态。

1.2 UML是一种建模语言

  • 建模方法 = 建模语言 + 建模过程。建模语言定义了用于表示设计的符号(通常是图形符号);建模过程描述进行设计所需要遵循的步骤。
  • 标准建模语言UML是一种建模语言,而不是一种方法,它统一了面向对象建模的基本概念、术语及其图形符号,为人们建立了便于交流的共同语言。
  • 建模能力:建模方法 + 领域知识 + 实践

1.3 UML语言包含三方面

  1. UML基本图素:它是构成UML模型图的基本元素。例如类、对象、包、接口、组件等。
  2. UML模型图:它由UML基本图素按照UML建模规则构成。例如用例图、类图、对象图、…等。
  3. UML建模规则:UML模型图必须按特定的规则有机地组合而成,从而构成一个有机的、完整的UML模型图(well-formed UML diagram)。

2、UML支持软件体系结构建模

为了表达不同的软件开发相关人员在软件开发周期的不同时期看待软件产品的不同侧重面, 需要对模型进行分层。

UML根据软件产品的体系结构(architecture)对软件进行分层。
软件的体系结构分解为五个不同的侧面,称为4+1视图(view)。分别是:

  • 用例视图(Use case view,Scenarios)—场景视角
  • 逻辑视图(Logical view) — 逻辑视角
  • 进程(过程)视图(Process view) — 过程视角
  • 实现(开发)视图(Implementation view) —开发视角
  • 部署(物理、配置)视图(Deployment view) —物理视角

  • 每个视图分别关注软件开发的某一侧面
  • 视图由一种或多种模型图(diagram)构成
  • 模型图描述了构成相应视图的基本模型元素(element)及它们之间的相互关系。

2.1 逻辑视图

逻辑视图定义系统的实现逻辑, 描述为实现用例图描述的功能,在对软件系统进行设计时, 所产生

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_45920385/article/details/121314970

智能推荐

《吴恩达机器学习》12 支持向量机_svm普遍使用的准则描述不正确的是:( )(n为特征数,m为训练样本数。)-程序员宅基地

文章浏览阅读553次。支持向量机前言一、优化目标二、大间隔分类器1、直观理解2、数学原理三、核函数四、使用SVM总结前言到目前为止,我们已经见过一系列不同的学习算法。在监督学习中,许多学习算法的性能都非常类似,因此,重要的不是你该选择使用学习算法 A 还是学习算法 B,而更重要的是,应用这些算法时,所创建的大量数据在应用这些算法时,表现情况通常依赖于你的水平。比如:你为学习算法所设计的特征量的选择,以及如何选择正则..._svm普遍使用的准则描述不正确的是:( )(n为特征数,m为训练样本数。)

allegro 自动批量创建device文件_allegro 自动批量生成device文件脚本-程序员宅基地

文章浏览阅读4.5k次。学习allegro,画一块板子时,老师给了个封装库,可惜里面没有device文件,导入第三方网标时却必须有。老师让一个一个的创建,太麻烦,随想办法搞了个自动创建的脚本。思路如下:一、allegro 中录制创建device文件的脚本;file -> script ; record; 开始录制脚本file -> Create Device;创建device文件ctrl + s 保存_allegro 自动批量生成device文件脚本

LVS三种工作模式及原理详解-程序员宅基地

文章浏览阅读6.1k次,点赞9次,收藏55次。什么是 LVS?LVS 是 Linux Virtual Server 的简写,也就是 Linux 虚拟服务器,是一个虚拟的服务器集群系统,本项目在 1998 年 5 月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。官方网站:http://www.linuxvirtualserver.org,LVS 实际上相当于基于 IP 地址的虚拟化应用,为基于 IP 地址和内容请求分发的负载均衡提出了高效的解决方法,现在 LVS 已经是 Linux 内核标准的一部分。使用 LVS 可以达到的技术目标_lvs

第五讲 相关系数_线性相关系数举例-程序员宅基地

文章浏览阅读2.6k次,点赞2次,收藏25次。相关系数总体 ——所要考察对象的全部个体叫做总体.我们总是希望得到总体数据的一些特征(例如均值方差等)样本 ——从总体中所抽取的一部分个体叫做总体的一个样本.计算这些抽取的样本的统计量来估计总体的统计量:例如使用样本均值、样本标准差来估计总体的均值(平均水平)和总体的标准差(偏离程度)。例子:我国10年进行一次的人口普查得到的数据就是总体数据。大家自己在QQ群发问卷叫同学帮忙填写得到的数据就是样本数据这里的相关系数只是用来衡量两个变量线性相关程度的指标;也就是说,你必须先确认这两个_线性相关系数举例

Python零基础之基本概念-程序员宅基地

文章浏览阅读391次。Python 语言1. 基本概念简介,快速,门槛低Python的创始人为吉多*范罗苏姆 (Gudio van Rossum)吉多 龟书 大神Python的起源可以追溯到1989年12月,由Guido van Rossum(Python社区的仁慈独裁者)创建,作为一个在圣诞节期间工作的爱好项目,Python的名字不是取义于大蟒蛇,而是来自于英国喜剧团Monty Python。Python诞生于ABC语言,是van Rossum工作的荷兰CWI研究所的终止项目,van Rossum也在研究叫Amoe

[转载]个人认为最好的BERT讲解博客(上)_!test -d bertviz_repo && echo-程序员宅基地

文章浏览阅读2.7k次,点赞6次,收藏14次。這是一篇 BERT 科普文,帶你直觀理解並實際運用現在 NLP 領域的巨人之力。 如果你還有印象,在自然語言處理(NLP)與深度學習入門指南裡我使用了 LSTM 以及 Google 的語言代表模型 BERT 來分類中文假新聞。而最後因為 BERT 本身的強大,我不費吹灰之力就..._!test -d bertviz_repo && echo

随便推点

python的ORM技术:使用sqlalchemy操作mysql数据库_python里sqlalchemy如何操作mysql数据库-程序员宅基地

文章浏览阅读664次。#!/usr/bin/env python# -*- coding: utf-8 -*-from sqlalchemy import Column, String, create_engine, Integer, Date, Float, ForeignKeyfrom sqlalchemy.orm import sessionmaker, relationshipfrom sqlalch..._python里sqlalchemy如何操作mysql数据库

JNI层 C如何掉用java接口-程序员宅基地

文章浏览阅读1.1k次。JNIEXPORT jboolean JNICALL Java_com_company_BossLi_registerCallback (JNIEnv *env, jobject obj){ BOOL bRet = FALSE; bRet = CModuleAddCallBack(hMoudle, postCallBack); return

【吴恩达深度学习编程作业】4.4特殊应用——人脸识别和神经风格转换(问题未解决)_吴恩达 人脸识别 数据database出错-程序员宅基地

文章浏览阅读896次,点赞2次,收藏8次。参考文章:1.人脸识别与神经风格转换 2.神经风格转换编程作业神经网络风格中遇到的问题已经解决了并将解决方案写在了备注里面,但是人脸识别那里运行到database就出错了,目前仍没有找到解决方案,报错信息:Traceback (most recent call last): File "G:/Project/PYTHON/Demo01/Deep_Learning/test4_4/人脸识别.py", line 108, in <module> database["daniel_吴恩达 人脸识别 数据database出错

hadoop 8088端口网页无法打开的原因分析_hadoop 为什么8088访问不了-程序员宅基地

文章浏览阅读4.7w次,点赞5次,收藏27次。首先master和slaves的节点正常http://server71:50070 (HDFS管理界面)正常可以打开http:// server71:8088 yarn管理界面打不开Master(server71)Slaves(server72,73,74)[root@server71 bin]# jps2271 NameNode_hadoop 为什么8088访问不了

谈一下如何设计Oracle 分区表_如何设计分区表-程序员宅基地

文章浏览阅读3k次。在谈设计Oracle分区表之间先区分一下分区表和表空间的个概念:表空间:表空间是一个或多个数据文件的集合,所有数据对象都存放在指定的表空间中,但主要存放表,故称表空间。分区表:分区致力于解决支持极大表和索引的关键问题。它采用他们分解成较小和易于管理的称为分区的片(piece)的方法。一旦分区被定义,SQL语句就可以访问的操作某一个分区而不是整个表,因而提高管理的效率。分区对于数据仓_如何设计分区表

PHP多张图片拼接成长图_php 图片合成-程序员宅基地

文章浏览阅读205次。将多张图片,按照规格合成一张图片。_php 图片合成