系统分析与设计学习笔记之一: Introduction of SE & OOAD

一、
• 软件工程的定义。
(1) 将系统化、规范化、可度量的方法应用于开发、运行和维护的过程,即将工程化应用于软件中。
(2) 对(1)中所述方法的研究。

• 阅读经典名著“人月神话”等资料,从历史的角度解释 software crisis、COCOMO模型 和 软件工程定义之间的联系。
20世纪60年代以前,计算机刚刚产生,软件设计往往有一个特定的目的,软件的规模较小,一般也没有文档资料,缺少系统化的开发方法。随着计算机的发展,过去开发软件的方式已经无法满足大型软件的开发,软件危机出现。
COCOMO是基于模型的成本估算方法,是一种代码行分析方法,通过基础的COCOMO的计算可以得出每个开发者需要投入的时间,整个项目的开发时间及开发人数。
《人月神话》中提到“用人月作为衡量一项工作的规模是一个危险和带有欺骗性的神话”。确实如此,有些任务无法被分解,人手的添加对项目的进度没有帮助,甚至会产生负面效果。
所以为了应对软件危机,我们需要用系统化的方法来管理软件开发过程。这就是软件工程存在的必要性。越大的软件开发,越需要系统地规划。
软件工程的定义其实核心就是要规范化软件开发过程中的每一个环节,COCOMO也是重要的一种方法来衡量软件开发的成本,它们的存在是为了应对软件危机的出现,也是历史发展的必然性。
• 软件生命周期。
SDLC,System Development Life Cycle是软件的产生直到报废或停止使用的时间。在维基百科上,这个概念解释为将软件开发过程划分为各个阶段,以获得更优规划及管理。通常有Waterfall development、Prototyping development、Iterative and incremental development、Agile development等方法。
• 用最少的词汇,解释 CMMI 的五个级别。例如:Level 1 - Initial:无序,自发生产模式。
Level 1 – Initial 过程不可测,极少的控制和反馈
Level 2 – Managed 过程定格,能反馈
Level 3 – Defined 过程标准化,积极主动的
Level 4 – Quantitatively Managed 过程可度量且可控
Level 5 – Optimizing 优化

• 阅读一个软件工程规范与标准,简述标准的内容和作用。
标准包括了基础标准、开发标准、文档标准、管理标准、机房建设标准、综合布线标准、软件工程新标准。标准让软件开发过程更加规范化、流程化,每个环节都有了严格的质量要求,使得每一个软件的开发不再是随意的,能够推动产生更高质量的软件。同时,符合规范与标准的软件,在开发和维护的过程中,都能减轻程序员的负担。

二、
• 解释PSP各项指标及技能要求
1. 项目大小,在实际产品中写了多少代码,不包括空行/注释/单字符行
2. 花费时间,可以用小时, 天,月,年来表示
3. 质量如何,交付的代码中缺陷的比例
4. 是否按时交付,以标准方差来看,稳定的交付时间更为重要
• 按表格 PSP 2.1, 了解一个软件工程师在接到一个任务之后要做什么,需要哪些技能,解释你打算如何统计每项数据? (期末考核,每人按开发阶段提交这个表)

首先要有规划能力,对任务有个统筹管理,其次要能理解需求,分析需求。要有基本的文档书写能力,撰写设计文档。接下来是更底层的设计,编码能力,还要有良好的测试能力。最后还要有良好的总结能力,对时间花费、工作量进行计算,事后进行总结,反思并提出改进方案。
首先是时间上的统计,每次在完成某个小任务时,都要对自己花费的时间计时并记录下来。接下来是代码行的统计,利用网上现有的代码统计工具,对完成的代码进行统计。

• CMU 的 CMMI 和 PSP 都是采用了相同的方法去改善企业和个人的生产效率。注重有效过程控制是实现未来个人、项目、企业成功的有效手段。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值