电子斜技大学 软件技术基础 5.3软件开发过程 主讲教师:刘民岷 航空航天学院 a口2 软件技术基础课程组
软件技术基础 主讲教师:刘民岷 航空航天学院 软件技术基础课程组
1、需求分析 需求分析之前的可行性研究 一技术可行性 THE SOFTWARE DEVELOPMENT -经济可行性 CYCLE -操作可行性 ● 需求分析的任务:用户和软件人员进一步理解需求, 并将双方的共同理解表达成一致接受的“需求说明 书” 需求说明书的作用 -作为用户和开发者的合同,为双方相互了解提供基础; -作为开发者进行设计和编程的根据; -作为软件开发完成后验收的依据。 电子科技大学刘民岷 软件开发过程 2
电子科技大学 刘民岷 软件开发过程 2 ⚫ 需求分析之前的可行性研究 –技术可行性 –经济可行性 –操作可行性 ⚫ 需求分析的任务:用户和软件人员进一步理解需求, 并将双方的共同理解表达成一致接受的“需求说明 书” ⚫ 需求说明书的作用 –作为用户和开发者的合同,为双方相互了解提供基础; –作为开发者进行设计和编程的根据; –作为软件开发完成后验收的依据
1.1结构化分析方洁 结构化分析方法(Structured Analysis),简称SA,适用于 分析大型数据处理系统。通常和结构化设计方法SD联合 使用 SA方法通常用数据流图表达需求,数据词典记录数据的 逻辑定义。 软件工程中控制复杂性的基本手段: 一分解:大问题分割成小问题,分别解决 一抽象:用最本质属性考虑子系统,略去细节 用$A方法进行需求分析的一般步骤: 建立当前系统的“具体模型”:一“怎样做” 一抽象出当前系统的逻辑模型:-“做什么” -建立目标系统的逻辑模型:SA的最终目标; 一考虑人机界面和其他问题:环境、出错处理、系统启停、 I/O等 电子科技大学刘民岷 软件开发过程 3
电子科技大学 刘民岷 软件开发过程 3 ⚫ 结构化分析方法(Structured Analysis),简称SA,适用于 分析大型数据处理系统。通常和结构化设计方法SD联合 使用 ⚫ SA方法通常用数据流图表达需求,数据词典记录数据的 逻辑定义。 ⚫ 软件工程中控制复杂性的基本手段: – 分解:大问题分割成小问题,分别解决 – 抽象:用最本质属性考虑子系统,略去细节 ⚫ 用SA方法进行需求分析的一般步骤: – 建立当前系统的“具体模型”:-“怎样做” – 抽象出当前系统的逻辑模型:-“做什么” – 建立目标系统的逻辑模型:SA的最终目标; – 考虑人机界面和其他问题:环境、出错处理、系统启停、 I/O等
1.2面向对象分析方法 面向对象(Object Oriented)方法简称为OO方法。 “面向对象”技术追求的是软件系统对现实世界的直接 模拟,尽量实现将现实世界中的事物直接映射到软件系 统的解空间。 面向对象的程序设计技术是以对象为基础,以消息驱动 对象实现操作的一种全新的程序设计方法。 OO方法最早出现在挪威奥斯陆大学和挪威计算中心共 同研制的仿真语言Simula67中。 1980年随美国加州的Xerox?研究中心推出的SmallTalk80 语言,使得0O方法得以较完善地实现。 90年代初,O0方法和OOP语言开始成熟。 到2000年,O0方法将成为软件开发的首选方法而受到 越来越多的程序设计人员的青睐。 电子科技大学刘民岷 软件开发过程 4
电子科技大学 刘民岷 软件开发过程 4 ⚫ 面向对象(Object Oriented)方法简称为OO方法。 ⚫ “面向对象”技术追求的是软件系统对现实世界的直接 模拟,尽量实现将现实世界中的事物直接映射到软件系 统的解空间。 ⚫ 面向对象的程序设计技术是以对象为基础,以消息驱动 对象实现操作的一种全新的程序设计方法。 ⚫ OO方法最早出现在挪威奥斯陆大学和挪威计算中心共 同研制的仿真语言Simula67中。 ⚫ 1980年随美国加州的Xerox研究中心推出的SmallTalk 80 语言,使得OO方法得以较完善地实现。 ⚫ 90年代初,OO方法和OOP语言开始成熟。 ⚫ 到2000年,OO方法将成为软件开发的首选方法而受到 越来越多的程序设计人员的青睐
2、软件设计 任务和目标 -任务:将分析阶段获得的需求说明转换为计算机中可实现 的系统,完成系统的结构设计(数据结构、程序结构), 提交软件设计说明书。 -目标: -提高可靠性:包括正确性和健壮性; -提高可维护性:可读性、可扩充性、可修改性; -提高可理解性:模块化、界面清晰、规格说明清晰无歧 义; -提高效率:时间、空间效率; THE SOFTWARE DEVELOPMENT CYCLE 电子科技大学刘民岷 软件开发过程 5
电子科技大学 刘民岷 软件开发过程 5 ⚫ 任务和目标 –任务:将分析阶段获得的需求说明转换为计算机中可实现 的系统,完成系统的结构设计(数据结构、程序结构), 提交软件设计说明书。 –目标: –提高可靠性:包括正确性和健壮性; –提高可维护性:可读性、可扩充性、可修改性; –提高可理解性:模块化、界面清晰、规格说明清晰无歧 义; –提高效率:时间、空间效率;