敏捷开发

【附录】1.tapd在公司敏捷开发中的运用

孤者浪人 提交于 2020-04-06 17:24:54
一、概述 公司业务发展较快,业务从无到有,需要快速的迭代和交付,项目流程不规范,开发测试各种问题,随着项目增多,项目管理问题越来越难。 各种问题的频发,让我们对当前的项目协作模式进行思考,我们需要从项目各方面进行优化改良。在工具方面对市面上几款软件进行了对比,然后对这些软件进行试用,最后我们选择tapd做为我们的项目管理工具。 二、敏捷开发流程 经过不停的学习、摸索、尝试与改变,我们形成了一套满足当前公司业务状态的敏捷开发体系,并拥有自己的一套敏捷开发通用流程。 需求:从各方提出来的需求,都会对接到产品这里 需求池:产品经理经过对需求进行梳理,把已经确定的需求放入需求池,等待进一步的产出 迭代池:需求原型设计完成,就进入迭代池,等待排期开发 迭代:从迭代池中根据优先级、类型等条件会将需求划入不同的迭代版本进行排期 开发:开发根据迭代排期进行开发,通常我们都是多个迭代同时进行 测试:开发完成进入测试阶段 产品验收:测试通过后进入产品验收 发布:产品验收通过后进行发布 线上验证:发布后进行线上验证,保证各种环境配置功能都已正常 需求验收:产品给需求方进行交付验收 bug与优化:项目上线后会收到新的优化需求或者bug,经过筛选处理后都会进入需求池。 此时,一个完整的迭代闭环完成。 三、敏捷开发中的tapd 1、看板--需求收集管理 产品经理会使用看板来进行需求收集管理

目录:项目经理与敏捷开发实战

故事扮演 提交于 2020-04-06 15:21:41
在个人做项目管理的职业生涯中,把自己的经验形成文字记录了下来。思考了很久,于是定了一个主题《项目经理与敏捷开发实战》,在后续的内容章节中都会按照这个主题来分享。 序 从研发到项目经理 03-28 入门 初为项目经理的第一课 03-28 项目流程 03-29 敬请期待 实战 如何开每日站会 03-29 如何写周报 03-30 迭代的规划 04-01 做好冒烟测试 04-02 确定核心功能 04-03 敬请期待 提升 敬请期待 附录 tapd在公司敏捷开发中的运用 03-22 疫情期间高效远程办公实战 04-02 敬请期待 来源: oschina 链接: https://my.oschina.net/kenblog/blog/3213325

实验二---结对编程

馋奶兔 提交于 2020-04-04 17:40:48
一、实验目标: 1)体验敏捷开发中的两人合作。 2)进一步提高个人编程技巧与实践。 二 、实验内容: 1)根据以下问题描述,练习结对编程(pair programming)实践; 2)要求学生两人一组,自由组合。每组使用一台计算机,二人共同编码,完成实验要求。 3)要求在结对编程工作期间,两人的角色至少切换 4 次; 4)编程语言不限,版本不限。建议使用 Python 或 JAVA 进行编程。 三、问题描述 **生命游戏** 生命游戏是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机,它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死亡的细胞。一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因太孤单而死去。 游戏在一个类似于围棋棋盘一样的,可以无限延伸的二维方格网中进行。例如,设想每个方格中都可放置一个生命细胞,生命细胞只有两种状态:“生”或“死”。图中,用黑色的方格表示该细胞为“死”, 其它颜色表示该细胞为“生” 。 游戏开始时, 每个细胞可以随机地(或给定地)被设定为“生”或“死”之一的某个状态, 然后,再根据如下生存定律计算下一代每个细胞的状态: 每个细胞的状态由该细胞及周围 8 个细胞上一次的状态所决定;

敏捷软件开发揭秘

人走茶凉 提交于 2020-04-03 10:27:22
前言 本篇文章将对敏捷软件开发的方法论及其应用做基本介绍,将描述团队是如何通过协作来完成共同目标的。本篇文章不仅仅适合软件开发人员阅读,同时也适合于团队负责人、项目经理、产品经理、开发经理、测试人员、QA经理、QA工程师、技术文档专员、用户体验设计师等任何涉及软件交付的人员。文章重点介绍技术团队是如何通力协作来计划、构建和交付软件的。但文中没有具体代码的编写,也没有对特定技术的介绍,并且也不会介绍任何微软技术。希望这篇文章可以帮助你改善专业性和团队的效率。 背景 Winston Royce 瀑布模型 引自 1970 年的 IEEE 论文 "Managing the Development of Large Software Systems" 该论文中阐述了,在计算机程序设计开发过程中,无论软件的规模和复杂度如何,都会经过两个必不可少的阶段:软件分析和编码。而许多其他额外的开发步骤,虽然也是需要的,但却都没有像软件分析与编码一样对最终产品作出最直接的贡献,反而增加的开发过程的支出。 然后,Royce 介绍了需要额外的将 5 个重要的步骤添加到整个开发流程中,用于最大化地消除软件开发中的风险: 步骤1:程序设计优先 一个软件程序的初步设计阶段,将被插入到软件需求和软件分析阶段之间。程序设计人员将在此阶段开始进行软件整体的初步设计,包括设计、定义和指定数据处理模型,定义系统间的接口

