织梦CMS - 轻松建站从此开始!

罗索

软件开发过程及岗位职责

罗索客 发布于 2002-11-05 16:33 点击:次 
freebird freeworldbird@yahoo.com 本文主要讲述如何组织开发软件项目,使之更加快速、有效的完成。并分成以下几个阶段进行详细讲述:项目计划阶段、需求分析阶段、软件开发阶段、测试阶段、管理软件开发过程、各参与角色的具体职责描述及对人员的要求。最后提供了一些
TAG:

freebird
freeworldbird@yahoo.com

  本文主要讲述如何组织开发软件项目,使之更加快速、有效的完成。并分成以下几个阶段进行详细讲述:项目计划阶段、需求分析阶段、软件开发阶段、测试阶段、管理软件开发过程、各参与角色的具体职责描述及对人员的要求。最后提供了一些文档标准参考。

    本开发过程可以作为中小型(3-7人)软件项目的开发指南,而大型软件项目使用RUP会更好。

  

总体流程如下:

计划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》完成

  

一、             项目计划阶段

项目计划草案和风险管理计划作为第一步,当有一个商业机会后,根据公司高层负责制定的初步商业计划书来完成项目的计划草案,确定、分析项目风险并确定其优先级,还要制定风险解决方案。本阶段的目的是确立产品开发的经济理由。

当确定开发之后则制定软件开发计划、人员组织结构定义及配备、过程控制计划。

(1)       项目计划草案

项目计划草案应包括产品简介、产品目标及功能说明、开发所需的资源、开发时间和里程碑。

  

(2)       风险管理计划

也就是把有可能出错或现在还不能确定的东西列出来,并制定出相应的解决方案。风险发现得越早对项目越有利。

  

(3)       软件开发计划

  软件开发计划的目的是收集控制项目时所需的所有信息,项目经理根据项目计划来安排资源需求并根据时间表跟踪项目进度。项目团队成员根据项目计划以了解他们的工作任务、工作时间以及他们所依赖的其他活动。

可将计划分成总体计划和详细计划,总体计划中每个任务为一个里程碑,详细计划中必须将任务落实到个人。

软件开发计划还应包括产品的应收标准及应收任务(包括确定需要制订的测试用例)。

  

(4)       人员组织结构定义及配备

        常见的人员组织结构有垂直方案、水平方案、混合方案。垂直方案中每个成员充当多重角色。水平方案中每个成员充当一到两个角色。混合方案则包括了经验丰富的人员与新手相互融合。具体选择根据人员实际技能情况进行选择。

  

(5)       过程控制计划

  过程控制计划的目的是收集项目计划正常执行所需的所有信息,用来指导项目进度的监控、计划的调整,确保项目按时完成。

二、             需求分析阶段

需求分析阶段的目的是在系统工作方面与用户达成一致。

(1)       软件需求规约

详细说明系统将要实现的所有功能。

(2)       用户界面原型

    可以有三种表示方法:图纸(在纸上)、位图(绘图工具)、可执行文件(交互式)。

  

三、             软件开发阶段

本阶段从物理上实现目标系统。采用了面向对象方法。

(1)       软件架构

     说明软件的组织结构、部署结构及运行环境。

(2)       类设计

     定义类之间的关联和类的属性、方法。

(3)       数据库设计

     定义数据库表之间的关联和各个表的字段。

(4)       编码和单元测试

     按照设计文档进行编码,每完成一个模块应进行单元测试。

(5)       集成系统

按软件组织结构的要求将各个子系统组合起来。

  

四、             测试阶段

测试的目的是在发布之前找出程序的错误。包括:核实每个模块是否正常运行(参考设计文档)、核实需求是否被正确实施(参考需求文档)。

(1)       测试计划

    收集和组织测试信息,为测试工作提供指导。

(2)       测试数据

    尽量使用真实数据。

(3)       测试报告

    记录测试结果,详细描述问题,提出解决办法。

(4)       帮助文件和用户操作手册

  

五、             管理软件开发过程

有以下几方面地工作:

(1)       组织会议

    讨论会议、总结会议等。

(2)       评审程序

    对各个阶段的工作结果进行审核。

(3)       协调人员

(4)       配置管理

        使用一些配置管理工具进行开发文档管理,如:Visual Sourcesafe,Teamsouce等

  

六、             各参与角色的具体职责描述及对人员的要求

(1)       项目经理

    职责:

1、  制定产品的目标。

2、  制定各个工作的详细任务表,跟踪这些任务的执行情况,进行控制。

3、  组织会议对程序进行评审。

4、  综合具体情况,对各种不同方案进行取舍并做出决定。

5、  协调各项目参与人员之间的关系。

人员要求:

对产品有激情,具有领导才能。

对问题能正确而迅速地做出确定。

能充分利用各种渠道和方法来解决问题。

能跟踪任务,有很好地日程观念。

能在压力下工作。

(2)       系统分析员

职责:

1、  了解用户需求,写出《软件需求规约》。

2、  建立用户界面原型。

人员要求:

担任系统分析员的人员应该善于协调,并且具有良好的沟通技巧。担任此角色的人员中必须要有具备业务和技术领域知识的人才。

(3)       设计员

职责:

1、  定义类的方法和属性以及各个类之间的关联,画出类图。

2、  进行数据库设计。

人员要求:

    掌握面向对象分析与设计技术,统一建模语言(UML)。

(4)       程序员

职责:

        按项目的要求进行编码和单元测试。

人员要求:

    良好的编程技能和测试技术。

(5)       测试员

职责:

        执行测试,描述测试结果,提出问题解决方案。

人员要求:

了解被测试的系统,具备诊断和解决问题的技能,编程技能

  

根据每个人的特长来担任其中的一个或多个角色。最好是每个人都能参与设计和编码工作,每个人都能够建立起系统地全局观。 (freebird)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/200211/1025.html]
本文出处: 作者:freebird
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容