【软考-架构】10.1、软件工程概述-CMM-软件过程模型-逆向工程

✨资料&文章更新✨

GitHub地址:https://github.com/tyronczt/system_architect

文章目录

软件工程基础知识

软件工程概述

软件开发生命周期:定义、开发、运行、维护。

软件系统文档:用户文档和系统文档。

软件工程过程(PDCA):软件规格说明(Plan)、软件开发(Do)、软件确认(Check)、软件演进(Action)。

软件系统工具:软件开发工具、软件维护工具、软件管理和软件支持工具。

软件设计的四个活动:数据设计、架构(体系结构)设计、人机界面(接口)设计和过程设计。

能力成熟度模型

能力成熟度模型CMM

初始级、可重复级、已定义级、已管理级、优化级。

能力成熟度模型集成CMMI

初始级、已管理级、已定义级、定量管理、优化级。

💯考试真题

第一题

答案:B D

【解析】:

  1. 系统分析阶段结束后,主要输出是对系统需求的明确描述和解决方案的初步规划。选项中,**B. 系统方案建议书 **通常是在需求分析后提出的整体解决方案文档,符合该阶段的成果。
  2. 系统测试阶段完成后 ,需要提供给用户的最终文档包括操作指南等。D. 操作手册是系统测试通过后,为用户提供的使用说明,属于该阶段完成后的工作产品。

第二题

答案:B

软件过程模型

瀑布模型(SDLC)

螺旋模型

风险分析 --> 螺旋模型

四个阶段:制订计划、风险分析、实施工程和客户评估。

V模型

V模型用于需求明确和需求变更不频繁的情形。

单元测试 --> 编码和实现 单编

集成测试 --> 详细设计 集详

系统测试 --> 概要设计 系概

验收测试 --> 需求分析 验需

原型化模型

原型化模型适用于需求不明确的情形

增量模型

喷泉模型、基于构件的开发模型、形式化方法模型

💯考试真题

第一题

答案:A

解析:功能清晰,也即需求较明确,有这样的关键字都是考察瀑布模型,牢记总结的记忆关键字。

第二题

答案:D

解析:螺旋模型的特点是风险分析,应对风险的都正确,螺旋模型适合大型软件开发。

敏捷模型

核心思想:

(1)敏捷方法是适应型而非可预测型拥抱变化,适应变化。

(2)敏捷方法是以人为本,而非以过程为本。发挥人的特性。

(3)迭代增量式的开发过程。以原型开发思想为基础,采用法代增量式开发,发行版本小型化。

主要敏捷方法

  1. 极限编程(XP):一种近螺旋式的开发方法,倡导测试先行。
  2. 水晶系列:以人为中心,每个都含有独特的角色、过程模型、工作产品和实践。
  3. 并列争球法(Scrum):一种迭代的增量化过程,把每段时间(如30天)一次的迭代称为一个"冲刺"(Sprint),并按照需求的优先级别来实现产品。
  4. 特性驱动开发方法:一个迭代的开发模型,3个要素:人、过程和技术,5个核心过程:开发整体对象模型、构造特征列表、计划特征开发、特征设计和特征构建。

统一过程模型RUP

四个阶段

  • 初始阶段
  • 细化阶段
  • 构造阶段
  • 移交阶段

三个特点

  • 用例驱动
  • 以体系结构为中心
  • 迭代与增量

逆向工程

逆向工程:软件的逆向工程是分析程序,力图在比源代码更高抽象层次上建立程序的表示过程,逆向工程是设计的恢复过程。逆向工程的四个级别:

  • 实现级
  • 结构级
  • 功能级
  • 领域级

领域级抽象级别最高,完备性最低,实现级抽象级别最低,完备性最高。

💯考试真题

第一题

答案:A D

第二题

答案:B D

解析:软件系统工具通常可以按软件过程活动将软件工具分为软件开发工具、软件维护工具、软件管理和软件支持工具。

软件开发工具:需求分析工具、设计工具、编码与排错工具。

软件维护工具:版本控制工具、文档分析工具、开发信息库工具、逆向工程工具、再工程工具。

软件管理和软件支持工具:项目管理工具、酉配置管理工具、软件评价工具、软件开发工具的评价和选择。

相关推荐
Codebee21 分钟前
“自举开发“范式:OneCode如何用低代码重构自身工具链
java·人工智能·架构
掘金-我是哪吒30 分钟前
分布式微服务系统架构第158集:JavaPlus技术文档平台日更-JVM基础知识
jvm·分布式·微服务·架构·系统架构
JohnYan39 分钟前
模板+数据的文档生成技术方案设计和实现
javascript·后端·架构
Da_秀1 小时前
软件工程中耦合度
开发语言·后端·架构·软件工程
用户21960094442852 小时前
利用布隆过滤器设计亿级用户视频浏览历史过滤系统:方案详解与内存预估
架构
Kookoos2 小时前
ABP VNext + Tye:本地微服务编排与调试
微服务·云原生·架构·tye
秋千码途4 小时前
小架构step系列06:编译配置
架构
打好高远球5 小时前
如何用AI破解相亲信息不对称
架构
泊浮目6 小时前
未来数据库硬件-网络篇
数据库·架构·云计算
鹏程十八少6 小时前
8.Android 设计模式 适配器模式 在商业项目中的落地
架构