计算机二级 Python备考笔记

您所在的位置:网站首页 需求分析是软件开发工作的基础 计算机二级 Python备考笔记

计算机二级 Python备考笔记

2023-05-03 14:36| 来源: 网络整理| 查看: 265

软件工程基础

软件是程序、数据和文档的集合。//软件是指与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。

系统软件是管理计算机的资源,提高计算机的使用效率,为用户提供各种服务的软件,如操作系统、数据库管理系统、编译程序、汇编程序和网络软件等。

应用软件是为了应用于特定的领域而开发的软件,如认识管理系统、WPS编辑软件、杀毒软件。

需求分析阶段的工作可以分为4个方面:需求获取、需求分析、需求规格说明书编写和需求评审。需求分析产生的主要文档是需求规格说明书。

软件需求规格说明书应该明确软件的功能、性能、数据、界面等要求,从而确定系统的逻辑模型。算法详细设计是详细设计阶段的工作。

可行性报告:用于确定软件项目是否进行开发,产生于软件定义阶段

需求分析规格说明书,

软件开发计划,

测试报告,

软件需求规格说明书要酒盖用户对系统的所有需求,包括功能要求、性能要求、接口要求、设计约束等。软件需求规格说明书的可验证性指描述的每一个需求都可在有限代价的有效过程中验证确认对于软件没有可验证性。

使用结构图描述软件系统的层次和分块结构关系,它反映了整个系统的功能实现以及模块与模块之间的联系与通信,是未来程序中的控制层次体系。

原子模块:没有从属节点的模块/树中位于叶子结点的模块。

宽度:指最大模块数的层的控制跨度(横向最大模块数)。

深度:表示控制的层数。

扇出:指由一个模块直接调用的其他模块的个数。

扇入:指调用一个给定模块的模块个数。

结构图是描述软件系统结构的图形工具。

🫧软件测试的实施过程主要有4个步骤:单元测试、集成测试、确认测试(验收测试)和系统测试。

* 单元测试也称模块测试,模块是软件设计的最小单位,单元测试是对模块进行正确性的检验,以期尽早发现各模块内部可能存在的各种错误,通常在编码阶段进行。

* 集成测试是测试和组装软件的过程,把模块在按照设计要求组装起来的同时进行测试,是为了发现与接口有关/概要设计的错误。集成测试时将模块组装成程序通常采用两种方式:非增量方式和增量方式组装。

 非增量方式也称为一次性组装方式

 增量方式又分为自顶向下、自底向上、自顶向下与自底向上相结合的混合增量方法。

确认测试的任务是:

 验证软件的功能和性能以及其他特征是否满足了需求规格说明中确定的各种需求,以及软件配置是否完全、正确。

软件测试的对象包括:源程序、目标程序、数据及相关文档

软件产品必须提供用户所需的功能,如果做不到这一点,什么产品都没有意义。软件首先满足用户的功能需求。

🫧测试方法:

 黑盒测试又称功能测试或数据驱动测试,着重测试软件功能。黑盒测试依据需求规格说明书的功能描述。黑盒测试技术依据是软件功能的描述。

 黑盒测试方法和技术有等价类划分法、边界值分析法、错误推测法和因果图等。

 白盒测试的主要技术有逻辑覆盖测试、基本路径测试,其中逻辑覆盖测试包括语句覆盖、路径覆盖、判定覆盖、条件覆盖、判断-条件覆盖。

 静态测试不实际运行软件,主要通过人工进行分析。

 动态测试就是通常所说的上机测试,通过运行软件来检验软件中的动态行为和运行结果的正确性。

基本路径测试根据软件过程性描述中的控制流确定程序的环路复杂性度量用此度量定义基本路径集合,并由此导出一组测试用例对一条独立执行路径进行测试。

基本路径测试需要运行程序,属于动态测试。

测试用例 (Test Case) 是为测试设计的数据,由测试输入数据和与之对应的预期输出结果两部分组成。

软件设计中,常用的过程设计工具有:

 结构图

 图形工具:程序流程图、N-S图、PAD图、HIPO图

 表格工具:判定表

 语言工具:PDL(伪码)

🟡需求分析方法

* 结构化分析方法

    * 结构化分析方法的常用工具:数据流图(DFD图)、数据字典(DD)、判定表、判定树

* 面向对象分析方法

数据流图DFD(data flow diagram)

 是系统逻辑模型的图形表示,从数据传递和加工的角度,来刻画数据流从输入到输出的移动变化过程,它直接支持系统的功能建模(作用)。

 描述数据处理过程的工具,直接支持系统的需求建模,需求理解的逻辑模型的图形表示 

 构造规则和注意事项:

  对加工处理建立唯一层次性的编号,且每个加工处理通常要求既有输入又有输出

  数据存储之间不应有数据流

  数据流图的一致性,即输入输出、读写的对应

  父图、子图关系与平衡规则。

   相邻两层DFD之间具有父子关系,

   子图代表了父图之间某个加式的详细描述

   父图表示了子图间的接口

   子图个数不大于父图中的处理个数

   所有子图的输入输出数据流和父图中相对应处理的输入输出数据流必须一致

软件测试是为了发现错误而执行程序的过程,只发现错误而不改正错误。

程序调试的任务是诊断和改正程序中的错误。

软件工程包含方法、工具和过程3个要素。

 方法是完成软件开发各项任务的技术手段;

 工具支持软件的开发、管理、文档生成;

 过程支持软件开发的各个环节的控制、管理。

软件的三要素是程序、数据、相关文档。

大量的软件设计的实践证明,以下的设计准则可以借鉴为设计的指导和对软件结构图进行优化。这些准则是:

提高模块独立性

模块规模适中

深度、宽度、扇入和扇出适当

使模块的作用域在该模块的控制域内

应减少模块的接口和界面的复杂性

设计成单入口、单出口的模块

设计功能可预测的模块。

结构化程序设计的目的:

 通过设计结构良好的程序,以程序静态良好的结构保证程序动态执行的正确性,使程序易理解、易调试、易维护,以提高软件开发的效率,减少出错率,因此结构化程序强调程序的易读性。

当文件以文本方式打开时,读写按照字符串方式;

当文件以二进制方式打开时,读写按照字节流方式。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3