软件工程 - 04 需求分析

文章目录

  • 需求分析
  • 需求分析方法
  • 系统建模
    • 用例图
    • 类图
    • 对象图
    • 活动图
    • 时序图
    • 协作图
    • 构件图
    • 部署图
  • 软件开发各个阶段的图

需求分析

  • 软件开发中非常重要的一环;
  • 好的需求分析方法,可以帮助更好地理解用户需求,准确定义系统的功能和性能要求,可以更好地规划和管理项目,减少需求变更和返工的风险,避免资源浪费;

需求分析方法

  • 结构化分析法,根据业务框架确定系统的功能范围及每个功能的处理逻辑和业务规则;
  • 系统建模方法,可以通过UML表示系统的结构、行为、交互,如开发一个在线购物平台时,可以使用UML类图来表示商品、用户、订单等核心概念的属性和关系。
  • 需求加法,是一种通过添加新的需求来完善系统的方法;
  • 需求减法,通过删除或调整现有需求来简化系统的方法

 

系统建模

  • UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档;
  • UML的图:最底层称为图Diagram,把图按照某种方式组织与分类,形成高层视图View;
  • UML视图分为用例视图、设计视图、进程视图、实现视图和拓扑视图
    在这里插入图片描述
     

用例图

  • 表示,软件使用者
  • 表示,软件系统为使用者提供的功能;
    从用户的角度描述了系统的功能。
    在这里插入图片描述
     

类图

  • 对某一类事物的抽象;
    在这里插入图片描述
  • 类之间的关联关系
    • 泛化,具体化
      在这里插入图片描述
    • 实现,抽象接口的实现;
      在这里插入图片描述
    • 关联,一对一、一对多、多对多;
      在这里插入图片描述
    • 聚合,整体与部分的关系,且部分可以离开整体而单独存在;
      在这里插入图片描述
    • 组合,整体与部分的关系,且部分不可以离开整体而单独存在;
      在这里插入图片描述
    • 依赖,是使用关系;
      在这里插入图片描述
      在这里插入图片描述

 

对象图

  • 类在某一时刻的实例,加下划线;
    在这里插入图片描述
    在这里插入图片描述

 

活动图

  • 本质是一种流程图,描述活动到活动的控制流;
  • 如下为带泳道的活动图,泳道表示执行者;
    在这里插入图片描述
    在这里插入图片描述
  • 客户下单的活动图
    在这里插入图片描述

 

时序图

  • 表示事件发生的先后时间顺序,如下充值时序图;
    在这里插入图片描述
    消费者、管理中心、卡设备都有自己的生命线;

 

协作图

强调对象之间的合作关系
在这里插入图片描述

构件图

  • 构件之间的关系;
    在这里插入图片描述

在这里插入图片描述

 

部署图

表示物理设备及它们之间的连接关系;
在这里插入图片描述

在这里插入图片描述

 

软件开发各个阶段的图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/504158.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深入理解数据结构(3):栈和队列详解

文章主题:顺序表和链表详解🌱所属专栏:深入理解数据结构📘作者简介:更新有关深入理解数据结构知识的博主一枚,记录分享自己对数据结构的深入解读。😄个人主页:[₽]的个人主页&#x…

系统优化都没做过?看这篇就够了

目录 一、系统优化指标 二、系统优化简介 三、系统优化 3.1 CPU 高 3.2 内存占用高 业务引起的内存升高 程序自身引起的内存问题 3.3 磁盘I/O 3.4 网络 3.5 数据库优化 3.6 响应时间高 3.7 吞吐量 3.8 代码层面优化 3.9 业务优化 四、JVM优化 4.1 堆内存设置 4.2 选择何时的…

半导体工艺技术

完整内容点击:【半导体工艺技术】

win10蓝牙开关不见了怎么办,win10设置里面蓝牙开关不见了

最近,有用户在使用win10系统的时候,发现设置蓝牙和其他设备中蓝牙开关不见了。正常情况下,“蓝牙和其他设备”下面是有蓝牙开启开关的,没有的话是怎么回事呢?出现这样的情况,可能是应为系统没有将测到蓝牙设备或者蓝牙…

高德地图key注册教程_地图数据采集软件

