系统分析与设计-Homework-1

1、简答题

  • 软件工程的定义

软件工程是一门研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。 

软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过实践考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

  • 解释导致 software crisis 本质原因、表现,述说克服软件危机的方法

           软件危机(software crisis)是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。

本质原因:

(1) 用户需求不明确

(2) 缺乏正确的理论指导

(3)软件开发规模越来越大

(4) 软件开发复杂度越来越高

表现:

(1)对软件开发成本和进度的估计常常很不准确。

(2)用户对“已完成的”软件系统不满意的现象经常发生。

(3)软件产品的质量往往靠不住。

(4)软件通常没有适当的文档资料。

(5)软件常常是不可维护的。

克服的方法:

用现代工程的概念,原理,技术和方法进行计算机软件的开发,管理和维护。

  • 软件生命周期

软件生命周期(Software Life Cycle,SLC)是软件的产生直到报废或停止使用的生命周期。旧的解释是周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。

软件分析时期:问题定义、可行性研究、需求分析

软件设计时期:总体设计、详细设计

编码与测试时期:编码、测试

运行与维护时期

Software Requirements 软件需求:关注软件需求的启发,协商,分析,规范和验证。

Software Design 软件设计:定义系统或组件的体系结构,组件,接口和其他特征的过程以及该过程的结果。

Software Construction 软件建设:通过结合详细设计,编码,单元测试,集成测试,调试和验证来详细创建工作软件。

Software Testing 软件测试:评估产品质量并通过识别缺陷来改进产品质量。

Software Maintenance 软件维护:增强现有功能,调整软件以在新的和修改的操作环境中运行,以及纠正缺陷。

Software Configuration Management 软件配置管理:硬件,固件,软件及其组合的功能和物理特征。

Software Engineering Management 软件工程管理:规划,协调,测量,报告和控制项目或程序,以确保软件的开发和维护是系统化的,规范化的和量化的。

Software Engineering Process 软件工程过程:关注软件生命周期过程的定义,实施,评估,测量,管理和改进。

Software Engineering Models and Methods 软件工程模型与方法:建模、 模型类型、分析、和软件开发方法。

Software Quality 软件质量:解决普遍存在的软件生命周期问题。

Software Engineering Professional Practice 软件工程专业实践:关注软件工程师必须具备的专业,负责和符合伦理的软件工程知识,技能和态度。

Software Engineering Economics 软件工程经济学:关注在业务环境中做出决策,以使技术决策与组织的业务目标保持一致。

Computing Foundations 计算基础:提供软件工程实践所需的计算背景。

Mathematical Foundations 数学基础:提供软件工程实践所需的数学背景。

3.4Engineering Foundations 工程基础:提供软件工程实践所需的工程背景

  • 简单解释 CMMI 的五个级别。例如:Level 1 - Initial:无序,自发生产模式。

1.初始级(Initial) 

软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。 

2.可管理级(Managed) 

建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。 

3.已定义级(Defined) 

已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。 

4.量化管理级(Quantitatively Managed) 

分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。 

5.优化管理级(Optimizing) 

过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。
 

  • 用自己语言简述 SWEBok 或 CMMI (约200字)

CMMI目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件开发中的困难。CMMI为改进一个组织的各种过程提供了一个单一的集成化框架,新的集成模型框架消除了各个模型的不一致性,减少了模型间的重复,增加透明度和理解,建立了一个自动的、可扩展的框架。因而能够从总体上改进组织的质量和效率。CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值