8:系统开发基础--8.5:系统设计、8.6:系统测试 、8.7:软件维护 、8.8:软件质量保证、8.9:软件文档

转上一节:

http://t.csdnimg.cn/X0GjWicon-default.png?t=N7T8http://t.csdnimg.cn/X0GjW

8.5:系统设计

考点1:系统设计概述
1:软件设计的任务与活动

体系结构设计:定义软件系统各主要部件之间的关系。

数据设计:基于E-R图确定软件涉及的文件系统的结构及数据库的表结构。

接口设计(人机界面设计) :软件内部、软件和操作系统间以及软件和人之间如何通信。 

过程设计:系统结构部件转换成软件的过程描述。确定软件各个组成部分内的算法及内部数据结构,并选定某种过程的表达形式来描述各种算法。

2:应用的工具
  • IPO图
  • PDL
  • PAD
  • 程序流程图
  • N/S盒图

考点2:模块设计
1:模块设计原则概述
  • 保持模块的大小适中
  • 深度、宽度适中
  • 扇入、扇出系数要合理
  • 模块的作用域应该在模块之内
  • 功能应该是可预测的
  • 高内聚、低耦合 

注:模块的作用域指的是该模块中判定影响的范围,模块的控制域指的是这个模块本身以及所有直接或间接从属于它的模块集合。

2:内聚性 

 

3:耦合性

模块设计原则(内聚,低耦合) 

 

考点3:人机界面设计 

8.6:系统测试 

考点1:测试的基本概念及分类

尽早、不断地进行测试

程序员避免测试自己设计的程序

既要选择有效、合理的数据,也要选择无效、不合理的数据

修改后应进行回归测试

尚未发现的错误数量与该程序已发现错误数成正比

考点2:黑盒测试 

考点3:白盒测试

例如:

对于一个判定(X>=0&&Y<=5) 记作判定1,其中X>=0记作条件1, Y<=5记作条件2。

用例:①(x=1,y=1;resut) ②(x=1.y=6;result) ③(x= -1.y=1;resut)④(x= -1.y=6;resut)

分析如下表(真值记为Y,假值记为N) ::

 思考:语句覆盖至少需要哪些用例?判定覆盖呢?条件覆盖呢?判定/条件覆盖呢?路径覆盖呢?

考点4:测试阶段划分

单元测试:模块测试,模块功能、性能、接口等。

集成测试:模块间的接口。[自顶向下-桩模块, 自底向上驱动模块,三明治-上下并行]

系统测试:真实环境下,验证完整的软件配置项能否和系统正确连接。

确认测试:验证软件与需求的一致性。内部确认测试、Alpha测试、 Beta测试、 验收测试。

回归测试:测试软件变更之后,需要测试变更部分的正确性以及对变更需求的符合性。

考点5:McCabe复 杂度计算 

技巧:流程图转结点图时,相交位置补充结点。

计算有向图G的环路复杂度公式为::V(G)=m-n+2。 技巧:最小独立闭环数+1

说明:其中V(G)是有向图G中的环路个数,m是G中的有向弧数,n是G中的结点数。 

8.7:软件维护 

考点1:软件维护相关概念

软件维护解决软件产品交付用户之后运行中发生的各种问题。

软件维护期通常比开发期长得多,投入也大得多。

软件的可维护性是软件开发阶段各个时期的关键目标。

相对于软件开发任务而言,软件维护工作要更加复杂,工作量也大得多。

软件维护可以对软件代码、软件软硬件等多种内容进行修改。

可维护性指标用1/ (1+MTTR) 标。

软件维护工具主要有:版本控制工具;文档分析工具;开发信息库工具;逆向工程工具;再工程工具;配置管理支持工具等。

考点2:软件维护分类

         改正性维护。指为了识别和纠正软件错误、改正软件性能 上的缺陷、排除实施中的错误,应当进行的诊断和改正错误的过程。

        适应性维护。指使应用软件适应信息技术变化和管理需求变化而进行的修改。企业的外部市场环境和管理需求的不断变化也使得各级管理人员不断提出新的信息需求。

        预防性维护。系统维护工作不应总是被动地等待用户提出要求后才进行,应进行主动的预防性维护,通过预防性维护为未来的修改与调整奠定更好的基础。

         完善性维护。扩充功能和改善性能而进行的修改。对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。

