软件工程原理(沈备军版)第一章绪论答案

1.软件和硬件相比,具有哪些特性?
(1)软件:由程序相关数据及其说明文档组成,是计算机系统中与硬件相互依存的另一部分。
(2)特性:

  • 软件是一种逻辑实体,具有抽象性。
  • 软件没有明显的制造过程
  • 软件在使用过程中,没有磨损、老化的问题。
  • 软件对硬件和环境有着不同程度的依赖性。这导致了软件移植的问题。
  • 软件的开发至今尚未完全摆脱手工作坊式的开发方式,生产效率低。

2.什么是软件危机?为什么会出现软件危机?
(1)软件危机:是在计算机软件的开发和维护过程中所遇到的一系列严重问题。
(2)出现软件危机的原因:软件本身的特点、对软件开发与维护存在许多错误认识和做法、软件开发与维护的方法不正确

3.软件开发的根本目标是什么?
实现软件优质高产

4.什么是软件工程?软件工程的知识体系是什么?
(1)软件工程是将系统的规范的可量化的方法应用于软件的开发、运行和维护,即将工程化思想应用于软件。
(2)软件工程的知识体系:SWEBOK指南V3.0把软件工程的知识划分成两类15个核心知识领域。即软件工程实践类知识领域(软件工程所需要的知识,包括软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程方法、软件质量、软件工程职业实践。)
软件工程教育要求类知识类(软件工程本科教学中所需要的基础知识,包括工程经济基础、计算基础、数学基础、工程基础)

5.软件工程的金三角是什么?
软件工程的内容是一个金三角,人、管理、技术各占一角。
人是完成软件开发和维护的主体,贯穿整个软件生命周期
技术提供了开发和维护软件在技术上需要的“如何做”方法。

6.软件工程的核心技术有哪些?
核心技术环节如下:

  • 系统工程
    对软件所处的系统的整体进行分析和建模,构建系统模型。
  • 软件需求
    目的是确定软件的目标和范围,从用户角度,采用“黑盒”视角定义该软件是什么(What)
  • 软件设计
    目的是建立软件的设计蓝图,从开发人员角度,采用白盒视角确定软应如何开发(How)
  • 软件构造
    程序员依据设计文档为每个模块编写文件。
  • 软件测试
    目的是发现软件中的缺陷,以提高软件的质量。
  • 软件维护
    系统软件交付使用以后,为了改正错误或满足新的需要而修改软件的过程。

7.如何控制软件开发的复杂性?

  • 抽象:从众多的事物中抽取出共同的、本质的特征,而舍弃其非本特征。
  • 分解:把一个复杂的问题分解成若干个简单的问题,然后逐个解决。
  • 迭代:返复、循环求解,当无法正确抽象和分解时采用迭代的方法,
    以积累经验。
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值