工作日志2006.11.20

2006-11-20

 

       对于软件工程的思考:

       这几天我结合自己开发过程中的体验,以及看过的几本软件工程方面的书,开始思考软件开发中的问题。

       问题在于:对于一个中型的软件项目,有没有固定的步骤去遵循?例如我们是否第一步需要去做很详细的需求分析(详尽地描述问题,领域分析等等),然后第二步又做哪一步设计?使用面向对象分析又该先做什么再做什么?

       我最终觉得,对于软件开发,是没有详尽的固定的步骤去遵循的,即使是一个大致的开发框架(步骤框架)也是没有的!但是,如果靠自己摸索出来的路子进行开发,那么,软件工程的各种概念又起什么作用呢?这里,我想,我们需要去融会软件工程中的思想,去融会这种思想到我们自己的项目中,这才是好的方法。让这种思想来指导我们摸索自己的路子。

 

       另外,在整个软件开发生命周期中,都使用了UML,这使得很多文档(包括需求分析,系统设计)都使用了统一的格式语言。即使在整个开发过程中使用了自己的路子,我觉得学会使用UML来描述各种图也是很有必要的。例如类图,时序图等。----这些图贯穿于OOAOOD中。

 

       面向对象分析,面向对象设计,UML。看起来要完全掌握(或者掌握80%UML,意为用UML来进行各种文档的开发(设计),不是短时间的能够学会的事情。目前的打算是在自己的项目中一点一点地用进UML,到积累到一定基础后再系统地学习UML(这可能会被放到明年3月分,在接触到JAVA后)。

 

 

       总体而言,我就过去进行过的项目来总结以下开发方法:

1.  类图是必须的。类图中的类名,类属性,类方法以及类关系,可以从各种文档里提取。因此需求文档,或者问题描述文档是必须的。

2.  系统流程图是必须的。流程图的概念取自面向过程的开发方式中,在面向对象的开发方式中我不知道叫什么名字。时序图?

 

       整个开发过程应采用迭代的方式,因为不可能第一次就把这些图画的跟详细。只有越到后面,才能越完善这些图。

 

       下一次开发可以把用例图用进来,用例图用来干什么?我将用它来拆分系统,把系统拆分为更细的模块。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值