软件开发项目组各职能介绍 & 测试人员在团队中的定位

前言
    接触了许多非测试和新入行的测试从业者,听到最多的问题就是:“测试是否被需要?“
 
团队职能介绍
    《暗黑者1》中有句台词,“专案组有五个职能角色构成,侦探、网警、痕迹侦查专家、法医还有心理学专家”。
    软件项目开发也是个分工明确的系统工程,不同的人员扮演了不同的角色,可以分为:项目、产品、开发、测试、美工等等。
 
    项目经理负责分配资源,确定优先级,协调与客户和用户之间的交往。
    产品经理负责市场调查并根据产品、市场及用户等的需求,确定产品功能的定义、规划和设计。
    开发包括开发经理、前端开发、后端开发,
        开发经理,称为产品研发经理,负责制定并论证产品研发计划、监督管理研发工作进度及质量,提出有效的解决方案。
        前端开发,负责呈现给用户的过程中创建Web页面或app等前端界面。
        后端开发,通常称为软件开发工程师,负责软件概要设计、详细设计、编码、单元测试工作及说明文档的编写,这一职能更多时候被叫程序员。
    测试,负责理解软件需求,并对其进行测试,检查软件中是否存在缺陷。
    美工负责领导和协调 Web 界面的原型设计和正式设计。
    
    抛开其他职能不谈,假设软件开发过程中,离开测试会有什么结果?影响有四点:
    1,软件质量差;
    2,增加开发成本,由开发人员识别和纠正缺陷,会占用更多的时间成本;
    3,软件推广滞后,软件质量无法保证,触及到用户容忍度,会直接影响到软件在市场中的推广;
    4,增加交易成本,因为缺少测试标准和程序,在软件交付过程中用户无法掌握软件的可靠程度;
 
测试定位
    接上一节,测试人员还可以从(初、中、高)级别和(经理、主管、组长、组员)职位不同角度区分。
    测试人员承担的任务角色决定工作内容和负责的任务,但测试人员需要承担的任务角色是什么呢?这个没有统一的答案,不同的公司和团队针对测试这个角色的定位都有所不同。
    
    从我个人的理解,角色定位有三个,一是找出软件缺陷,二是质量保证,三是参与产品需求优化。
    找出软件缺陷,又称为找bug,顾名思义是软件开发人员将功能模块开发完成之后交付给测试,测试人员开始针对功能模块进行测试验证,寻找其中的问题。
    而在一些流程较规范的公司中,测试还承担着质量保证和参与产品需求优化工作,质量保证又称QA(quality assurance),QA最重要的思想,是树立“自己就是站在客户前面最后一道防火墙”的概念,本着对客户负责,对公司产品形象负责的态度做好测试验证工作。这要求测试人员对自己公司的产品非常的熟悉,对容易出问题的地方做到心中有数,有针对性地进行强化测试。
    参与产品需求优化,看似不是测试人员的工作,但是对于测试人员在实际的软件测试工作过程中,会更容易地发现软件中不符合易用性的操作。因此无论是发现bug还是遇到不够人性化的功能设计,都可以结合软件需求和自身的理解,对软件错误提出应该如何修改更符合需求和体验,整个过程中测试人员可以不断地推送软件产品更加成熟。
    
    经过刚才的梳理,测试人员的工作职责可以列举如下:
    1,搭建测试环境,安装必要的软件工具;
    2,制定测试计划,包括测试资源、测试进度、测试策略、测试方法、测试工具、测试风险等;
    3,制定测试用例,为了更好更有效地进行测试,保证测试工作质量;
    4,发现软件缺陷,快速地定位缺陷出现的操作步骤、原因,编写成正式的缺陷报告提交给开发修复;
    5,评估软件整体质量,确认软件能否达到需求及标准,并编写测试报告提交测试成果;
    6,自动化测试,为了提高工作效率和测试水平;
    7,测试负责人还需要根据实际测试过程中不断地优化流程,提高测试水平和队伍建设;
 
思考结语
    写到这里,已经可以回答前言中的问题,也许在未来测试人员这个岗位会被不需要,但是测试这个行为会永远存在。
    所以在测试生涯的探索和成长过程中,更应该立足于当前,思考如何提升自己的贡献,找到最适合软件开发的测试流程,平衡软件质量。 
上一篇:elasticsearch数据备份与sshfs建立共享文件


下一篇:Redis考察点解析