如何实现敏捷软件开发?

访客4年前关于黑客接单1094

敏捷开发究竟是什么?通俗地讲,他就是将项目分为多个独立运行,但又存在联系地小项目,通过分别完成实现快速开发。整体来看,它的优势就是高效!

如何实现敏捷软件开发?

在软件工程领域,有过很多软件开发模型,如瀑布模型、快速原型模型、增量模型、螺旋模型、演化模型、喷泉模型、RAD模型、敏捷软件开发模型、XP极端模型。这么多的模型各有各的应用场景、各有各的适用范围,但我认为最实用开发模型还是敏捷软件开发。

中国式软件开发思路是什么样的呢?从我接触过的大多软件项目来看,基本都有一个共同特点——就是必须快,客户都是急脾气,恨不得今天立项,明天就要你拿出产品来。

面对公司和客户如此快节奏的要求,我们有办法吗?人们从生产、生活中总结出来一套即高效又优质的开发模式——敏捷软件开发。

一、什么是敏捷软件开发呢?

敏捷开发是以用户的需求进化为核心,采用迭代、循序渐进的 *** 进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系、而又可以独立运行的小项目,并分别完成,从而实现快速开发的目的。

二、敏捷开发是如何实现的? 1. 将大的系统拆分成子项目

以前我们接受过的思想是立项后先要需求调研、分析,调研后出各种调研报告及需求说明书,需求搞定后,再进行概要设计(UE设计、UI设计、交互设计、数据库设计、框架设计),概要设计完成后再进行详细设计……这样一个周期下来,耗费太长,当进度进入下一阶段,当上一阶段有问题时,会影响到整个项目流程的各个阶段。

而敏捷 *** 是会将大的系统拆分成一个个子项目,再把子系统拆分成子模块,尽量减少模块间的耦合性、增加其内聚性,这样我们可以把团队分成多个小组,各组可以同时作业。另外,当一个模块需求发生变化时,对其它模块的影响也不会太大,以实现降低开发难度的目的。

在之前提到的房产信息网平台建设中,我们就将系统拆分成自行成交、经纪成交、用户权限管理、建委等外部接口、大宗资产、交易管理、平台后台管理、网站前端等模块分别进行需求讨论,需求讨论后再将各模块拆分成各个对象,对象与对象间只是通过公有变量传递信息,尽量减少与外部对象间产生关系。

总结:化整为零个个击破

2. 团队与客户呆在一起

为了降低沟通成本,我们团队所有人员直接开到客户现场,随时与客户沟通,通过面对面的沟通,减少了理解偏差。

在项目的各个阶段,我们一直与客户保持零距离接触,随时交流、沟通。通过这种办法,可以之一时间获取需求、之一时间解决问题,减少出错的可能性,提高开发效率,保证开发质量。

而且,通过这种方式会更容易取得客户信任,客户能够随时了解到项目的工作状态、工作进度。当相互间具备了信任关系后,余下的工作也会变得轻松、愉快。

在房产项目里,我们在客户现场办公,定期开会讨论需求和设计,当有一些小的不确定问题,团队成员会直接找到客户相关人确认。在整个项目周期中没有发生过大的需求变化。

总结:与客户面对面的交流,降低交流成本,促进相互信任。

3. 用建模方式沟通

利用模型与客户沟通,用模型来获取用户需求,而不是通过大量的文档,编写文档费时费力,而且效果不好。实际,对于我们大多数人来说并不喜欢花大量时间看各种文字和参数,而模型则会更直观和立体。这里我说的模型不是单指我们平时设计的原型,它包括用例图、类图、部署图、状态图、活动图、包图、对象图、原型图、效果图、E-R图等,利用不同图形表达出产品的不同维度,使产品丰富而立体。

在房产项目里,我们用原型与客户讨论需求,用ER图沟通数据库设计,用类图来表达产品的对象,用部署图确定硬件部署环境及 *** 结构,用活动图来说明信息交互流程,用时序图来表达在时间轴下对象间的交互。通过各种图表来表达产品,利用这种 *** 会比较直观,而且当发现错误修改起来也容易,不像利用文档方式,修改不方便、维护困难,也不利于阅读、理解。

总结:利用模型来代替文档进行交流。

4. 敢于迎接变化

市场环境是产品的风向标,我们要随时关注市场。为了迎合市场,产品也要随时变化。

需求变化、设计变化……各种变化让我们焦头烂额,但做为产品人的我们同样也应该接受改变,只有产品的快速变化,才能很好的迎接未来。

我们欢迎变化,只要是合理的,哪怕是开发阶段,需求也同样可能发生变化。

相关文章

出色的产品经理应具备的四点特质

出色的产品经理应具备的四点特质

什么是出色的产品经理呢?有些人会说做出一款解决用户需求、实现公司商业战略的产品,那他就是一位出色产品人。但是这其实只是一位合格产品人应该做的,要想做到出色,还需要满足笔者提到几个特质。 产品经理是指...

Axure教程:顶部导航光标定位

Axure教程:顶部导航光标定位

当鼠标移入顶部菜单时,菜单顶部有光标跟随,当移出时,光标自动回到当前页面菜单位置。这种效果应该怎么实现呢? 如下图: 顶部导航光标定位 线上效果图,查看: 制件方法 1. 页面与导航栏制作 按平时...

教育产品优惠券应该是什么样的?

教育产品优惠券应该是什么样的?

本文主要讲的是在教育产品中为什么大部分都会做优惠券,优惠券的本质是什么?优惠券可以解决什么样的问题?什么样的优惠券算是成功的优惠券。 教育产品优惠券的本质是什么? 产品在盈利与销量之间的平衡下,通过...

5种方式,提升你的空状态设计价值

5种方式,提升你的空状态设计价值

我们做体验设计的时候很容易忽视空状态设计的价值与可能性,通常用一张插画,一句文案就完成了所有空状态页面的设计。 空状态设计 ≠插画+文案 但实际上空状态的体验是可以有更多可能的,首先我们要了解空状态...

2020年黑马小程序野蛮生长启示录:服务器瘫痪才是衡量爆款的唯一标准

2020年黑马小程序野蛮生长启示录:服务器瘫痪才是衡量爆款的唯一标准

“痛点”就是那种挂在每个人嘴上,但在有生之年的实际推广中却从来没有真正见过的东西。 除了在剖析他人成功之路时,作为事后诸葛亮的分析之外,我们总是发现自己产品在推广过程中很难去勾起用户的使用动力。在产...

关于BI,你想知道的都在这里

关于BI,你想知道的都在这里

过去几十年,BI经历了从工具到“决策大脑”的角色转变,而未来一定是向“智能决策大脑”转型,也就是“AI+BI”。未来5年,BI不会只停留在对历史数据的多维统计。 当很多人还不知道BI(商业智能)是什...