微软(北京).NET俱乐部 & 微软社区精英计划 VS2010敏捷开发和云计算 线下活动(北京)

落花浮王杯 提交于 2020-04-01 09:02:00
感谢您对VS2010一直以来的关注和支持。6月26日微软.NET俱乐部邀请到了多位MVP,针对 Visual Studio 2010敏捷开发、Web前端开发与广大北京的.NET技术爱好者进行互动交流,应参会来宾的强烈要求,微软.NET俱乐部和微软社区精英计划项目组将再组织一次与VS2010敏捷开发和云计算相关的线下活动,欢迎广大技术爱好者参加,一同分享微软新一代开发平台的革新之处,帮助更多的开发人员实现更完美的Coding梦想。 活动议程 : 时间 内容 13:30-14:00 签到 14:00-14:10 微软 .NET 俱乐部 & 社区精英计划介绍 14:10-15:00 Agile on Microsoft ALM ( Visual Studio 2010 )(讲师:高阳) 15:00-15:10 休息 15:10-16:00 Windows Azure platform 开发入门(讲师:蒋建华) 16:00-17:00 自由讨论 & 抽奖 时间: 2010 年 7 月 18 日(周日) 14 : 00 – 17 : 00 地点: 北京市海淀区知春路 49 号 希格玛大厦微软研发集团 2 层会议室(城铁 13 号线,地铁 10 号线地铁知春路站) 参会方式: 1、报名地址: http://bbs.wpmind.com/viewthread.php?tid=381&extra=

探讨敏捷开发在软件开发中的应用

懵懂的女人 提交于 2020-03-30 16:22:18
在软件工程领域,有过很多软件开发模型,如瀑布模型、快速原型模型、增量模型、螺旋模型、演化模型、喷泉模型、RAD模型、敏捷软件开发模型、XP极端模型。这么多的模型各有各的应用场景、各有各的适用范围,但我认为最实用开发模型还是敏捷软件开发。 中国式软件开发思路是什么样的呢?从我接触过的大多软件项目来看,基本都有一个共同特点——就是必须快,客户都是急脾气,恨不得今天立项,明天就要你拿出产品来。 面对公司和客户如此快节奏的要求,我们有办法吗?人们从生产、生活中总结出来一套即高效又优质的开发模式——敏捷软件开发。 什么是敏捷软件开发呢? 敏捷开发是以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系、而又可以独立运行的小项目,并分别完成,从而实现快速开发的目的。 还是具体来说下敏捷开发是如何实现的? 1、将大的系统拆分成子项目。 以前我们接受过的思想是立项后先要需求调研、分析,调研后出各种调研报告及需求说明书,需求搞定后,再进行概要设计(UE设计、UI设计、交互设计、数据库设计、框架设计),概要设计完成后再进行详细设计……这样一个周期下来,耗费太长,当进度进入下一阶段,当上一阶段有问题时,会影响到整个项目流程的各个阶段。

敏捷开发方法综述

眉间皱痕 提交于 2020-03-30 03:40:05
一、传统软件开发方法 传统的重量级软件开发方法存在很多局限:   (1)传统软件开发过程是基于设计之初正确的设计与估计.并通过开发人员开发出完美的产品。开发方式以“明确需求”为核心.从需求分析、软件设计到系统实现,再进行集成和测试。这样,系统集成进行得比较晚,集成的时间周期比较长,集成时发现的缺陷也比较多。   (2)虽然目前有许多项目采用增量迭代的开发周期,但是通常项目在部署前才发布版本,用户只有在部署后才能看到真正的系统.因此,用户会提出很多修改意见,包括流程方面的问题.有此问题可能会影响到系统的架构设计。   (3)开发人员由于进度或成本等因素,对单元测试重视程序不足,又缺乏有效的回归测试方法,这样,对于用户提交的Bug,开发人员对Bug的定位时间会比较长,因此,修改的周期也会比较长。   (4)传统的开发方法中规定了各种文档,如需求分析、软件设计和各种测试文档等等。在软件开发过程中变更是不可避免的,但是经常需求变了、设计变了,程序变了,而相应的文档却没修改。时间越久,文档就越不符合实际情况。 为克服以上限制,敏捷开发方法应运而生: 二、敏捷开发方法 敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备继承和可运行的特征。换言之,就是把一个大项目氛围多个相互关系,但也可独立运行的小项目,并分别完成

