这是我从过去的一些小感想中cut了一些,有些语句不通,多担待着看
我们第一阶段的目标:
1代码易读,好找错,好修改,稳定,好维护
2螺旋式开发,每周小计划安排,频繁检查目标,进度和质量
在这一阶段,最容易犯的是注重性能,注重程序技巧和不常用技术,想面向对象,怕浪费资
源
不要去吝惜多写begin
..end,不要吝惜多写一个变量赋值,我看见程序员这样写
GetData(pid, GetOutWardDate());因为在参数和()多了的时候往往使语句显的很复杂
不管单元,函数,还是变量,尽量使用业务命名,不要使用计算机术语命名。并且写的代码
和注释尽量突出业务需要和业务流程
不要面向对象,因为你用属性,消息,事件,继承,反而把易读性失去了。因为在第一阶段
的程序员往往还不能灵活并深刻掌握面向对象的本质
我们应该一切所做都是为了这个目标
1命名,写注释,封装,小函数,错误自我保护,这样易理解[命名,写注释],错误也不容易
扩散[封装,小函数,错误自我保护],报错也清晰易修改[错误提示清晰]
2严格数据结构设计,所有字段都不允许为空,不允许有默认值,没有约束条件,没有
trigger,力求出错就断定是程序的错,而不会程序和数据库两头不稳定,两边都需要查,这
样就好找错,也为稳定性提供了支持
3先开发流程大框架,再开发大框架中的功能,再开发需要数据拉下和保存的数据操作[这是
or mapping],再开发界面[这是oi mapping],这样就保证了由于彼此独立所以好修改
4有各种数据校验工具,系统维护管理工具,初始化工具,数据表说明,数据字典说明,业务
手册,很容易维护
5迭代开发,功能由粗变细,由少变多,所以不让问题扩散,既保证了进度又保证了稳定性
6每周小计划安排保证了进度安排现实,可以现实控制。频繁检查目标,进度和质量,避免程
序员尝试新技术新方法或追求完美偏离目标和时间表
7用SQL SERVER设计表结构,用PB记下字段含义,用DELPHI做界面,用WORD写描述,用
SMARTDRAW画流程
在产品开发期间就用它进行数据输入输出和字典维护。在产品出品准备期间,集中进行业务
逻辑正确性测试,数据正确性测试,报表正确性测试,性能压力测试,加强保护代码和错误
提示代码
在客户实施期间,边加强功能实用易用边调整高性能
易用的指导原则是尽量不用输入,不用回答是与否,不用人工检查,一句话,尽量不用动脑
子和手
实用的指导原则是完成他现在最需要解决的问题,而不是所有问题和未来要遇到的问题
这样实用,易用,高性能,代码好修改,实施好维护,开发有进度,稳定的一个产品多好
第二阶段的目标
由于第一目标的实现,工程人员在第二阶段需要完成的关键
1做好需求调查
找到关键提需求的人,找到关键需求问题[是他们一直想解决却解决不了的]
收集他们的人员组织,人员功能
常用流程,单据,报表
不常用流程,单据,报表
特殊流程,单据,报表
2按培训手册和培训计划进行培训
3按数据规范进行数据准备,按数据校验工具进行数据校验
4按实施规范把软件环境各方面部署好
5按上线计划推进
没有用什么XP,UML,CMM,ROSE,ERWIN,VISIO,DUNIT,设计模式,project2000之类,
软件写的挺好,用户也用的不错,你还奢望什么