需求分析到软件设计复习

什么是需求分析?

需求分析就是需求分析师对用户期望的软件行为进行表述。

谁来表述 -> 需求分析师

谁有期望-> 用户

期望什么?-> 期望的软件行为

怎样表述?-> 在获取需求的基础上,用对象或实体的 状态、属性和行为来进行准确描述和建模。

需求的类型

功能需求:根据所需的活动描述所需的行为

非功能需求:软件必须具备的一些质量特性

设计约束:决策时的约束,如选择平台和接口组件

过程约束:可用构建系统的技术或资源的限制

需求分析的两种方法

1.原型化方法

由用户与开发者共同确定系统的基本要求和主要功能,由于有用户的参与,可以很好的整理用户接口。

2.建模的方法

给出事件发生的时序和活动约束,逻辑上形成模型来整理需求细节。

高质量的需求是什么样子?(九点)

1.需求可测试

2.冲突可解决

3.正确性、持续性、无二义性、完整性、可行性、相关性,Traceable

用例满足的四个必要条件(准确提取用例的基本方法)

1.寻找业务领域的动名词或动名词短语

2.验证该动名词是不是用例

  • 它是不是一个业务过程?
  • 它是不是由某个参与者触发
  • 它是不是显式或隐式的终止与某个参与者?
  • 它是不是为某个参与者完成了有用的业务工作?

3.在需求中识别出参与者、系统或子系统

统一过程的核心要义是什么

  • 用例驱动
  • 以架构为中心——保持软件架构相对稳定,减少架构层面的重构
  • 增量且迭代

敏捷统一过程的四个关键步骤

敏捷统一过程将 软件过程中的迭代过程进一步分为 计划阶段增量阶段。主要有四个关键步骤

​ ——————————-计划阶段——————————

抽象用例——一个简单的动名词短语指明

高层用例——用例在什么时候什么地方开始,以及在什么时候什么地方结束

(按照子系统或者系统的不同方面进行 分类,描述用例与用例,用例与参与者之间的上下文关系,画出用例图)

Original: https://www.cnblogs.com/Grong/p/15767581.html
Author: 乌有先生ii
Title: 需求分析到软件设计复习

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/585747/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • MySQL实现 group_concat 排序

    MySQL支持实现group_concat() 内部自定义排序: 实例: 新建一张表 reward,表中数据如下: SQL: SELECT uid, GROUP_CONCAT(mo…

    Linux 2023年6月13日
    0120
  • linux与windows的批处理应用

    本文主要记录一下,不同服务器部署springboot项目时,用到的批处理命令 linux,针对maven-assembly-plugin打的tar.gz包的springboot项目…

    Linux 2023年6月14日
    0100
  • redisobject详解

    typedef struct redisObject { unsigned type:4; unsigned encoding:4; unsigned lru:REDIS_LRU_…

    Linux 2023年5月28日
    0116
  • centos7中防火墙转为iptables

    1、关闭firewall systemctl stop firewalld.service #停止firewall systemctl disable firewalld.serv…

    Linux 2023年6月6日
    092
  • 简单交叉编译学习

    交叉编译 交叉编译是在一个平台上生成另一个平台上的可执行代码。 同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。通常是自己的电脑写好代码编译…

    Linux 2023年6月7日
    0134
  • @Import 源码解析

    转发请注明出处: @Import通过快速导入的方式实现把实例加入spring的IOC容器中;一般@EnableXXX注解是通过@Import实现具体的功能(@EnableXXX注解…

    Linux 2023年6月14日
    061
  • 个人学习-STL深入学习01-vectory源码研习 // 需要补充

    STL,即标准模板库(Standard Template Library,STL),内部封装了常见的容器和算法。由六部分组成:1.容器(Containers)2.分配器(Alloc…

    Linux 2023年6月6日
    094
  • 【异常】Jenkins构建任务控制台乱码,但是直接执行shell脚本却没有问题

    1 问题现象 构建各种问号 2 检查各种配置 查看Jenkins的文件编码为 ANSI_X3.4-1968 然后直接执行mvn -v命令显示的也不是UTF-8 3 解决方案,直接在…

    Linux 2023年5月28日
    0119
  • USB_ModeSwitch for Android 7

    测试步骤: 2.运行命令 adb shell usbmodeswitch -W -v 12d1 -p 1f01 -M ‘555342431234567800000000…

    Linux 2023年6月7日
    079
  • urandom和random区别

    linux中提供了 /dev/urandom 和 /dev/random 两个特殊设备来提供随机数。那么这两个文件有什么区别呢?要回答这个问题,先需要了解熵这个概念。 熵linux…

    Linux 2023年6月7日
    083
  • Ceph 块存储 创建的image 映射成块设备

    将创建的volume1映射成块设备 [root@mysql-server ceph]# rbd map rbd_pool/volume1 rbd: sysfs write fail…

    Linux 2023年6月13日
    0100
  • mysql group by语句流程是怎么样的

    group by流程是怎么样的 注意点: select id%10 as m, count(*) as c from t1 group by m; group by是用于对数据进行…

    Linux 2023年6月8日
    0102
  • 电脑常用快捷键大全>(收藏)

    在互联网飞速发展的时代,我们或多或少都会跟电脑打上交道,但是还有很多小伙伴对电脑还不太熟悉,并且不能够流畅的去操作电脑,那这个时候掌握一些基础简单的电脑 常用快捷键 的使用还是很有…

    Linux 2023年6月6日
    095
  • Linux专项之Apache

    1.虚拟机上网 1.安装软件(httpd) yum search ht…

    Linux 2023年6月14日
    091
  • vim编辑器

    vim 编辑器 2018 年12 月12 日 22:15 常用操作 命令模式(初始模式) 输入模式(i 进入) 底行命令模式(:进入) / 往下搜索 ? 往上搜索 n 搜索下一个 …

    Linux 2023年6月13日
    0123
  • apt-get指令关于卸载软件的各种用法

    一、 apt-get remove packagename 该命令将移除与 packagename相关联的所有二进制文件,但是不会移除与之相关联的配置文件或数据文件(configu…

    Linux 2023年5月27日
    0149
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球