8.8:软件质量保证

软件质量保证ISO/IEC 9126

8.9:软件文档

开发文档(开发人员)

  • 可行性研究和项目任务书
  • 需求规格说明
  • 功能规格说明
  • 设计规格说明(包括程序和数据规格说明)
  • 开发计划
  • 软件集成和测试计划
  • 质量保证计划、标准、进度
  • 安全和测试信息

产品文档(用户)

  • 培训手册
  • 参考手册和用户指南
  • 软件支持手册
  • 产品手册和信息广告

管理文档(负责人)

  • 开发过程的每个阶段的进度和进度变更的记录
  • 软件变更情况的记录
  • 相对于开发的判定记录
  • 职责定义

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

yolov7直接调用zed相机实现三维测距(python)

yolov7直接调用zed相机实现三维测距(python) 1. 相关配置2. 相关代码3. 源码下载相关链接 此项目直接调用zed相机实现三维测距,无需标定,相关内容如下: 1. yolov4直接调用zed相机实现三维测距 2.yolov5直接调用zed相机实现三维测距(python) 3. yolov8直接调用zed相机实…

OpenHarmony实战开发-异步并发概述 (Promise和async/await)。

Promise和async/await提供异步并发能力&#xff0c;是标准的JS异步语法。异步代码会被挂起并在之后继续执行&#xff0c;同一时间只有一段代码执行&#xff0c;适用于单次I/O任务的场景开发&#xff0c;例如一次网络请求、一次文件读写等操作。 异步语法是一种编程语言的特性&…

MongoDB聚合运算符:$rand

MongoDB聚合运算符&#xff1a;$rand 文章目录 MongoDB聚合运算符&#xff1a;$rand语法举例生成随机数据点从集合中随机选择条目 $rand聚合运算符用于返回一个0~1之间的随机浮点数。 语法 { $rand: {} }$rand运算符不需要任何参数。每次调用$rand都会返回一个小数点后最多17位…

java面向对象.day21(继承02--super)

说明 super父 this当前 使用super时&#xff0c;首先要继承父类&#xff0c;其次是在子类里面才能使用super。 继承父类后&#xff0c;运行子类时会同时调用父类的构造方法&#xff0c;如果要显性调用父类的构造方法必须在子类的第一行调用。 单使用super()表示调用父类构造…

探索设计模式的魅力:深度挖掘响应式模式的潜力,从而精准优化AI与机器学习项目的运行效能,引领技术革新潮流

​&#x1f308; 个人主页&#xff1a;danci_ &#x1f525; 系列专栏&#xff1a;《设计模式》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 挖掘响应式模式&#xff0c;优化AI与机器学习项目性能&#xff0c;引领技术新潮流 ✨机器学习界的…

Linux useradd命令教程:如何创建新的用户账户(附实例详解和注意事项)

Linux useradd命令介绍 useradd是Linux中用于添加用户账户的命令。它可以用于创建新的用户&#xff0c;并可以配合不同的选项来指定用户的主目录、UID、GID、组等信息。 Linux useradd命令适用的Linux版本 useradd命令在大多数Linux发行版中都可以使用&#xff0c;包括但不限…

贪心算法中常见的使用方法逻辑整理

贪心算法 常见的使用方法逻辑整理 1. 贪心算法 特点 贪心算法&#xff0c;又名贪婪法&#xff0c;是寻找最优解问题的常用方法&#xff0c;这种方法模式一般将求解过程分成若干个步骤&#xff0c;但每个步骤都应用 贪心原则 &#xff0c;选取当前状态下最好/最优的选择&#x…

快速上手Vue

目录 概念 创建实例 插值表达式 Vue响应式特性 概念 Vue是一个用于 构建用户界面 的 渐进式 框架 构建用户界面&#xff1a;基于数据渲染出用户看到的页面 渐进式&#xff1a;Vue相关生态&#xff1a;声明式渲染<组件系统<客户端路由<大规模状态管理<构建工具 V…

第十二讲 查询计划 优化

