第1章 软件工程基础

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.需求分析。 2.总体设计分析,确定该网络的服务类型,进而
确定系统建设的具体目标以及系统构件拓扑结 构等。 3.实施,即选择合适的设备,按设计方案实现网 络建设。 4.验收与维护 。
1.2软件工程
1.2.1软件 1.软件定义
(1) 在运行中能提供所希望的功能和性 能的指令集(即程序);
(2) 使程序能够正确运行的数据结构; (3) 描述程序研制过程、方法所用的文 档。
修改的 文档 代码
1.1.3人机工程
关键是处理软件与人的交互问题。 现在“人机界面友好”的要求,已成为基于计算机系
统的一项重要技术指标 。
人机工程包括下列步骤: 1.创建系统功能的外部模型 2.确定为完成此系统功能人和计算机应分别完成的任务 3.考虑界面设计中的典型问题 4.借助CASE工具构造界面原型和最终实现设计模型 5.从质量的角度对界面进行评估
概念设计(E-R图)、逻辑设计、物理设计
4.数据库的管理与维护
1.1.5网络工程
网络工程是研究网络系统的规划、设计与 管理的工程科学,要求工程技术人员根据 既定的目标,严格依照行业规范,制定网 络建设的方案,协助工程招投标、设计、 实施、管理与维护等活动。
网络工程的任务
网络工程应该完成以下任务:
1.1.4数据库工程
数据库系统是基于计算机系统的重要组成部 分,它将有关的硬件、软件、数据和数据库 管理人员结合起来,为用户提供信息服务。
数据库系统的开发方法主要有:结构化生命 周期开发方法、原型法、面向对象的开发方 法等。
数据库工程的任务
数据库工程应完成下列任务: 1.确定系统的各项指标并进行评估和计划制定 2. 论证、选择和配置数据库系统 3.数据库设计与实现
(a) 计划与定义阶段
该阶段的任务是制订开发计划,确定项目成本预算和 工程进度,并进行详细需求分析,确定硬件规格说明。
设计分 析
评审
建立样机 与测试
评审
生产分 析
设计图纸
样机
设计图纸
(b) 设计与样机实现阶段
该阶段的任务是分析设计,画出设计图,必要时建造原 型对样机进行测试,最后进行制造分析,画出生产图。
制造
返工
质量保 证
评审
销售
维护机构
产品
Βιβλιοθήκη Baidu
备件
(c) 制造、销售与售后服务阶段
该阶段的任务是按照质量保证计划和要求生产硬件产品。
1.1.2软件与软件工程
计算机软件:软件工程师设计和建造的产品。 包括:可执行的程序 + 开发各阶段文档 + 各种数据。
软件工程是研究软件生产和软件管理的工程科学。 内容包括:市场调研、正式立项、需求分析、项目策划、
评审
过程 设计
评审
程序 编码
评审
概要设计 规格说明
原 型
详细设计 规格说明
(b) 开发阶段
源程序 代码
因缺陷可能导致 返回到前面步骤
单元测试 组装测试 确认测试
测试计划 测试过程 测试结果
交付与

调试
销售
评审

操作 过程
用户 文档
修改的 源程序 代码
(c) 检验、交付与维护阶段 (运行维护阶段)
评审
第一章 软件工程基础
主要内容
计算机系统工程 软件工程 软件生存期模型 软件开发方法 软件工程环境
软件与计算机的系统要素之间的关系
大多数软件系统都是为了开发满足某种需求 而建立。这些软件必须要计算机系统的支持。
不论系统的自动化程度有多高,都需要人的 参与。任何系统都必须配备使用手册及必要 的表格和其他文档。在网络时代的应用系统 中,绝大多数应用系统都离不开数据库和网 络这样的基础设施。如图1.1所示。
输入
文档
数据库 、 网络
过程 系统

硬件 软件
输出
图1.1 基于计算机的系统要素
1.1计算机系统工程
计算机系统工程:与构造基于计算机系统有关的过 程、方法和技术。
一种问题求解活动,目的是揭示与分析所期望的功 能,并把这些功能分配到系统的各个独立系统元素 中去。
计算机系统工程师与用户充分合作,以确认用户的 目标与约束。
2.软件的特点
软件是一种逻辑实体,不是具体的物理实体,具有 抽象性。
软件是通过人们的智力活动,把知识与技术转化成 信息的一种产品,是在研制、开发中被创造出来的。
在软件的运行和使用期间,没有硬件那样的机械磨 损、老化问题。
软件存在故障(错误)的原因
软件的开发和运行经常受到计算机硬件系统的 限制,软件对计算机硬件系统有着不同程度的 依赖关系。
1.1.1硬件与硬件工程
计算机系统工程师根据系统需求为硬件系统 指派任务,产生硬件需求。
硬件工程师根据硬件需求设计、制造或选择 硬部件或设备。
硬件工程过程分为三个阶段,即计划和定义 阶段;设计和样机实现阶段;生产、销售和 售后服务阶段。
硬件功能
开发计划
评审
详细需求分 析
评审
成本 进度
硬件规 格说明
概要设计、详细设计、编程、测试、试运行、产品发布、用 户培训、产品复制、销售、实施、系统维护和版本升级等。
软件工程模型一般包括:软件项目的定义阶段、软 件开发阶段、软件的检验、交付与维护阶段 。
软件功 能
软件项目计 划
评审
需求分析或 原型
评审

项目

计划
(a) 定义阶段
需求规 格说明
数据与结 构设计
软件的开发尚未完全摆脱手工的开发方式。 软件的开发费用越来越高,成本相当昂贵。 软件的开发是一个复杂的过程,管理是软件开
发过程中必不可少內容。
1.2.2软件工程的概念
软件发展的四个阶段
1. 1950’s~1960’s中 : 规模较小的程序,个体化的软件开
发,只有程序清单。——程序设计阶段
2. 1960’s中~1970’中 :“软件作坊”,广泛使用产品软
件。 ——程序系统阶段
3. 1970’中 ~1980’s :微处理器的出现并广泛应用。分布
式系统、嵌入智能。——进入软件工程阶段
4. 1980’s~: 网络迅速普及, 强大的桌面系统、面向对象技术、
专家系统、人工智能、神经网络、并行计算、网格计算、虚拟 组织。
软件发展过程中存在的问题
▪ 软件开发能力不能满足人们的需要; ▪ 社会对软件的依赖程度加大,人们普遍关注软件的
安全和可靠性; ▪ 若干年前开发的应用软件经过几十次修改已无人认
识它的内部结构,己经不可维护; ▪ 由于经济原因,嵌入式系统存在许多怪现象,企业
不愿意投入资源再生产,而采取打补丁+时髦界面 的方法。
相关文档
最新文档