探讨敏捷开发在软件开发中的应用

微笑、不失礼 提交于 2020-03-27 14:50:21
在软件工程领域,有过很多软件开发模型,如瀑布模型、快速原型模型、增量模型、螺旋模型、演化模型、喷泉模型、RAD模型、敏捷软件开发模型、XP极端模型。这么多的模型各有各的应用场景、各有各的适用范围,但我认为最实用开发模型还是敏捷软件开发。 中国式软件开发思路是什么样的呢?从我接触过的大多软件项目来看,基本都有一个共同特点——就是必须快,客户都是急脾气,恨不得今天立项,明天就要你拿出产品来。 面对公司和客户如此快节奏的要求,我们有办法吗?人们从生产、生活中总结出来一套即高效又优质的开发模式——敏捷软件开发。 什么是敏捷软件开发呢? 敏捷开发是以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系、而又可以独立运行的小项目,并分别完成,从而实现快速开发的目的。 还是具体来说下敏捷开发是如何实现的? 1、 将大的系统拆分成子项目。 以前我们接受过的思想是立项后先要需求调研、分析,调研后出各种调研报告及需求说明书,需求搞定后,再进行概要设计(UE设计、UI设计、交互设计、数据库设计、框架设计),概要设计完成后再进行详细设计……这样一个周期下来,耗费太长,当进度进入下一阶段,当上一阶段有问题时,会影响到整个项目流程的各个阶段。

敏捷开发中的故事点到底是什么?如何预估故事点?

时光毁灭记忆、已成空白 提交于 2020-03-25 16:47:22
3 月,跳不动了?>>> 故事点 是敏捷项目管理和开发中的一种抽象的度量单位,用于估计实现一个或多个用户故事的复杂度,它是对工作量的一种描述方式。一个故事点就是一个数字,透过这个数字告诉整个团队用户故事的复杂度。复杂度包括功能的难易程度、风险和花多大的功夫。 故事点(story point)和预估时间(estimated)不一样,故事点是一种相对的估计,它并不能和类似“人/天”这样的单位画等号,因为每个人完成同样复杂度的工作所需的时间是不同的。我们举个例子说明一下: 假设T团队有A、B、C三位员工,A君的能力是B君的2倍,B君的能力是C君的2倍(能力是不能这样对比的,这里只是方便说明问题),T团队约定10天为一个迭代,现在他们想计划一下未来的工作。如果按照预估时间的方式,一个用户故事B君觉得需要1天,A君觉得0.5天就可以,C君觉得需要2天,那么他们最终定多少呢? 这里可能出现两种结果: 第一种结果,A君说这个我来做,写0.5天吧!如果按照这个方式,那么整个计划会议就演变成分工会议,A君挑若干的用户故事,自己进行估时,B君和C君也是如此,当每个人的总估时都逼近10天的时候,那么这个迭代的目标就确定了。这是很多团队实际采用的方式,看起来好像没问题,但是久而久之,这种方式的弊端就会显现出来。 自己干自己的,不关心全局的进展。既然每个人自己的工作内容都已经确定

一款集代码生成器+权限管理+工作流+报表工具+APP小程序于一体的敏捷开发框架

半世苍凉 提交于 2020-03-23 19:32:17
3 月,跳不动了?>>> XJR敏捷开发框架是一套集代码生成器+通用权限管理+工作流+即时通讯+报表工具+手机APP小程序开发于一体的敏捷开发框架。拖拽拉可视化操作配置,降低开发难度和缩短开发周期,提高80%以上的工作效率,提供源码,可无线扩展,轻松开发CRM、OA、ERP、WMS、小程序、电商管理后台等各种企业管理系统。 以下是这个敏捷开发框架的一些阐述: 技术特点 技术选型: 使用目前流行的多种web技术,包括springboot, JPA,Druid, Activiti,Lombok,swagger,poi,WebSocket,Jquery,BootStrap, maven,Jenkins 等等,支持多种数据库MySQL, Oracle, sqlserver等。 分层设计:使用分层设计,分为dao,service,Controller,view层,层次清楚,低耦合,高内聚。 安全考虑:严格遵循了web安全的规范,前后台双重验证,参数编码传输,密码md5加密存储,shiro权限验证,从根本上避免了SQL注入,XSS攻击,CSRF攻击等常见的web攻击手段。 功能模块: 开发向导、代码生成器,商业智能、工作流、报表管理、移动端开发、作业计划、多语言、数据源管理、企业微信、钉钉、消息管理,菜单管理,用户管理,机构管理,角色管理,区域管理,字典管理,日志查询等基础模块。