到目前为止&#xff0c;我们一直在说&#xff0c;我们得到一个 SQL 查询&#xff0c;我们希望可以解析它&#xff0c;将其转化为某种逻辑计划&#xff0c;然后生成我们可以用于执行的物理计划。而这正是查询优化器【Optimizer】的功能&#xff0c;对于给定的 SQL &#xff0c;优…

人类的智能跟人的物理存在可以分割

人类的智能和物理存在是可以分割的。人类的智能指的是人类的思维能力、认知能力、学习能力等与大脑相关的智慧。而人的物理存在指的是人的身体、器官、神经系统等与肉体相关的部分。虽然智能和物理存在紧密相连&#xff0c;但是它们是可以单独考虑和研究的。比如&#xff0c;人…

Ubuntu Desktop 免费的文件 / 目录差异比较工具 (Beyond Compare 为收费软件)

Ubuntu Desktop 免费的文件 / 目录差异比较工具 [Beyond Compare 为收费软件] 1. Installation2. Meld Diff Viewer3. Lock to LauncherReferences Meld - Visual diff and merge tool https://meldmerge.org/ Meld helps you compare files, directories, and version contro…

【MATLAB源码-第50期】基于simulink的BPSK调制解调仿真,输出误码率。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 1. Bernoulli Binary: 这个模块生成伯努利二进制随机数&#xff0c;即0或1。这些数字表示要传输的原始数字信息。 2. Unipolar to Bipolar Converter: 此模块将伯努利二进制数据从0和1转换为-1和1&#xff0c;这是BPSK调制的…

C语言之offsetof实现分析(九十一)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

基于Springboot+Vue的Java项目-高校心理教育辅导系统开发实战(附演示视频+源码+LW)

大家好&#xff01;我是程序员一帆&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &am…

Thread 类的基本用法

目录 一.线程创建 1.方法&#xff08;1&#xff09;继承Thread来创建一个线程类 2.方法(2)实现 Runnable 接⼝ 3.方法&#xff08;3&#xff09;匿名内部类创建 Thread ⼦类对象 二.线程的中断 三.线程等待 4.线程休眠 一.线程创建 Java 中的线程&#xff08;Thread&am…

001_IoT/物联网通信协议基础: HTTP、Websocket、MQTT、AMQP、COAP、LWM2M一文搞懂

001_IoT/物联网通信协议基础: HTTP、Websocket、MQTT、AMQP、COAP、LWM2M一文搞懂 文章目录 001_IoT/物联网通信协议基础: HTTP、Websocket、MQTT、AMQP、COAP、LWM2M一文搞懂创作背景通信模型ISO/OSI七层模型 和 TCP/IP四层模型网络通信数据包格式&#xff08;Ethernet II&…

在MOS管栅极前加100Ω电阻,有啥妙用

我们经常会听到在MOSFET栅极前增加一个电阻。那么&#xff0c;为什么要增加这个电阻&#xff0c;进一步地来讲&#xff0c;为什么要增加一个100Ω电阻&#xff1f; 在MOSFET的栅极前增加一个电阻&#xff1f; MOS管是电压型控制器件&#xff0c;一般情况下MOS管的导通&#x…

基于ollama搭建本地chatGPT

ollama帮助我们可以快速在本地运行一个大模型&#xff0c;再整合一个可视化页面就能构建一个chatGPT&#xff0c;可视化页面我选择了chat-ollama&#xff08;因为它还能支持知识库&#xff0c;可玩性更高&#xff09;&#xff0c;如果只是为了聊天更推荐chatbox 部署步骤 下载…

unity记一下如何播放动画

我使用的版本是2022.3.14fc 展开你的模型树&#xff0c;是会出现这个三角形的东西的 然后在资源面板创建一个animation controller 进去之后&#xff0c;把三角形拖进去&#xff0c;就会出现一个动画&#xff0c;然后点击他 在左侧给他创建这么个状态名字&#xff0c;类型…

xss常用标签和触发事件

无过滤情况 <script> <scirpt>alert("xss");</script> <img> 图片加载错误时触发 <img src"x" οnerrοralert(1)> <img src"1" οnerrοreval("alert(xss)")> 鼠标指针移动到元素时触发 <im…