`
izuoyan
  • 浏览: 8943392 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多
本文主要讲述如何组织开发软件项目,使之更加快速、有效的完成。并分成以下几个阶段进行详细讲述:项目计划阶段、需求分析阶段、软件开发阶段、测试阶段、管理软件开发过程、各参与角色的具体职责描述及对人员的要求。最后提供了一些文档标准参考。

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



总体流程如下:

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



一、项目计划阶段

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

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

(1)项目计划草案

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



(2)风险管理计划

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



(3)软件开发计划

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

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

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



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

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

(5)过程控制计划

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

二、需求分析阶段

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

(1)软件需求规约

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

(2)用户界面原型

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



三、软件开发阶段

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

(1)软件架构

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

(2)类设计

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

(3)数据库设计

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

(4)编码和单元测试

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

(5)集成系统

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



四、测试阶段

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

(1)测试计划

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

(2)测试数据

尽量使用真实数据。

(3)测试报告

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

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



五、管理软件开发过程

有以下几方面地工作:

(1)组织会议

讨论会议、总结会议等。

(2)评审程序

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

(3)协调人员

(4)配置管理

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



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

(1)项目经理

职责:

1、制定产品的目标。

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

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

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

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

人员要求:

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

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

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

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

能在压力下工作。

(2)系统分析员

职责:

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

2、建立用户界面原型。

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

(3)设计员

职责:

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

2、进行数据库设计。

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

(4)程序员

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

人员要求:良好的编程技能和测试技术。

(5)测试员

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

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



根据每个人的特长来担任其中的一个或多个角色。最好是每个人都能参与设计和编码工作,每个人都能够建立起系统地全局观
分享到:
评论

相关推荐

    软件开发过程及岗位职责.doc

    软件开发过程及岗位职责.doc

    大数据开发工程师的岗位职责.docx

    4、参与开发过程中相关新技术的研究和验证。 5.协助承担架构性的体系设计和改造工作,配合制定技术实施方大数据开发工程师的岗位职责全文共4页,当前为第2页。大数据开发工程师的岗位职责全文共4页,当前为第2页。...

    软件开发流程图

    本共享资源为本人整理;深入浅出;希望对您物有所值;好好学习;天天向上。

    大数据架构师的岗位职责.docx

    2、二年以上数据挖掘项目经验,完整参与过数据挖掘大数据平台的架构开发过程,具备互联网行业背景优先; 3、精通分布式计算框架(hadoop、spark、Storm等)及相关经验,熟练掌握Hive/SQL,Python,熟悉Python、R相关...

    软件研发部门职责.docx

    1、负责公司各类软件产品的设计、开发,测试等。 2、负责建立公司软件系统资源库,实现资源重用。 3、负责软件研发团队建设和技术人员的招聘、培养与考评。

    项目部岗位职责模板

    一、项目部门职责 ...11、 负责编写公司软件的安装手册、使用手册及相关帮助文档 12、 协助售后服务部做好软件问题处理工作 13、 协助培训部做好新进人员的业务培训工作 14、 负责公司内部电脑硬件的安装与维护工作

    软件项目开发岗位设置

    详细讲解软件开发过程中各个岗位的职责及说明

    软件公司研发部部门职责和业务流程

    一个软件公司研发部部门职责和业务流程,主要内容包括研发部员工的岗位职责以及软件开发过程中的业务流程

    软件维护人员及运维人员岗位职责

    全面负责公司业务有关的程序的开发和维护工作,对项目负责,负责公司项目的想象设计,编码、内部测试的组织和实施,按照标准流程对技术开发的代码和文档进行管理,及时完成上级交派的各项技术开发任务。

    软件开发流程

    介绍软件项目开发流程以及人员职责,让想从事该方面工作的朋友对软件开发有一个整体的认识,了解之后才能更好的适应这个岗位

    推荐 软件开发管理及规范资料合集(10份).zip

    推荐,软件开发管理及规范资料合集,共10份。 研发部门绩效考核制度.doc 公司软件的研发部门架构和岗位职责.doc 软件开发管理规范流程图.doc 团队开发规范.doc 研发项目管理控制.pdf 研发项目组织管理制度.doc 怎样...

    服务器工程师岗位主要职责.doc

    服务器工程师岗位主要职责 服务器工程师岗位职责1 职责: 1、熟悉VMware虚拟化规划、部署、支持、维护和P2V迁移 2、规划、实施服务器项目、公有云、混合云项目 3、熟悉各类微软产品,尤其是AD及E_change,基础服务器...

    软件测试工程师考试大纲及历年真题

     (4)熟悉软件工程知识,理解软件开发方法及过程;  (5)熟悉软件质量及软件质量管理基础知识;  (6)熟悉软件测试标准;  (7)掌握软件测试技术及方法;  (8)掌握软件测试项目管理知识;  (9)...

    测试经理岗位说明书

    对测试经理的岗位职责和资格进行描述。如专业知识:精通测试流程和测试理论,精通测试方案和测试计划制定,有很强的测试用例设计能力;熟悉软件测试流程和规范,懂得多种开发语言,掌握多个测试管理工具和自动化测试...

    信息安全管理的制度模板,可用于等保、企业信息安全管理、系统信息安全管理等

    资产安全管理制度、运营类固定资产管理制度、运行维护和监控管理规定、应急预案管理制度、信息系统自行软件开发管理规定、信息系统外包软件开发管理规定、信息系统交付安全管理规定、信息系统工程实施安全管理制度、...

    全套信息安全管理体系文件.zip

    安全管理组织机构及岗位职责 安全检查及审计制度 办公计算机操作及联网管理规定 办公自动化系统管理标准 操作系统安全配置管理办法 操作系统及数据库运行安全管理办法 电力营销管理信息系统安全管理办法 公钥基础...

    软件工程发展调研报告(1).docx

    硬件工程部门* 相关职位的职责 软件开发工程师 完成软件的设计、开发、测试、修改bug等工作,包括业务需求的沟通,功能模块详细设计,业务功能实现与单元测试,系统维护。 软件测试工程师 软件测试就是使用人工或...

    管家婆免费仓库管理软件 v5.2.5.zip

    软件可以灵活设置的权限控制及审核流程设置,可以按每个操作者的不同岗位职责方便地配置软件的操作及审核权限,让每个人都职责清晰、目标明确;报表的模糊查询功能,避免操作者遗漏业务信息;操作简便易学,一般没有...

    软件工程发展调研报告.docx

    硬件工程部门* 相关职位的职责 软件开发工程师 完成软件的设计、开发、测试、修改bug等工作,包括业务需求的沟通,功能模块详细设计,业务功能实现与单元测试,系统维护。 软件测试工程师 软件测试就是使用人工或...

    软件工程发展调研报告(2).docx

    硬件工程部门* 相关职位的职责 软件开发工程师 完成软件的设计、开发、测试、修改bug等工作,包括业务需求的沟通,功能模块详细设计,业务功能实现与单元测试,系统维护。 软件工程发展调研报告(2)全文共11页,当前...

Global site tag (gtag.js) - Google Analytics