软考中级软件设计师自我总结知识分享--结构化开发方法

简介: 该系列文章全篇文字在10w+,全文都是自己备考中的干货,软考涉及很多计算机基础,数据结构,算法分析,编程思想,开发流程等等,不仅适合参加软考的人学习,也适合扩宽自己知识视野的人去学习,每一篇都将会把重点加粗处理,特别是易错点,考试常考平时也容易记错,请一定仔细看!

章节梳理


网络异常,图片无法展示
|


  • 结构化分析方法是一种面向对象数据流的需求分析方法,适用于分析大型数据处理系统,是一种简单,实用的方法,现在已经得到广泛的使用。
  • 结构化分析方法的基本思想是自顶向下逐层分解。SA方法的分析结果由:一套分层的数据流图(DFD),一本数据词典,一组小说明和补充材料。
  • DFD的基本成分:外部实体:指的是存在于软件系统之外的人员或组织,用于指出系统所需数据的发源地和系统所产生的数据的归宿地。
  • 加工:描述了输入数据流到输出数据流之间的变换,也就是输入数据流经过什么处理后变成了输出数据流。
  • 数据存储:用来表示存储的数据,每个数据存储都有一个名字。
  • 数据流:由一组固定成分的数据组成,表示数据的流向。

网络异常,图片无法展示
|


网络异常,图片无法展示
|


网络异常,图片无法展示
|


网络异常,图片无法展示
|


错题整合


关于覆盖:

·  语句覆盖是指选择足够的测试用例,使得运行这些测试用例时,被测程序的每一个语句至少执行一次,其覆盖标准无法发现判定中逻辑运算的错误;

·  判定覆盖<又叫分支覆盖率>是指选择足够的测试用例,使得运行这些测试用例时,每个判定的所有可能结果至少出现一次,但若程序中的判定是有几个条件联合构成时,它未必能发现每个条件的错误;

·  条件覆盖是指选择足够的测试用例,使得运行这些测试用例时,判定中每个条件的所有可能结果至少出现一次,但未必能覆盖全部分支;

·  判定/条件覆盖是使判定中每个条件的所有可能结果至少出现一次,并且每个判定本身的所有可能结果也至少出现一次;

·  修正条件判定覆盖满足条件与判定覆盖,并且需要确定每个条件能够影响到包含的判定的结果。

·  条件组合覆盖是使每个判定中条件结果的所有可能组合至少出现一次,因此判定本身的所有可能解说也至少出现一次,同时也是每个条件的所有可能结果至少出现一次;

·  路径覆盖是每条可能执行到的路径至少执行一次

  • 软件测试的目的在于希望以最少的人力和时间发现潜在的各种错误和缺陷。
  • 需求分析阶段的任务是确定软件系统功能,通常用数据流图,ER,状态转换图,数据字典描述系统的逻辑模型。
  • 公共耦合是指通过一个公共数据环境相互作用的那些模块间的耦合,公共数据环境可以是全局变量或数据结构,共享的通信,内存的公共覆盖及任何存储介质上的文件。
  • 仓库风格:具有解决问题的多方法性、支持可更改性和可维护性、有重用的知识源、支持容错性和健壮性。仓库风格包括数据库系统,黑板系统,超文本系统。
  • 三明治策略的优点:是从自顶向下和自底向上两种方式优点的综合,所以可以较早地验证了主要的控制和判断点且较早地验证了底层模块,同时由于可以由两端向中间发展,所以效率比较高。
  • NS盒图仅含5种图形结构:顺序,选择,多分支选择型,While循环型,Util循环型。能够清楚地表示复杂的条件组合和应做的动作之间的对应关系
  • 内聚性:通信内聚>过程内聚>时间内聚>逻辑内聚
  • 自底向上的集成:优点--对底层组件行为较早验证,工作最初可以并行集成,比自顶向下效率高;减少了桩的工作量;支持故障隔离。缺点--驱动的开发工作量大;对高层的验证被推迟,设计上的错误不能被及时发现。
  • 软件设计阶段就应该考虑软件的可维护性。
  • 逆向工程是根据己有的东西和结果,通过分析来推导出具体的实现方法。逆向工程的目的是使软件得以维护。
  • 数据流图有8个设计原则:数据守恒原则(对于任何一个加工来说,其所有输出数据流种数据必须能从该加工的输入数据流中直接获得,或者说是通过该加工能产生的数据中获得)、守恒加工原则(对同一个加工来说,输入与输出的名字必须不相同,即使它们的组成成分相同)、奇迹、黑洞、外部实体之间不存在数据流、外部实体与数据存储不存在数据流、数据存储与数据存储之间不存在数据流、父图与子图的平衡原则、数据流与加工有关,且必须经过加工。
  • 数据流图建模应遵循自顶向下、从抽象到具体的原则
目录
相关文章
|
2月前
|
SQL 算法 架构师
【软件设计师备考 专题 】程序设计评审的重要性和方法
【软件设计师备考 专题 】程序设计评审的重要性和方法
70 0
|
2月前
|
敏捷开发 测试技术 持续交付
【软件设计师备考 专题 】系统开发准备:选择开发方法
【软件设计师备考 专题 】系统开发准备:选择开发方法
41 0
|
2月前
|
存储 运维 安全
【软件设计师备考 专题 】系统分析基础:理解系统分析的目的和任务
【软件设计师备考 专题 】系统分析基础:理解系统分析的目的和任务
61 0
|
2月前
|
存储 安全 算法
【软件设计师备考 专题 】软件设计的艺术:分析与集成、逐步求精、抽象、信息隐蔽
【软件设计师备考 专题 】软件设计的艺术:分析与集成、逐步求精、抽象、信息隐蔽
58 0
|
2月前
|
设计模式 测试技术 开发工具
【软件设计师备考 专题 】软件工程基础:理解软件开发生命周期
【软件设计师备考 专题 】软件工程基础:理解软件开发生命周期
47 0
|
2月前
|
开发框架 编译器 测试技术
【软件设计师备考 专题 】系统开发准备:环境和计划
【软件设计师备考 专题 】系统开发准备:环境和计划
49 0
|
2月前
|
存储 监控 安全
【软件设计师备考 专题 】计算机安全性基本概念
【软件设计师备考 专题 】计算机安全性基本概念
63 0
|
2月前
|
存储 安全 数据库
【软件设计师备考 专题 】企业信息资源管理基础知识
【软件设计师备考 专题 】企业信息资源管理基础知识
54 0
|
5月前
|
监控 项目管理
③ 软件工程CMM、CMMI模型【软考中级-软件设计师 考点】
③ 软件工程CMM、CMMI模型【软考中级-软件设计师 考点】
69 0
|
11月前
|
存储 缓存 NoSQL
软考_系统设计架构师--备考重点建议与心得
软考_系统设计架构师--备考重点建议与心得