您正在查看 "Engineering" 分类下的文章
2008年12月02日 星期二 21:32
作者:赵晓华 来源:希赛网 2008年2月1日
两位研究面向对象软件工程的美国学者 (Stave Halladay和Michael Wiebel) 曾这样说:“一般的面向对象编程(OOP)思路不过是一批乌合之众,把灵机一动、随机应变的技巧用于他们绞尽脑汁抽象出来的‘对象’而已。即使是最优秀的 OOP 程序员,他们所能对付的极限也莫过于中等规模的开发项目。倘若程序员经验不足,系统规模又很大,那么采用 OOP 只能把你引入漫无边际的泥沼之中。”
一方面是几乎没有一位软件工程 |
2008年12月01日 星期一 8:41
作者:佚名 来源:中国软件工程网 2008年10月29日
1)绘制关联图:绘制系统关联图是用于定义系统与系统外部实体间的界限和接口的简单模型。同时它也明确了通过接口的信息流和物质流。
2)创建开发原型:创建用户接口原型。当开发人员或用户不能确定需求时,开发一个用户接口原型,这样使得许多概念和可能发生的事更为直观明了。用户通过评价原型将使项目参与者能更好地相互理解所要解决的问题。注意要找出需求文档与原型之间所有的冲突之处。
3)分析可行性:分析需求可行性。在允许的成本、 |
2008年11月28日 星期五 20:28
什么是CMM
能力成熟度模型(Capability Maturity Model for Software,英文缩写为SW-CMM,简称CMM),是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
SW-CMM(软件生产能力成熟度模型)为软件企业的过程能力提供了一个阶梯式的进化框架,它基于过去所有软件工程 |
2008年11月28日 星期五 19:54
也许CMM被谈论得太多了,人们反而很少提及CMM的目的。其实,CMM的目的就是实现软件过程的改进(SPI),从而提升软件组织的核心竞争力,取得竞争优势。
那么,试着把SPI的“S”去掉,然后从以下三个观点中理解“PI”:凡是活动都存在过程;凡是过程都需要改进;凡是改进都没有终点。
跳出画面
我们可以从“过程视角”观察各种流行的知识域,因为它们都是支持过程理念的。从过程视角观察各种流行知识域,不仅仅是拓宽视野的问题,也引发了许多新的 |
2008年11月28日 星期五 19:35
1 引言
如果你是一个程序员,可能常常为不能按时完成任务而苦恼。如果你是一个项目经理,可能会觉得开发符合预算和进度要求的软件简直难于上青天。实际上,软件项目常常严重超期或超出预算仍是困扰着绝大多数软件机构的难题。据美国一份评估报告显示,17个主要的国防部软件合同中,平均28个月的进度计划推迟了20个月才完成。一个4年应该完成的任务,7年还未提交,其中没有一个项目按时完成。由于存在软件问题,B1轰炸机的部署被推迟了,同样的原因,580亿美元的A12飞机计划也被部分取消了。持续了二 |
2008年11月28日 星期五 13:37
RUP(Rational Unified Process,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论。根据Rational(Rational Rose和统一建模语言的开发者)的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。 RUP和类似的产品,例如面向对象的软件过程(OOSP),以及OPEN Process都是理解性的软件工程工具——把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。
|
2008年11月28日 星期五 12:47
在面向对象设计中,如何通过很小的设计改变就可以应对设计需求的变化,这是令设计者极为关注的问题。为此不少OO先驱提出了很多有关面向对象的设计原则用于指导OO的设计和开发。下面是几条与类设计相关的设计原则。
1. 开闭原则(the Open Closed Principle OCP)
一个模块在扩展性方面应该是开放的而在更改性方面应该是封闭的。因此在进行面向对象设计时要尽量考虑接口封装机制、抽象机制和多态技术。该原则同样适合于非面向对象设计的方法,是软件工程设计方法的重要原则之一。我们以收音机的例子为例 |