1.先注册成为开发者账号。 2.再申请高德地图Key。 3.把申请得到的高德地图Key填入软件中。 1.请先打开以下连接 高德地图key注册地址 易地图数据采集大师手机App版介绍 易地图数据采集大师电脑PC版介绍 2.注册新用(如果已有开发者账号,本步可省略&am…

知识蒸馏详解及pytorch官网demo案例

知识蒸馏Knowledge Distillation(KD) 1、简介 一种模型压缩方法 知识蒸馏的一般框架(如下图) 三部分:知识、蒸馏算法、师生架构。 知识 将知识分为三种形式:基于响应的(response-based)、基于特征的&…

pytest--python的一种测试框架--pytest常用断言类型

一、pytest常用断言类型 等于: 不等于&#xff1a;&#xff01; 大于&#xff1a;> 小于&#xff1a;< 属于&#xff1a;in 不属于&#xff1a;not in 大于等于&#xff1a;> 小于等于&#xff1a;< 是&#xff1a;is 不是&#xff1a;is not def test_two():ass…

酷得单片机方案 2.4G儿童遥控漂移车

电子方案开发定制&#xff0c;我们是专业的 东莞酷得智能单片机方案之2.4G遥控玩具童车具有以下比较有特色的特点&#xff1a; 1、内置充电电池&#xff1a;这款小车配备了可充电的电池&#xff0c;无需频繁更换电池&#xff0c;既环保又方便。充电方式可能为USB充电或者专用…

LATTICE进阶篇DDR2--(0)获取ddr2 IP核

前言 想要仿真lattice的DDR2由来已久&#xff0c;但苦于对其了解甚少&#xff0c;在查阅过很多资料后&#xff0c;终于对这个IP核的仿真有了一些了解。 现做一些总结&#xff0c;以备不时之需&#xff0c;也让有需要的朋友&#xff0c;少走一些弯路。 环境&#xff1a;win10…

算法学习——LeetCode力扣动态规划篇5

算法学习——LeetCode力扣动态规划篇5 198. 打家劫舍 198. 打家劫舍 - 力扣&#xff08;LeetCode&#xff09; 描述 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统…

通知中心架构:打造高效沟通平台,提升信息传递效率

随着信息技术的快速发展&#xff0c;通知中心架构作为一种关键的沟通工具&#xff0c;正逐渐成为各类应用和系统中必不可少的组成部分。本文将深入探讨通知中心架构的意义、设计原则以及在实际场景中的应用。 ### 什么是通知中心架构&#xff1f; 通知中心架构是指通过集中管…

信息学奥赛一本通T1268-完全背包问题

solution1 二维形式 #include<iostream> #include<algorithm> using namespace std; const int maxn 35, maxv 210; int w[maxn], c[maxn], dp[maxn][maxv]; int main(){int n, m;scanf("%d%d", &m, &n);for(int i 1; i < n; i){scanf(&…

电脑win10系统更新后很卡怎么办,win10电脑更新完系统特别卡

更新或者升级win10系统后发现电脑变卡了,这是什么原因呢?如果电脑硬件不是特别差,那么可以按照下面的方法来缓解卡顿,因为可能是内存不足所引起的,试试清理更新缓存和禁用开机启动项。但如果是硬件较低或者太老旧,并且本身的内存就很小的话,那么建议你还是升级硬件吧。下…

.NET 开发支持技术路线 .Net 7 将停止支持

.NET 开发技术路线图 微软方面强调&#xff0c;使用 .NET 7 的应用程序将在支持结束后继续运行&#xff0c;但用户可能无法获得 .NET 7 应用程序的技术支持。他们不会继续为 .NET 7 发布新的安全更新&#xff0c;用户可能会面临安全漏洞问题。 开发人员必须使用 .NET 8 SDK 构建…

Windows提权!!!

之前讲过一下提权&#xff0c;但是感觉有点不成体系&#xff0c;所以我们就成体系的来讲一下这个操作系统的提权 目录 Windows的提权 1.Widnows的内核溢出提权 1.MSF自带的提权模块&#xff08;Win11都能提上来&#xff0c;有点牛逼&#xff09; 2.CS的插件提权 3.补丁对比…

毕设论文目录设置

添加目录 选择一种格式的自动目录 更新目录 发现该目录中只有1、2章&#xff0c;3、4章 然后再点击更新目录 对应的&#xff0c;小标题添加二级目录

基于JavaSpringMVC+Mybatis+Jquery高校毕业设计管理系统设计和实现

基于JavaSpringMVCMybatisJquery高校毕业设计管理系统设计和实现 博主介绍&#xff1a;多年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐…

【C语言】结构体详解(一)

目录 1、什么是结构体? 2、结构体成分 3、结构体变量的定义与初始化 3.1、结构体变量的三种定义方式 3.2、结构体变量的初始化 4、结构体成员的访问&#xff08;两种方式&#xff09; 4.1、直接访问 4.2、间接访问 5、结构的特殊声明 5.1、不完全声明&#xff08;匿…

医院陪诊管理系统(源码+文档)

TOC) 文件包含内容 1、搭建视频 2、流程图 3、开题报告 4、数据库 5、参考文献 6、服务器接口文件 7、接口文档 8、任务书 9、功能图 10、环境搭建软件 11、十六周指导记录 12、答辩ppt模板 13、技术详解 14、前端后台管理&#xff08;管理端程序&#xff09; 15、项目截图 1…

06-JavaScript DOM对象

1. 从ECMA到W3C 我们知道&#xff0c;ECMA定义的是js的变量语法等基础的标准规范&#xff0c;而W3C是针对浏览器API提出的规范&#xff0c; 所以我们要工作不可能只了解语法&#xff0c;我们的代码要在浏览器上跑起来就需要我们去了解W3C的标准。 那么W3C规定了哪一系列的的A…