当前位置: 首页 > news >正文

系统开发与运行知识

系统开发与运行知识

导航

文章目录

  • 系统开发与运行知识
  • 导航
    • 一、软件工程
    • 二、软件生命周期
    • 三、开发模型
    • 四、开发方法
    • 五、需求分析
      • 结构化分析
    • 六、数据流图
      • 分层数据流图的画法
      • 设计注意事项
    • 七、数据字典
      • 数据字典的内容
    • 八、系统设计
    • 九、结构化设计常用工具
    • 十、面向对象
    • 十一、UML
    • 十二、软件测试
      • 测试过程
      • 测试原则
      • 测试类型

一、软件工程

软件危机

软件工程

  • 三个要素:
    1. 方法:是指完成软件开发的各项任务的技术方法
    2. 工具:是指为运用方法而提供的软件工程支撑环境
    3. 过程:是指为获得高质量的软件所需要完成的一系列任务

二、软件生命周期

image-20240520171407761

三、开发模型

image-20240520171738829

image-20240520173127062

image-20240520173232827

image-20240520173326646

image-20240520173519518

image-20240520173607843

四、开发方法

image-20240520215937872

五、需求分析

软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望。

软件需求他是指用户解决问题或达到目标所需要的条件或能力,是系统要满足合同、标准、规范或其他正式规定文档所需具有的条件或者能力,以及反映这些条件或能力的文档说明

结构化分析

  • 数据流图:是一种最常用的结构化分析工具,它从数据传递和加工的角度,以图形的方式刻画系统内数据的运行情况。

  • 数据字典:

    加工处理逻辑描述

    • 结构化语言
    • 判定表
    • 判定树

六、数据流图

image-20240520223928122

image-20240520224057641

分层数据流图的画法

  • 画系统的输入和输出
  • 画系统的内部
  • 画加工的内部
  • 对第3步分解出来的DFD子图中的每个加工,重复第3步的分解,直到图中尚未分解的加工都足够简单为止

设计注意事项

  • 适当取名,避免空洞的名字
  • 加工输入、输出不应同名
  • 允许一个加工有多个数据流流向另一个加工
  • 允许一个加工有两个相同的输出数据流流向两个不同的加工
  • 一个存储首次出现时只与一个加工有关,则该存储应作为加工的内部,而不必画出
  • 表现的是数据流而不是控制流
  • 保持父图与子图的平衡
  • 保持数据守恒
  • 每个加工必须既有输入数据流,又有输出数据流
  • 整套数据流图中,每个数据存储必须既有读,又有写的数据流;但某一张子图中可以只有读或者写

七、数据字典

数据字典的内容

  • 数据元素(数据项):包括数据项名,数据项含义说明、别名、数据类型长度、取值范围、取值含义、与其他数据项的逻辑关系。
  • 数据结构:数据结构它是用来描述数据元素之间的关系。
  • 数据流:它是由一个或一组数据元素所组成的。
  • 加工逻辑:数据流图中功能块的说明。数据存储:数据流图中数据块的存储特性说明。

八、系统设计

image-20240521152558815

image-20240521155119829

image-20240521155204917

image-20240521155300615

九、结构化设计常用工具

image-20240521223052896

十、面向对象

image-20240522091034315

十一、UML

image-20240522091546871

image-20240522091738332

十二、软件测试

测试意义与目的

测试过程

  • 制定测试计划
  • 编制测试大纲
  • 根据测试大纲设计和生成测试用例,产生测试设计说明文档
  • 实施测试
  • 生成测试报告

测试原则

  • 尽早、不断的进行测试
  • 程序员避免测试自己设计的程序
  • 既要选择有效、合理的数据,也要选择无效、不合理的数据
  • 修改后应进行回归测试
  • 尚未发现的错误数量与该程序已发现错误数成正比

测试类型

  1. 动态测试

    • 黑盒测试法

    • 白盒测试法

    • 灰盒测试法

  2. 静态测试

    • 桌前检查

    • 代码审查

    • 代码走查

image-20240522103634905

image-20240522104121754

image-20240522104426107

相关文章:

  • 智慧农田视频监控技术应用:智能监管引领农业新时代
  • 【Python设计模式01】面向对象基础
  • Oracle递归查询笔记
  • LeetCode 2951.找出峰值:模拟(遍历)
  • windows ip助手函数了解
  • 前端本地项目启动供后端或者测试调试
  • Java实现图片保存到pdf的某个位置2
  • 基于Matlab的车道线检测系统 (文末有代码获取链接)【含Matlab源码 MX_001期】
  • C# WPF编程基础
  • 外汇天眼:风险预警!以下平台监管牌照被撤销!
  • 2024年5月22日 (周三) 叶子游戏新闻
  • 国产数据库替代加速 助力数字中国建设
  • firewalld
  • 小小字符串竟然如此嚣张 —— 聊聊 Java 的 String
  • 四川景源畅信:新人做抖店的成本很高吗?
  • 《剑指offer》分解让复杂问题更简单
  • 「译」Node.js Streams 基础
  • Apache Spark Streaming 使用实例
  • codis proxy处理流程
  • css的样式优先级
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • iOS编译提示和导航提示
  • Java|序列化异常StreamCorruptedException的解决方法
  • js写一个简单的选项卡
  • Laravel 中的一个后期静态绑定
  • Promise初体验
  • vue.js框架原理浅析
  • Webpack 4 学习01(基础配置)
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 爬虫模拟登陆 SegmentFault
  • 如何编写一个可升级的智能合约
  • Python 之网络式编程
  • 回归生活:清理微信公众号
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • ​什么是bug?bug的源头在哪里?
  • (26)4.7 字符函数和字符串函数
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (javascript)再说document.body.scrollTop的使用问题
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (精确度,召回率,真阳性,假阳性)ACC、敏感性、特异性等 ROC指标
  • (未解决)macOS matplotlib 中文是方框
  • * CIL library *(* CIL module *) : error LNK2005: _DllMain@12 already defined in mfcs120u.lib(dllmodu
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET Micro Framework 4.2 beta 源码探析
  • .NET MVC之AOP
  • .Net Redis的秒杀Dome和异步执行
  • .NET 应用启用与禁用自动生成绑定重定向 (bindingRedirect),解决不同版本 dll 的依赖问题
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .NET正则基础之——正则委托
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑
  • @AliasFor注解