zoukankan      html  css  js  c++  java
  • 软件项目开发流程以及人员职责

    实行软件工程项目管理:
    ▲ 项目经理(负责人):项目经理(负责人)对整个项目负完全责任,是指导、控制、管理和规范某个软件和软/硬件系统建设的人,项目经理(负责人)是最终对客户负责的人。
    ▲ 软件项目经理(负责人):软件项目经理(负责人)对一个项目的所有软件活动负完全责任,控制一个项目的所有软件资源,按照软件约定与项目经理(负责人)打交道。
    ▲ 软件工程组: 软件工程组是负责一个项目的软件开发和维护活动(例如:需求分析、设计、编程和测试)的人员(包括管理人员和技术人员)。
    ▲ 系统工程组: 系统工程组是负责下列工作的人(既有经理也有技术人员)的集团:规定系统需求;将系统需求分配给硬件、软件和其它成分;规定硬件、软件和其它成分之间的界面;以及监控这些成分的设计和开发以保证它们符合其规格说明。
    ▲ 系统测试组:系统测试组是一些负责策划和完成独立的软件系统测试的个人(既有经理又有技术人员)的集团,测试的目的是为了确定软件产品是否满足对它的要求。
    ▲ 软件质量保证组: 软件质量保证组是一些计划和实施项目的质量保证活动的个人(既有经理又有技术人员)的集团,其工作的目的是保证软件过程的步骤和标准得到遵守。
           软件配置管理组: 软件配置管理组是一些负责策划、协调和实施软件项目的正式配置管理活动的个人(既有经理又有技术人员)的集团
     
    总体流程如下:
    计划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》完成
    一、项目计划阶段 
    项目计划草案和风险管理计划作为第一步,当有一个商业机会后,根据公司高层负责制定的初步商业计划书来完成项目的计划草案,确定、分析项目风险并确定其优先级,还要制定风险解决方案。本阶段的目的是确立产品开发的经济理由。

    当确定开发之后则制定软件开发计划、人员组织结构定义及配备、过程控制计划。
    1)项目计划草案
    项目计划草案应包括产品简介、产品目标及功能说明、开发所需的资源、开发时间和里程碑。
    2)风险管理计划
    也就是把有可能出错或现在还不能确定的东西列出来,并制定出相应的解决方案。风险发现得越早对项目越有利。
    3 软件开发计划
    
    软件开发计划的目的是收集控制项目时所需的所有信息,项目经理根据项目计划来安排资源需求并根据时间表跟踪项目进度。项目团队成员根据项目计划以了解他们的工作任务、工作时间以及他们所依赖的其他活动。
    可将计划分成总体计划和详细计划,总体计划中每个任务为一个里程碑,详细计划中必须将任务落实到个人。
    软件开发计划还应包括产品的应收标准及应收任务(包括确定需要制订的测试用例)。
    4)人员组织结构定义及配备
             
    常见的人员组织结构有垂直方案、水平方案、混合方案。垂直方案中每个成员充当多重角色。水平方案中每个成员充当一到两个角色。混合方案则包括了经验丰富的人员与新手相互融合。具体选择根据人员实际技能情况进行选择。
    5)过程控制计划
    过程控制计划的目的是收集项目计划正常执行所需的所有信息,用来指导项目进度的监控、计划的调整,确保项目按时完成。
    二、需求分析阶段
    需求分析阶段的目的是在系统工作方面与用户达成一致。
    1)软件需求规约
    详细说明系统将要实现的所有功能。
    2 用户界面原型
     
    可以有三种表示方法:图纸(在纸上)、位图(绘图工具)、可执行文件(交互式)。  

    三、  软件开发阶段 

    本阶段从物理上实现目标系统。采用了面向对象方法。
    1)软件架构
     
    说明软件的组织结构、部署结构及运行环境。
    2)类设计
    定义类之间的关联和类的属性、方法。
    3)数据库设计
    定义数据库表之间的关联和各个表的字段。
    4)编码和单元测试
     
    按照设计文档进行编码,每完成一个模块应进行单元测试。
    5)集成系统
    按软件组织结构的要求将各个子系统组合起来。
    四、测试阶段
    测试的目的是在发布之前找出程序的错误。包括:核实每个模块是否正常运行(参考设计文档)、核实需求是否被正确实施(参考需求文档)。
    1)测试计划
        
    收集和组织测试信息,为测试工作提供指导。
    2)测试数据
        
    尽量使用真实数据。
    3 测试报告
        
    记录测试结果,详细描述问题,提出解决办法。
    4)帮助文件和用户操作手册
    五、 管理软件开发过程
    有以下几方面地工作:
    1)组织会议
    讨论会议、总结会议等。
    2)评审程序
    对各个阶段的工作结果进行审核。
    3)协调人员
    4 配置管理

            
    使用一些配置管理工具进行开发文档管理,如:visual sourcesafeteamsouce
    六、 各参与角色的具体职责描述及对人员的要求 
    1 项目经理
    职责:
    1
      制定产品的目标。
    2
      制定各个工作的详细任务表,跟踪这些任务的执行情况,进行控制。
    3
      组织会议对程序进行评审。
    4
      综合具体情况,对各种不同方案进行取舍并做出决定。
    5
      协调各项目参与人员之间的关系。
    人员要求:
    对产品有激情,具有领导才能。
    对问题能正确而迅速地做出确定。
    能充分利用各种渠道和方法来解决问题。
    能跟踪任务,有很好地日程观念。
    能在压力下工作。
    2)系统分析员
    职责:
    1
      了解用户需求,写出《软件需求规约》。
    2
      建立用户界面原型。
    人员要求:担任系统分析员的人员应该善于协调,并且具有良好的沟通技巧。担任此角色的人员中必须要有具备业务和技术领域知识的人才。
    3)设计员
    职责:
    1
      定义类的方法和属性以及各个类之间的关联,画出类图。
    2
      进行数据库设计。
    人员要求:    掌握面向对象分析与设计技术,统一建模语言(uml)
    4)程序员
    职责:按项目的要求进行编码和单元测试。
    人员要求:良好的编程技能和测试技术。
    5)测试员
    职责: 执行测试,描述测试结果,提出问题解决方案。
    人员要求:了解被测试的系统,具备诊断和解决问题的技能,编程技能

    申明

    非源创博文中的内容均收集自网上,若有侵权之处,请及时联络,我会在第一时间内删除.再次说声抱歉!!!

    博文欢迎转载,但请给出原文连接。

  • 相关阅读:
    HDU 5486 Difference of Clustering 图论
    HDU 5481 Desiderium 动态规划
    hdu 5480 Conturbatio 线段树 单点更新,区间查询最小值
    HDU 5478 Can you find it 随机化 数学
    HDU 5477 A Sweet Journey 水题
    HDU 5476 Explore Track of Point 数学平几
    HDU 5475 An easy problem 线段树
    ZOJ 3829 Known Notation 贪心
    ZOJ 3827 Information Entropy 水题
    zoj 3823 Excavator Contest 构造
  • 原文地址:https://www.cnblogs.com/Athrun/p/1364945.html
Copyright © 2011-2022 走看看