时间: 2021-07-30 13:03:13 人气: 4 评论: 0
编辑导语:作为一名UI/UX设计师,在工作中接触到“敏捷”一词时,也**感觉到模式和难以理解。从需求到设计每一步都需要了解清楚,那么敏捷开发这种模式该如何做呢,我们一起来看看吧。
刚接触敏捷时我对这种模式是不能理解的,没有调研没有文档,从需求到设计用的方法和学校里所学的完全不一样,但经过两年的工作后,我的认知开始发生变化,下面我将作为一个UI/UX分享一些我对敏捷式开发的理解。
在互联网行业中,一个项目的完整生命周期都是由一个团队完成的,团队成员也许**变化,但任何一个角色都不可或缺。
为了更好地完成共同目标,团队成员除了在自己负责的领域是专家,还需要了解其他人的工作内容及整个团队的工作模式。工作模式是连接团队成员的一种运作方式,要求每个人都清晰了解,并认同。
起源于20世纪90年代,由开发程序员提出,是相对于传统软件开发方法(如瀑布流模型)而言的一种新软件开发模式。这里认为该模式不仅仅适用于开发,也适用于团队除开发外的其他角色,因此将它视作为团队工作模式。下图为敏捷开发的价值观。
个体和互动高于流程和工具:人是最重要的因素,敏捷提倡打破部门的概念,人与人之间面对面沟通,交流。敏捷的办公室常常是很热闹的。
工作的软件高于详尽的文档:看文档是一件让人头疼的事,无论是需求或技术文档,撰写和维护都需要耗费大量的人力,文档的不灵活性让其地位在敏捷开发中地位降低,因此这里的文档要尽可能精简,能用软件替代文档的任务首选软件。
客户合作高于合同谈判:客户对产品的需求**随着他自己的认知和心情变化,能从一开始就确定细节的项目实在太少,经常与客户沟通,给予反馈才能促成项目的成功。
响应变化高于遵循计划:和瀑布流中将产品的功能完全规划好后集中开发不同,不断变化的需求让敏捷从业者制定计划时尽可能的简化,这里可以结合MVP(Minimum Viable Product 最小可行性产品)的概念去理解。
每次迭代交付一个可用的最小功能,这个功能时是不完美的、简陋的,只能满足用户最基本的需求,然后通过后期客户的正反馈慢慢完善功能。这种方式试错成本低,能快速应对需求变化。
这里简单描述自己工作中两周为一个迭代的工作流程。
一个开发阶段称为一个Sprint(冲刺),每个Sprint开始前,都**举行一个Planning Meeting(计划**)来共同规划这个迭代的开发任务,**议主持人一般为PM(产品经理)或PO(Product Owner,产品负责人)。
**上,PO**向团队成员展示列入这个迭代开发的需求。
每一个需求都是一个或多个任务(Task),PO根据优先级安排要开发的任务,描述每个任务要达到的目标,和设计、开发、测试确认,在Scrum Master(敏捷教练,一般为技术大牛)的协作下找到任务处理人并以工时为单位预估任务完成需要的时间。
最后,团队成员之间聊个五毛话题增进感情,Planning Meeting就算结束了。在接下来的两周内,每天上午团队成员要开一个简短的Standing Meeting(站**),每人说明昨天做了什么,完成度如何,如有拖延是因为什么原因,是否需要其他成员帮助,以及今天计划要完成的任务。
一周下来,要开一个半程回顾**,了解开发进度,若有延迟,及时做出对应调整。两周下来是一个全程Review Meeting(回顾**),回顾这个迭代的完成度,并展示实现的功能,现场Demo。
注:这部分示例图来自**敏捷类办公产品Tapd。
需求由PO建立,是将用户故事(User Story)简化后的产物,描述在什么场景下需要完成什么样的功能,对开发而言就是一个开发任务(Task)。
功能比较复杂的需求往往**被拆解成多个需求,拆分到以用户角度可接受的最小颗粒度功能作为子需求,以父子需求的方式进行关联。开发的角度上看可以由一个开发(Story Owner)接下这个任务,再分配给其他开发人员。
需求池里记录着待开发的需求及优先级,优先级按照对用户的价值进行排序,高的**先开发。PO在表述需求时往往不**有详细的需求文档,一般**用简短的文字描述在需求详情里,再加上面对面沟通将需求传递给设计或是开发。
以卡**的形式展示当前迭代的进度,包括任务内容,优先级,处理人,状态等信息。PO可从这里清楚地看到团队的进度,开发也可以通过筛选来了解自己各种状态的开发任务。
工时是影响一个迭代完成度的重要因素,涉及到任务处理人对工时的预估,如果实际工时高于预估,势必**造成任务延期或开发加班,影响整个迭代的完成度,如果实际工时低于预估,便**造**力资源的浪费,影响效率。
准确的预估工时需要开发人员有丰富的经验,掌握业务逻辑,了解自己的开发能力,此外工时还包括安全时间,以处理特殊情况。
一般每个开发一周有略低于40(5×8)个工时的任务量。处理Bug所用时间不算在工时内,Bug秉承优先解决,谁开发谁解决的原则。
敏捷的特点,优点,缺点都是灵活。
优点:
缺点:
本文由 @B端交互设计师 原创发布于人人都是产品经理。未经许可,禁止转载
题图来自 Unsplash,基于CC0协议