1回顶部 一、前期规划: 我理解的前期规划是:在市场人员们汇总一个需求提交给产品专家带领的产品经理团队,然后经过这个团队根据公司具体情况再次分析和规划出一个最终需求文档。 对于第一种,当然是因为前期规划疏漏了某些细小功能,没能把需求文档做完善。应该是规划工作做的还不够认真和细致。 2回顶部 二、概要设计: 我理解的概要设计步骤:(以项目为中心的开发流程) 1〉 项目经理仔细阅读项目需求文档。 2〉 项目经理召集项目开发成员,开项目启动会议。具体商议项目的开发任务和责任分配。 3〉 核心开发人员开发确定,以及各模块开发人员确定。 4〉 由系统分析员和核心开发人员仔细阅读需求文档,对系统整个架构分析和做技术规划。 5〉 系统分析员整理和书写最终的系统架构和概要设计文档。 6〉 系统分析员在文档提交日,提交给项目经理。项目经理确认文档并审批。 7〉 项目经理召集项目开发成员,开一个概要设计以及系统架构确定的会议。向每个成员分发文档,并讨论确定最终概要设计文档。 8〉开始详细设计文档的工作 三、详细设计: 1〉 项目经理组织成立各个模块的开发小组,并确定开发小组组长(程序经理)。 2〉 各开发组长书写各自模块的详细设计文档,开发成员需要协助,配合。 3〉 在指定提交日,开发组长提交文档给系统分析员。由系统分析员审批。 4〉 系统分析员组织召开一个详细设计文档确认的会议。 5〉 然后开发组长分发各自模块的详细设计文档给程序员,程序员在指定时间内完成。 6〉 程序员做内部测试。开发组长协调并配合。 7〉 确认无bug提交给开发组组长。 8〉 所有模块整合工作,由整个开发组成员参与完成。由所有开发组长和系统分析员负责主要部分工作。程序员协助和配合。 9〉 对整合后工程做详细测试。 10〉确认测试通过后,开发组长根据开发成员表现以及提交成果填写绩效考核表。然后提交给项目经理。 11〉 项目经理会召开项目总结会,同时向优秀成员颁奖。同时鼓励所有成员继续努力。对不能按时完成导致项目能按时提交,以及对导致失败的关键人员给与惩罚处理。 当然,以上只是一个简单的开发流程,一定是有很多不足的地方。希望能起到抛砖引玉的作用。大家都明白,流程和制度是死的,但人是活的,所以如何按流程做得好,关键还是在人本身了。没有一个流程和制度,一个团队也必将是一盘散沙。正所谓“无规矩无以成方圆”。这句话说得很有道理。 3回顶部 四、具体编码: 几个项目之后,对编写程序有了更进一步的了解。好的程序应该具有: 易读性,易扩展性,容错性。 易读性: 所有变量和函数以及类名用简单易懂易记忆的命名方式。所有类和函数甚至变量都有关键的注释说明。这点很重要,也是最基础的。如果代码书写不够美观和易懂,我想自己以后也不想再看。就更别谈功能的扩展和新版本开发了。 易扩展性: 整体系统架构逻辑简单清晰。模块与模块之间尽量做到互不影响,也就是尽可能的独立。这部分工作主要体现在前期设计工作中,需要掌握好的设计经验和方法才能够做得比较好。 容错性: 对数据流和指针以及数组都做数据有效性检查;对第三方接口的调用失败的容错性。对所有代码都做调用失败后的错误处理。以及在大的工程中加入trace文件输出,把关键的数据流和关键处理部分的操作信息输出。以便对工程异常情况产生条件的定位,及时解决问题。 我觉得程序员能在这三方面做得很好就算一个优秀的programmer了。 五、调试、跟踪与测试: 1 测试需要注意的: 对每个模块的接口做测试,数据边界的检查。在对整个模块做测试。主要测试稳定性,效率以及功能是否正常。确认单个模块完全正常后,再加入工程。 在系统架构设计的时候,可能会引入原型参考。要对原型做完成测试后,确认没有问题后,才可使用。 2 可以采用VC自带Trace或者将信息输出为文本文件的方式跟踪程序并输出关键信息,以便定位程序异常的原因。 3 对于通信模块的测试,特别注意服务端和客户端的数据流。可以针对性的写一个客户端或服务端的测试程序,检验通讯过程是否正常。 4 在用VC做开发中,一定先要让Debug版本正常运行,保证没有任何异常,内存泄漏和Assert等调试警告信息。如果用到其他Lib,一定要保证Lib本身不存在问题。 这里只是提到一些自己容易忽略的东西,希望能对大家有所帮助,欢迎指正!谢谢。 |
正在阅读:对软件开发的一点心得体会对软件开发的一点心得体会
2004-04-01 11:05
出处:CSDN
责任编辑:sdq