当前位置:文档之家› 应用软件设计与开发ppt课件

应用软件设计与开发ppt课件

软件工程以系统工程的方法制作软件产品,它包括:
▪ 软件的系统(生存期)模型; ▪ 与此模型相对应的各种规范和标准; ▪ 为达到这些规范、标准的方法和工具; ▪ 软件生产、交付、使用、维护的全面管理。
• 任何软件都和其他产业的产品一样,由专业人员(制作 软件中是系统分析员、高级程序员、程序员),以系统 的、工程的方法开发制作,并提供全方位的售后服务管 理。
11.2 软件生存周期
• 软件生存周期的瀑布模型
用户需要
系统分析
系统规格说明书,可行性分析报告
硬件需求分析
软件需求分析
软件规格说明书,软件项目计划,初步用户手册
软件生存周期可分为计划、 开发、运行三个时期。 其中计划时期有问题定义 和可行性研究 ;开发时期 有需求分析、设计、编码 和测试;运行时期系统运 行维护阶段 。
成本 100%
硬件
50%
软件
55
60
65
70
75
80
85
90
• 1968年软件业界和科学工作者提出了软件工程的思想:任何软件
都应当和其它产业的产品一样,由专业人员制作(软件中是系统
分析员、高级程序员、程序员),以系统的、工程的方法开发,
并提供全方位的售后服务管理(不能因开发者离开调走而无人管)。
软件工程学是研究软件开发和维护的普遍原理与技术的一 门工程学科。所谓软件工程是指,采用工程的概念、原理、 技术和方法指导软件的开发与维护。软件工程学的主要研 究对象包括软件开发与维护的技术、方法、工具和管理等 方面。
– 通过对问题及其环境的理解、分析和综合,建立分析模型。
– 在完全弄清用户对软件系统的确切要求的基础上,能够用软 件需求规格说明书把用户的需求表达出来。

♦建立分析模型、编写需求说明。
• 需求分析的步骤
– 需求获取:包括用户对软件功能的需求和界面的需求
– 需求提炼:分析建模,包括数据流图、实体联系图、控制流 图、状态转换图、用例图等。
• 运行时期 – 做好软件运行维护:通过各种维护活动使系统持久地满足用户的需 求。维护活动通常分为改正性维护、适应性维护、完善性维护和预 防性维护。
1、计划时期
(1)问题定义
目的是确定问题的性质、工程目标以及规模。力求使 软件开发人员、用户以及使用部门负责人对问题的性 质、工程目标与规模取得完全一致的看法,对取保软 件开发的成功是非常重要的。
概要设计
概要设计说明书
详细设计
设计说明书,测试大纲
编程与测试
模块测试报告, 源程序文档
测试
各种测试报告
使用维护 退役
软件创建和维护的关键活动
• 计划时期: – 问题定义阶段:要解决的问题是什么? – 可行性阶段:确定上述的问题是否有可行的解?
• 开发时期 – 需求分析阶段:解决软件“做什么”的问题。对用户在系统功能方 面的需求进行详细定义,并精确地分析系统中数据及数据之间的逻 辑关系与数据流向,从而得到经用户确认的数据流图、数据字典及 简要算法的逻辑模型,最后形成需求规格说明书,它是进行下一步 设计的依据。 – 设计阶段:在需求规格说明书的基础之上建立软件系统的结构,包 括数据结构和模块结构。此阶段分为总体设计和详细设计,前者考 虑模块的分解,后者考虑每个模块内部的细节。设计阶段要编写设 计文档:模块说明书、数据库或文件结构说明等。 – 编码阶段:用选定的程序设计语言把设计的过程性描述翻译为源程 序。 – 测试阶段:对软件全面测试,以便发现并改正程序中的错误。按不 同的层次,测试有可细分为单元测试、综合测试、确认测试和系统 测试等步骤。文档称为“测试报告”,包括测试计划、测试用例和 测试结果等内容。
第十一章 软件开发
11.1 软件工程的概念
• 程序开发是软件开发的核心,程序开发过程是:建立计 算模型、设计程序、编写代码、测试程序、交付使用, 前四个步骤统称程序设计,简称编程。
• 硬件快速发展使计算机的计算能力成倍增长,手工开发 的软件无论是在生产率方面还是在质量方面都不能满足 用户需求和市场要求,这就是所谓的“软件危机”。
• 美国电子电气工程师学会(IEEE)把软件工程定义为 以系统的、规范的定量的方法应用于软件的开发、运营 和维护,以及对这些方法的研究。
软件工程基本原理(七条)
• 用分阶段的生存周期计划严格管理 • 坚持进行阶段评审 • 实行严格的产品控制 • 采用现代程序设计技术 • 结果应能清楚地审查 • 开发小组的人员应该少而精 • 承认不断改进软件工程实践的必要性
– 需求描述:编写需求规格说明书。
– 需求验证:
• 需求分析方法:结构化分析方法SA,其适用于分析大型的数据处 理系统,特别是企事业管理方面的系统。
可行性报告大纲:
• 背景情况 • 系统描述 • 技术风险分析 • 成本/效益分析 • 操作可行性分析和法律可行性分析 • 结论
2、软件开发期
(1)需求分析
• 需求分析的任务:准确地定义未来系统的目标,确定为满足用户 的需求系统许系统必须做什么,用需求规格说明书的形式准确地
表达用户的需求。两个任务:
• 系统的方法:是指创意、开发、生产、调试、使用、维 护、退役的全过程。
• 工程方法:是指要有工程规范和工程管理。
• 软件开发方法学的研究是软件技术发展最活跃的因素。 所谓方法学(Methodology)是一组规范了的方法,按这 组方法执行,可以得到较为理想的结果。把这组方法施 行过程标准化就是软件开发标准。
Hale Waihona Puke (2)可行性研究可行性研究的步骤:
• 复查系统目标和规模 • 研究目前正在使用的系统 • 导出新系统的高层逻辑模型 • 重新定义问题 • 导出和评价供选择的方案 • 推荐一个方案并说明理由 • 草拟开发计划 • 书写文档提交审查
可行性研究从技术、经济和社会因素三方面研究并论证 软件项目的可行性,编写可行性报告,制定初步项目开 发计划。应从一下几方面进行论证: – 技术可行性 – 经济可行性 – 操作可行性 – 法律可行性
• 60年代末提出软件工程思想,以系统工程的方法全面规 划和管理软件的开发和使用,以大量辅助工具加速开发 进程,以求高效、快速地生产大量合格的软件。
• 硬件技术高速发展,成本以十年两位数的速度递减,导致了对软 件的强烈需求。而软件系统的规模越来越大、越来越复杂、开发 周期越来越长,软件的手工业生产方式使其成本急骤上升。
相关主题