从YH项目看软件开发过程

项目名称:基于YH收银系统的通用商业收银系统
项目成员:崔成龙蒋倩兰李祥刘水镜
项目完成度:100%,开始进入维护工作

项目进行了5个月了,磕磕绊绊一路下来,今天终于结项了。虽然项目跟自己的预期差不太多,但是终归是有差距的。而且时间上花费的太多了,都疲了。看来以后需要采用“快速开发,产品迭代”的方式带领团队开发项目了。

在项目开发过程中,不断的学习,不断的探索,不断的实践,从思想上、技术上、解决问题的思路上都有了很大的提升,所谓困难多多,收获多多。

在开发之前,参考了很多软件开发过程的资料,有的说的很模糊,还有的说法有些不一。经历了这样一次完整的开发过程,下面就先说说我理解的软件开发过程吧。


软件开发过程到底是怎么样的?
    众所周知,软件开发过程一般分为5大阶段。那么我也从这5个阶段依次说起:
  【分析阶段】
    老师给我们安排任务,和分组后。项目就算正式开始了。
    熟悉原系统,划分模块
    分析原系统的数据库,对照功能,虽然费时,却能清楚的了解系统的功能逻辑和大致的实现。
    确定系统采用哪种结构哪种方式进行开发:BS、CS,经典三层,MVC、设计模式
    分析需求+新需求,画原型图,写需求分档(功能模块、用户)
  【设计阶段】
    画用例图,分清楚用户与用例的对应关系
    采用开发工具,设计系统的原型图
    设计数据库,生成实体类
    画包图,类图,写方法,参数,注释
    画时序图,捋顺业务逻辑
    写设计文档
  【编码阶段】   
    首先按包图,构建项目框架。
    对源码进行svn版本控制。
    把最最基本的实体类完善。可以借助工具辅助完成。
    修改完善UI层的界面。
    按分工开始同步编码, 编码的分工会在接下来的主题中讨论。
    单元测试要做好
  【测试阶段】
    单元测试已经在编码过程中进行
    集成测试前,要保证完全的测试,要做好几点准备工作:数据库的创建.sql文件,数据库初始化.sql文件,清空和请零自增标记.sql文件。
    集成测试,记录bug
    修复bug,修复一个标记一下
    回归测试,循环多次。
  【运行与维护】
    建立用户档案表,包括用户详细信息,联系方式、系统版本信息、配置信息等。
    建立维护记录表,包括时间、用户信息、bug信息、解决状态、简述解决方案、解决方式(电话指导、现场部署、QQ远程等)
    建立需求记录表,记录用户的新需求
    建立维护解决方案,将每次新问题的解决方法记录下来,方便他人接手维护。
    建立版本更新记录,包括时间,(前台/后台、)前版本号,现版本号,更新内容(修复哪些bug),修改人,审批人,审批时间

每个阶段有应该有阶段评审。由于经验有限,所以我们在整个开发过程中只有2次验收。中期验收,即为编码前的验收,验收原型、需求、设计等是否符合项目要求,符合则可以继续进行,否则返工。结项验收,即项目结束前的验收。验收系统的功能、性能、灵活性等方面,验收各种文档信息。

这就是我通过带领这次软件开发,对软件开发过程的理解。难免有些疏露或者不一致,仅供参考。如有兴趣,可以留言讨论。




上一篇:Linux 系统安全常规优化


下一篇:PL/SQL_使用复合数据类型3(多级集合)