软件工程(速成)——总结

1.软件工程主要分为两种研究方法:结构化的研究方法和面向对象的研究方法

结构化的设计方法


软件工程与软件危机
2.软件危机定义:软件开发和维护过程中遇到的一系列严重问题
软件危机产生原因:与软件本身的特性有关(无形、副本制作简单、无磨损)、与软件开发和维护的方法不正确有关

3.软件生命周期(考点
软件生命周期可以分为——三个时期八个阶段
三个时期:软件定义、软件开发、软件维护
八个阶段:问题定义、可行性研究、需求分析;概要(总体)设计、详细设计、编码和单元测试、综合测试;运行维护。
其中,各阶段的目的(任务):
(1)可行性研究:不是解决问题,而是要知道问题是否值得被解决
(2)需求分析:明确地知道系统必须要做什么
(3)概要(总体)设计:系统应该如何实现
(4)详细设计:逻辑上正确地实现每个模块的功能,设计的处理过程尽可能简明易懂

4.软件工程模型(考点
瀑布模型(线性顺序、每个阶段需求明确)、快速原型模型(无反馈环、满足用户需求)、增量模型(充裕的时间学习和适应)、螺旋模型(风险驱动、迭代)、喷泉模型(面向对象、迭代)


可行性研究
5.可行性研究的方面(考点):技术可行性、经济可行性、操作可行性、(法律可行性、运行可行性)

6.可行性研究的过程(考点
(1)复查系统规模和目标
(2)研究当前正在使用的系统
(3)导出新系统高层逻辑模型
(4)重新定义问题
(5)导出和评价供选择的方案
(6)推荐行动方针
(7)草拟开发计划
(8)书写文档提交审查

7.数据流图(DFD)(考点:需要掌握至少两层数据流图的画法):一种图形化技术,描绘信息流和数据从输入移动到输出的过程中所经受的变换

8.数据字典的概念:关于数据信息的集合,对数据流图中包含所有元素定义的集合
数据字典的内容:数据流、数据元素、数据存储、处理
数据字典的用途:作为分析阶段的工具


需求分析
9.分析建模
(1)三种模型:数据模型、功能模型、行为模型
(2)三种模型对应:实体-关系图、数据流图、状态图
(3)数据字典是分析模型的核心

10.实体-联系图(ER图)
数据对象、属性、联系(1:1、1:n、m:n)


总体设计
11.总体设计主要分为两个阶段:系统设计阶段(确定系统具体实现方案)和结构设计阶段(确定软件结构)

12.耦合(考点
(强->弱)内容耦合、公共环境耦合、控制耦合、数据耦合
设计要求:尽量使用数据耦合、少用控制耦合、控制公共环境耦合的范围、完全不用内容耦合

13.内聚(考点
低内聚:偶然内聚、逻辑内聚、时间内聚
中内聚:过程内聚、通信内聚
高内聚:顺序内聚、功能内聚
设计要求:力争做到高内聚

14.描绘软件结构的图形工具:层次图、HIPO图、结构图

15.交换流和事务流的变换分析


详细设计
16.过程设计的工具:程序流程图、盒图(N-S图)、PAD图、判定表、判定树、过程设计语言(PDL或伪码)


面向对象的设计方法


面向对象方法学
17.面向对象方法学的要点:任何事物都是对象;把所有对象分成各种对象类,每个对象类定义一组数据和一组方法;按照子类和父类的关系,可把若干对象类组成一个层次结构系统;对象之间仅能通过传递信息联络

18.面向对象方法学的优点:与人类习惯的思维方式一致;稳定性好;可重用性好;较易开发大型软件产品;维护性好

19.面向对象的概念:
对象:具有相同状态的一组操作的集合
(对象的特点:以数据为中心、主动、实现数据封装、本质上并行、模块独立)
类:对具有相同属性或行为的一个或多个对象的描述
实例:由某个特定的类描述一个具体的对象
消息:对象操作的规格说明
(消息的组成:接收消息的对象、消息选择符、零个或多个变元)
方法:对象所能执行的操作
属性:类中所定义的数据
封装:把数据和实现操作的代码集中起来放在对象内部
继承:直接获得已有的性质和特征
多态性:子类可以像父类那样使用
重载:函数重载:同一个作用域内,参数特征不同的函数可以使用相同的函数名;运算符重载:同一个运算符可以施加于不同类型的操作数上面

20.面向对象建模
对象模型:描述系统数据结构
(1)描述实体的对象和对象之间的联系,描述了系统的静态结构
(2)为动态模型和功能模型提供实质性框架
动态模型:描述系统控制结构(状态图)
功能模型:描述系统功能(用例图、数据流图)

21.三种模型之间的关系:相互补充、相互配合

22.类与类之间存在的四种关系:关联、继承、依赖、细化

23.类图具有哪些性质:描述类与类之间静止关系;静态模型;一个系统可以由多张类图来描述;一个类也可以出现在几张类图中

24.一幅用例图包含的模型元素:系统、行为者、用例、用例之间关系

25.创建用例模型的步骤(工作):定义系统、寻找行为者和用例、描述用例、确定用例之间的关系、确定模型


面向对象分析
26.面向对象分析的过程:分析陈述用户需求的文件;发现和改正原始陈述的二义性和不一致性,补充遗漏的内容;深入理解用户需求,抽象出目标系统的本质属性,并用模型准确地表达出来(寻找类与对象、识别结构、识别主题、确认属性、建立动态模型、建立功能模型、定义服务)

27.五个层次和五个活动
主题层、类与对象层、结构层、属性层、服务层
找出类与对象、识别结构、识别主题、定义属性、定义服务


面向对象设计
28.面向对象设计的准则:模块化、抽象、信息隐藏、弱耦合、强内聚、可重用


软件测试
29.软件测试的目的或定义
(1)软件测试是为了发现程序中的错误而执行程序的过程
(2)好的测试方案极可能是发现迄今为止尚未发现的错误的测试方案
(3)成功的测试是发现至今为止尚未发现的错误的测试

30.软件测试的步骤
单元(模块)测试(白盒)、子系统测试(白盒+黑盒)、系统测试(黑盒)、确认(验收)测试(黑盒)、平行运行

31.软件测试用例设计
(1)白盒测试技术(前期-结构)
测试用例=测试数据+预期的结果
考点)逻辑覆盖:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖
(2)黑盒测试技术(后期-功能)
与白盒测试技术互补
考点)用例尽可能简单、一个测试用例尽可能指出一类问题

32.单元测试与软件编码属于同一个阶段

33.集成测试策略(方法):非渐增式、自顶向下、自底向上、混合

34.确认(验收)测试检验软件的有效性
软件有效性的检验标准:需求分析阶段的软件规格说明书

35.调试:测试发现错误之后排除错误的过程
调试的方法:蛮干法、回溯法、原因排除法

36.软件的可靠性(考点):估计错误总数;完成测试需要改正的错误数

  • 12
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Keil μVision是一款功能强大的集成开发环境(IDE),特别适用于嵌入式系统开发。下面是如何快速入门和使用Keil μVision软件的步骤: 1. 下载和安装:首先,从Keil官方网站下载Keil μVision软件,并按照安装向导进行安装。完成安装后,您将能够开始使用软件。 2. 创建新项目:打开Keil μVision软件后,在主菜单中选择“Project”>“New Project”来创建一个新项目。选择项目名称和存储位置,然后确定。 3. 配置设备:在创建项目后,您需要选择目标硬件设备。通过菜单中的“Project”>“Options for Target”来配置目标设备,包括选择芯片型号和设置时钟频率等。 4. 编写代码:在Keil μVision软件的源文件管理器中,创建和编辑您的代码文件。您可以使用C、C++或汇编语言来编写代码,以满足项目的需求。 5. 调试和仿真:Keil μVision具有强大的调试功能。通过在主菜单中选择“Debug”>“Start/Stop Debug Session”来启动调试会话。您可以在调试窗口中单步执行代码,观察变量的值以及程序状态等。 6. 编译和构建:通过点击主菜单中的“Build”按钮,Keil μVision会编译和构建您的项目。如果没有错误出现,则会生成可执行文件。 7. 下载和运行:最后,在主菜单中选择“Flash”>“Download”来将可执行文件下载到目标设备上。接下来,您可以启动设备并测试您的程序。 总之,Keil μVision软件通过提供友好的用户界面和强大的功能来帮助嵌入式开发人员快速开发和调试程序。通过按照以上步骤进行操作,您将能够迅速掌握和使用Keil μVision软件进行嵌入式开发。 ### 回答2: Keil μVision是一款广泛应用于嵌入式系统开发的集成开发环境(IDE)软件。以下是关于如何快速学习和使用Keil μVision的一些建议。 首先,了解Keil μVision的基本特点和功能。该软件提供了编辑、编译、调试等各种开发工具,可以支持多种处理器架构和编程语言。这些基本功能对于嵌入式系统开发至关重要,因此应该花些时间研究和理解它们。 其次,学习Keil μVision的界面和工具布局。熟悉软件的界面可以帮助您更高效地使用它。了解各种窗口、工具栏、菜单和选项卡的用途和作用,以及如何最大程度地利用它们来进行开发工作。 接下来,掌握Keil μVision的工程管理和配置。学习如何创建新工程、添加源代码文件、配置编译选项和调试设置等。了解这些关键步骤可以让您更好地组织和管理自己的项目。 然后,掌握代码编辑和编译。Keil μVision提供了强大的代码编辑器和编译器,您可以在其中编写、调试和优化代码。了解代码编辑器的各种功能,例如自动完成、代码折叠和格式化等。并学习如何编译代码并生成可执行文件。 最后,学习如何使用Keil μVision进行调试。这是软件的一个重要功能,可以帮助您查找和修复程序中的错误和问题。掌握断点设置、变量查看和寄存器监视等调试技巧,可以有效地辅助您进行程序调试。 总体来说,学习和掌握Keil μVision需要一定的时间和实践。建议您通过阅读相关的教程和文档,以及尝试模拟项目进行实践。通过不断地练习和尝试,您可以逐渐熟悉和掌握这个强大的嵌入式开发工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值