关于软件项目的管理方式
软件项目管理方式,一般人认为是编一个应用程序的几个步骤,其实从工程的角度分析,它应该归结为对应用工程的理解,对客户需求的深刻理解上,一个软件工程项目从系统的角度讲,应该从客户需求开始,这是对用户的要求进行充分理解的阶段,与客户充分交流,达成共识,从而形成工程项目的需求分析报告,其次是根据需求报告形成工程项目的系统分析,系统分析是从需求分析得出,但是在很多方面会与需求分析有冲突,这是因为环境因素、资金因素、技术因素等多方面原因造成的。因此系统分析与需求分析需要多次反复才能完成。有了系统分析之后便可以进行系统设计了,系统设计是根据需求分析和系统分析的结论进行的,是设计这个结论的实现方法,其实现过程应该是包含方式的实现,即超出系统需求的实现。这个设计是一个总体设计和功能设计,并且提出具体功能的实现技术和环境,各功能之间的连接走向,总体和基础数据结构、系统框架。通过系统设计,能够给出系统原形或框架性界面。然后进行功能分割,接口设计,模块设计,和细节设计(包括界面设计、操作设计等等)。最后根据细节设计进行编码,并同时对编码进行测试和验收。
完成一个系统不是在编码而是在设计,因此一般认为先编码后拿文档的做法应该算作野路子。规范的程序员应该自持而不能随心所欲瞎编,这样的程序将来只有看源码才能理解编程思想,是废程序。即使一个人的作坊式编程也应该正规操作,否则同行之间无法交流。
本人的编程经验不足以形成理论,今日说出,权做抛砖引玉。