系统分析与设计Hw-1

| 分类 日志  | 标签 博客 

系统分析与设计Hw-1


1.软件工程的定义

在软件的开发和维护中,对系统的,有组织的,可度量的方法的研究


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

软件危机是指,在早期的软件开发中出现的一系列问题,包括

  • 软件开发成本和进度不受控制
  • 难以维护,调试和更改
  • 用户需求满足不全

COCOMO模型,即Constructive Cost Model,结构式成本模型 COCOMO模型分为基本、中间、详细三个层次 分别用于软件开发的三个不同阶段。

  • 基本COCOMO模型 用于系统开发的初期,估算整个系统的工作量(包括软件维护)和软件开发所需要的时间。
  • 中间COCOMO模型 用于估算各个子系统的工作量和开发时间。
  • 详细COCOMO模型 用于估算独立的软部件,如子系统内部的各个模块。

3.软件生命周期。

软件生命周期(Systems Development Life Cycle,SDLC)是软件的产生直到报废的生命周期,是一种按时间分程的思想方法周期包括有

  • 问题定义
  • 可行性分析
  • 需求分析
  • 总体设计
  • 详细设计
  • 编码,调试和测试
  • 验收与运行、维护

每个阶段从时间上是相对独立的


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

SWEBOK,即Software Engineering Body of Knowledge,软件工程知识体系 是通用的软件工程指导的国际化标准 本课程主要关注的知识领域包括

  • Software requirements 软件需求
  • Software design 软件设计
  • Software construction 软件架构
  • Software quality 软件质量

5.解释 CMMI 的五个级别。

  • Level 1 - Initial:无序级,自发生产模式。
  • Level 2 - Managed:已管理级,项目过程制度化。
  • Level 3 - Defined:已定义级,组织过程制度化。
  • Level 4 - Quantitatively Managed:量化管理级,度量并基于统计去控制过程。
  • Level 5 - Optimizing:优化级,过程持续改进。

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

软件工程知识体系(swebok)是国际标准iso 的,详细说明了普遍接受的软件工程知识体系的技术指南。涉及到软件工程的各个方面,包括有

  • 软件需求
  • 软件设计
  • 软件构造
  • 软件测试
  • 软件维护
  • 软件配置管理
  • 软件工程过程
  • 软件过程工具与方法
  • 软件质量
  • 相关科学知识

SWEBOK的作用是指导在软件工程方面遇到的问题,可以根据问题快速定位到相关知识领域,然后查找各种方法、标准。


7.解释 PSP 各项指标及技能要求:

PSP指标要求

  • 项目/任务大小:项目的大小, 一般用代码行数 (Line Of Code, LOC) 来表示;也可以用功能点 (function point)
  • 花费时间:完成项目用时
  • 代码质量:使用代码中缺陷的数量来除以项目的大小来衡量
  • 按时交付:稳定,一致的交付时间

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

接到任务后: 计划

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

开发

  • 分析需求
  • 生成设计文档
  • 设计复审 (和同事审核设计文档)
  • 代码规范 (为目前的开发制定合适的规范)
  • 具体设计
  • 具体编码
  • 代码复审
  • 测试(包括自我测试,修改代码,提交修改)

记录时间花费 测试报告 计算工作量 事后总结 提出过程改进计划


所需技能:

  • 规划能力
  • 理解能力
  • 书面表达能力
  • 编码测试能力
  • 总结能力
  • 执行力

统计方法:

  • 将项目明确划分阶段,确定每个阶段的工作任务和结束指标
  • 每次完成阶段的工作任务后,利用代码统计工具对完成的代码进行统计
  • 项目完成后,对记录的结果进行分析。


上一篇     下一篇