系统分析与设计第一次作业

1、简答题

1)   软件工程的定义:

软件工程是指导计算机软件开发和维护的工程学科,将系统化、规范化、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。采用工程的该奶奶、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,这就是软件工程。

2)   阅读经典名著“人月神话”等资料,解释software crisis、COCOMO模型

Software crisis: 软件危机是指在软件开发及维护的过程中所遇到的一系列严重问题,这些问题皆可能导致产品的寿命缩短甚至夭折。软件危机的根源是软件的大量需求与软件生产力效率之间的矛盾和软件系统的复杂性与软件开发方法之间的矛盾。由于用户需求不明确、软件开发过程中缺乏正确的理论指导,软件开发规模越来越大的同时软件开发的复杂度越来越高。

COCOMO模型:COCOMO模型是一种在软件项中估算工作量、成本以及时间表的模型。COCOMO模型由三个不断深入和详细的层次组成:基本模型,中间模型和详细模型。同时根据不同应用软件的不同应用领域,COCOMO模型划分为三种软件应用开发模式:组织模式、嵌入式应用开发模式和中间应用开发模式。

3)   软件生命周期:

软件生命周期是指从软件的产生到报废或停止使用的生命周期。从时间角度,可以把整个周期划分为若干个阶段。各个阶段的任务彼此间尽可能相对独立,同一个阶段各项任务尽可能相同,从而降低每个阶段任务的复杂性,简化不同阶段之间的联系,有利于软件开发过3.程的组织管理。在典型划分中,我们可以把软件生存周期划分为4个时期7个阶段:软件分析时期(问题定义、可行性研究、需求分析),软件设计时期(总体设计、详细设计),编码与测试时期(编码、测试)和运行与维护时期。

4)   按照SWEBok的KA划分,本课程关注哪些KA或知识领域?

l  软件需求

l  软件设计

l  软件构造

l  软件工程工具与方法

l  软件质量

5)   解释CMMI的五个级别。例如:Level 1 – Initial:无序,自发生产模式

第一级:初始级。软件过程是无序的,结果是不可预测的。

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

第三级:已定义级。将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。

第四级:量化管理级。分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。

第五级。优化管理级。组织创新与部署、原因分析与决策。

6)   用自己语言简述SWEBok或CMMI

CMMI(Capability Maturity Model Integration)是软件能力成熟度模型集成,1994年由卡内基-梅隆大学软件工程研究中心、美国国防工业协会和美国国防部一同开发研制的模型,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。CMMI将现存的和即将发展出来的各种能力成熟度模型,集成到一个框架中,是软件行业十分必要的一个资质认证。

2、解释PSP各项指标及技能要求:

阅读《现代软件工程》的PSP:Personal Software Process章节

按表格PSP 2.1,了解一个软件工程师在接到一个任务之后要做什么,需要哪些技能,解释你打算如何统计各项数据?


PSP2.1

计划

估计这个任务需要多少时间开发

开发

分析需求

生成设计文档

设计复审

代码规范

具体设计

具体编码

代码复审

测试(包括自我测试、修改代码、提交修改)

记录时间花费

测试报告

计算工作量

事后总结

提出过程改进计划

需要的技能有:

  • 完成任务所需的知识和经验
  • 时间管理和自我管理能力
  • 表达和交流能力
  • 书面表达能力
  • 编程测试能力
  • 与人合作的能力

统计方式:

  • 开始时,将任务分成多个阶段,确定每个阶段的工作任务和结束指标
  • 当一个阶段的工作开始,记录下当下的时间,并在完成之后,记录这个阶段总共花费的时间,然后开始下一个阶段的任务和计时
  • 当所有任务完成时,将之前记录的结果合起来做统计分析

猜你喜欢

转载自blog.csdn.net/qq_33415086/article/details/79572069
今日推荐