1.什么是软件?
答:软件是程序,数据和文档的集合。
程序是完成指定功能的计算机可执行的指令序列。
数据是程序进行信息处理的数据结构。
文档是开发,使用,维护的图文资料。
2.软件有何特点?
答:
(1是逻辑实体而不是物理实体,具有抽象性.
(2没有明显的制造过程
(3与硬件相比,不存在老化和磨损问题,但有退化问题。软件退化缘于修改。
3.什么是软件危机?
答:软件危机是指在计算机软件开发和维护过程中遇到的严重问题。问题主要分为两方面:如何开发软件以满足日益增长的用户需求;如何维护数量不断膨胀的已有软件。
4.为什么会产生软件危机?
答:(1软件本身特点:软件的逻辑性,程序的复杂性,规模庞大。
(2软件开发与维护方法不正确:忽视软件定义时期的工作,特别忽视了软件需求分析的重要性;认为软件开发就是写程序并且使之运行;忽视软件维护
5.软件工程7条特性
(1软件工程关注大型程序的构造
(2软件工程的中心课题是控制复杂性
(3软件经常变化
(4开发软件的效率非常重要
(5和谐的合作是开发软件的关键
(6软件必须有效的支持他的用户
(7软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品
6.软件工程基本原理
(1用分阶段的生命周期计划严格管理
(2坚持阶段评审
(3实行严格的产品控制
(4采用现代化程序设计技术
(5结果应能清楚的审查
(6开发小组成员应该少而精
(7承认不断改进软件工程实践的必要性
7.什么是软件工程方法学?
答:在软件生命周期全过程中使用的一整套技术方法的集合,包括:方法,工具和过程。分为传统方法学和面向对象方法学。
8.传统方法学存在哪些问题?
答:核心:将数据与程序分离。
9.面向对象方法学有哪四个要点?
答:(1把对象作为融合了数据以及在数据上操作行为的统一的软件构件
(2将对象分为类
(3继承
(4对象之间仅能通过发送消息联系
10.什么是软件生命周期?
答:软件生命周期包括软件定义时期,软件开发,运行与维护
具体细分为:
软件定义时期:问题分析,可行性研究,需求分析
软件开发:总体设计,详细设计,编码与单元测试,综合测试,前两个称为系统设计,后两个称为系统分析。
维护:维护,四种维护:改正性维护,适应性维护(适应环境变化),完善性维护,预防性维护。
11.什么是软件过程?
答:软件过程是为了获得高质量软件所需要完成的一系列的一系列任务的框架,它规定了完成各项任务的工作步骤。
12.瀑布模型介绍
特点:
(1适合于需求明确
(2阶段间具有顺序性和依赖性:必须前一阶段完成后一阶段才能开始,前一阶段的输出是后一阶段的输入
(3推迟实现的观点,在编码之前进行了问题分析,可行性研究和需求分析
(4质量保证的观点,每个阶段都完成规定的文档,且进行评审。
(5文档驱动的模型
缺点:
13.V模型介绍
特点:
(1强调测试活动与分析和设计之间的对应关联
(2活动驱动
14.快速原型模型
快速原型定义:快速建立在计算机上可以运行的程序,它完成的功能往往是最终功能的子集。
特点:
(1适用于需求不明确
(2不带反馈环,开发按照线性进行
15.增量模型
特点:(1适用于人员不充足
缺点:软件体系结构必须是开放的
本身具有矛盾性,一方面要求将软件看成一个整体,另一方面又要求看成构件序列,且构件之间彼此独立。