首页 > 代码库 > 个人经验谈一谈软件构建
个人经验谈一谈软件构建
项目开发过程的活动:定义问题、需求分析、规划构建、软件架构、详细设计、编码与调试、单元测试、集成测试、集成、系统测试和保障维护。
当初在书上看到这些的时候,确实一头雾水,但是最近自己主管项目开发的时候确实深有体会啊。
需求真的很重要,在开始动工前就一定要确定好,不然后面经常修改的话,既做了很多无用功浪费时间,又加大了开发成本延误工期。所以,开发项目的首要工作就是出一份全面合格的需求文档。
规划构建该怎么实施呢?当然,做项目不能说走一步算一步,必须事先算好工作量,合理分配时间和工作。例如,这个项目有哪些功能或模块组成,每一部分大致需要多少时间来完成,哪些是可以同时进行的,哪些是需要优先完成的等等,以及项目架构该怎么设计,数据库该怎么设计,成员任务该怎么合理分配。另一点,多次开发经验告诉我,不要太完美化,刚开始的时候不要把什么都考虑进来,而是应该先完成一个简单功能的测试版,先要能用,然后往上面加功能,不然反而会适得其反。
软件架构也很重要,不然维护会很困难。至于详细设计与编码调试,那就要分工明确,把控好时间,以及做好交流工作。
单元测试虽然会加大开发成本(学习成本比较高,设计的技术多,单元测试的代码工作量等),但是它不但可以在我们编写代码的时候提升代码质量、减少bug,还能促使开发人员思考工作代码实现内容和逻辑的过程,提升反馈速度,减少重复工作,提高开发效率,让代码更易维护。
至于后续步骤这里就不多说了,这里还是要侧重于“构建”。很多程序员在自主开发项目的过程中都不会按照上面的步骤来做,在他们眼里,这些活动很可能都被归为“编程”了。那么软件构建真的很重要吗?
回答是必然的。软件开发并不是做出来就可以了,提高软件的质量和开发者的生产率都是十分重要的。我有一个朋友,他的能力是挺强的,但是他不适合开发。他是属于那种完成型而非思考型的程序员,他完成一个项目或者一些模块的工作是挺快的,但是,质量不行,真正用起来的时候会发现很多弊端,例如最致命的问题————崩溃、内存泄露,这无疑是一款软件的致命伤。
一款理想的软件项目在进行构建之前,都要经过谨慎的需求分析和架构设计。
一个理想的软件项目在完成构建之后,也要经过全面的、专业的系统测试。
现实中很多不那么完美的软件项目,往往跳过需求和设计,后期又由于没有太多时间修正错误,测试环节也被抛到了一边。但是,构建不能没有!不是么?
个人经验谈一谈软件构建