软件工程第三章知识点总结

来源:互联网 发布:淘宝新店刷钻交几百元 编辑:程序博客网 时间:2024/06/06 02:32

1.需求分析概述:需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么”这个问题。

2.明确对系统的综合需求:(1)功能需求:指定系统必须提供的服务  (2)性能需求:响应时间、并发/可延伸性  (3)可靠性和可用性需求:定量、定时  (4)出错处理需求 “出错处理”指的是当应用系统发现自己犯下一个错误时所采取的行动  (5)接口需求:用户、软件、通信、IO   (6)约束:相关标准、安全性、精度、平台   (7)逆向需求:不需要的需求  (8)将来可能提出的需求

3.分析系统的数据要求:ER模型

4.逻辑模型:DFD DD ER图 功能结构图 算法

5.与用户沟通获得需求的方法:

(1)访谈  调查表  情景分析技术

(2)面向数据流自顶向下求精

(3)简易的应用规格说明技术 :首先进行初步的访谈,通过用户对基本问题的回答,初步确定待解决的问题的范围和解决方案。然后开发者和用户分别写出“产品需求”

(4)快速建立软件原型:快速原型的目的是尽快向用户提供一个可在计算机上运行的目标系统的模型,以便使用户和开发者在目标系统应该“做什么”这个问题上尽可能达成共识。

6.数据对象:对软件必须理解的复合信息的抽象。所谓复合信息是指具有一系列不同的性质或属性的事物,仅有单个值的事物(例如宽度)不是数据对象。

数据对象彼此之间是有关联的 1:1 1:N M:N

7.注意联系也有属性

8.范式

(1)第一范式 每个属性值都必须是原子值,即仅仅是一个简单的值而不含有内部结构

(2)第二范式 满足第一范式的条件,而且每个关键字属性都是由整个关键字决定(而不是由关键字的一部分决定)违反{学号,姓名,课程名,成绩},其中课程名不能完全由学号决定

(3)第三范式:符合第二范式的条件,每个非主关键字属性都仅由关键字决定,而且每一个关键字属性不能仅仅是对另一个关键字的进一步描述(即每一个非关键字属性不依赖于另一个关键字属性值) 违反{学号,姓名,出生日期,年龄} 其中年龄和出生日期

9.验证软件需求的方法:

(1)验证需求的一致性:概念一致

(2)验证需求的现实性:技术上

(3)验证需求的完整性和有效性





原创粉丝点击