戳蓝字“CSDN云计算”关注我们哦!

译|Lorraine Lo

文|Isaac Sacolick

来源|InfoWorld网站

如今企业强调敏捷开发不是一天两天,但在此过程中敏捷团队通常都会面临的一大挑战就是如何定义以及遵循开发中数据架构的模式和标准这一系列问题。

人们之所以认为推动数据和技术标准实践的难度很大,主要是因为敏捷团队通常需要2-4周的时间来完成不同sprints(spring被认为是轻量级敏捷框架,又被称为scrum)的开发,毕竟标准需要时间,而遵循标准更需要团队预留足够的时间来规划技术方面的实现;相反产品经理只需要优先考虑功能层面就可以了。

那么问题来了!对于一个正在执行某个sprint且计划下一个sprint的敏捷团队来说,很难有时间依据标准来制定其开发计划。换句话说,如果文档形式的标准不易遵循或者参考,就会导致团队工作效率降低,自然很难培训新的开发人员来进行最佳架构和数据的实践。这就像是一个没有地图或GPS的团队在森林里徘徊,很大程度上会成功摸索到下一个山头,却不能保证可以找到返回站点的最佳路径。所以提前知晓可能出现的有关数据与架构的诸多问题,很必要!
例如可以将数据和架构标准分成以下两类:
  • 标准架构。例如数据模型、数据管道、支持微服务架构的技术、标准化的CI/CD(持续集成和持续交付)管道以及新技术相关概念的求证,这些都需要前期工程工作。
  • 标准实践。包括命名约定、测试要求、微服务接口标准和可用性模式等,这些对敏捷团队在如何实现特性和解决技术债务问题方面具有指导作用。除此之外,标准实践还可能包括定义如何扩展数据模型、验证CI/CD管道改进或记录新微服务端点的流程标准。此外当标准需要工程工作时,最好将此工作定义为敏捷积压中的史诗(epics)、特性(features)和故事(stories),同时将它们分配给适当的团队。
这些团队要将其他应用程序的开发团队视为自己的客户,同时定义验收标准,其中开发的产品负责人可以是数据、应用程序或是解决方案架构师,但都需要致力于提供一个易于敏捷团队使用和交付业务价值的组件。
另一方面,当这些标准为开发团队提供数据和架构指导时,它们也应该成为开发人员如何实现用户故事的基础。这就要求团队对这些标准有深入理解,最好是可以创建一个易于使用的知识库,以便供负责人和各成员查阅参考。
当团队的优先级是对现有应用程序进行小改进时,以上这种方法确实奏效;但如果涉及正在开发的是一项新功能,并且功能要求与数据与架构标准保持一致,即时规划肯定是来不及的。所以要想敏捷团队朝着标准迈进就需要提前做好计划。
理想情况下,团队建立持续性的敏捷规划流程并完成持续审查史诗、特性和用户故事。针对复杂的项目尽可能在计划实施前安排多个sprint,以便团队全面协作完成开发任务,毕竟碎片化的工作相对容易完成。最重要的是,提前开会可以带给团队时间上的压力,由此团队就不得不去考虑引用标准,因为这样才会有充足的时间来执行计划。
此外开发根据参考架构和数据模型描述当前和近期未来状态以及长期目标,是协调敏捷团队的另一种有效方法。这些图表可被视为开发团队的路线图,用以指导如何更好地实现其与架构、数据标准的一致性。
为了将这些不同元素同时呈现在单个页面上,架构师不仅要定义相关组件的范围,还应该精确描述一个或多个应用程序的端到端服务。其中参考数据模型可能包括多个图表,具体取决于数据在组织中的使用方式。通常包括:
  • 概念数据模型——用以描述业务实体、关系和基本事务。
  • 数据集中在数据湖泊或数据仓库中的分析模型——用于分析、人工智能实验和数据可视化。
  • 数据集成模型——显示数据源,对从其加载的数据执行关键转换以及存储的主数据库。
  • 服务模型——显示微服务和其他API如何连接数据库。
毕竟在这个过程中,团队集中精力完成开发代码和产品发布已经承受了莫大的压力,所以对他们来说,审查标准不是最重要的;这时候就应该由架构师负责审查用户故事、与团队成员面对面分享学习、在故事中制定验收标准等,来保证实施和标准的一致性。此外,软件开发经理还应与其团队就验收标准进行讨论,从而达到实施与未来架构和数据标准相一致的目的。
如今大型企业采用多种方法来保证敏捷团队与数据及架构标准一致性,迫在眉睫。想要团队能够交付与架构一致的新功能,不妨试试定义标准、在sprint之前进行规划、编写架构驱动的验收标准和定义权责这些实践方法,看看是否有效?
福利
扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!

推荐阅读:
  • 架构师必备技能:教你画出一张合格的技术架构图

  • 30 岁程序员生活图鉴,怎样算是活成了理想的模样?

  • 千万不要和女程序员做同事!

  • 阿里云智能 AIoT 首席科学家丁险峰:阿里全面进军 IoT 这一年 | 问底中国 IT 技术演进

  • 只有程序员才能读懂的西游记

  • 通信工程到底要不要转专业?

  • 阿里云智能运维的自动化三剑客

真香,朕在看了!

受困于敏捷开发的数据与架构?肿么办?相关推荐

  1. 说说你对敏捷开发的理解(架构师必刷)

    分析&回答 敏捷开发(Agile Development)不是指某一种具体的方法论.过程或框架,而是一组价值观和原则. 敏捷并不是一门具体的技术,而是一种理念或者说是一种思想.它可以指导我们更 ...

  2. 敏捷开发 宣言 思想 认识误区

    敏捷软件开发 Agile software Development 敏捷开发是一种软件开发方法,基于迭代和增量开发,通过自组织,跨团队,沟通协作完成开发工作. 敏捷宣言的诞生: 2001年2月11日到 ...

  3. 敏捷开发 vs 传统开发

    说起敏捷开发,并不是因为敏捷而敏捷.这几年的敏捷开发已经被很多敏捷咨询服务商神话了,这个东西并不是神器,实施了就可以解决所有软件公司的问题,而是要结合自己公司的特点和问题摸索出适合自己的一套模式. 大 ...

  4. 项目的敏捷开发方法(转自MBAlib)

    项目的敏捷开发方法 敏捷方法很多,包括 Scrum.极限编程.功能驱动开发以及统一过程(RUP)等多种法,这些方法本质实际上是一样的,敏捷开发小组主要的工作方式可以归纳为:作为一个整体工作: 按短迭代 ...

  5. 105.敏捷开发模型

    文章目录 1.什么是敏捷开发? 2.敏捷开发宣言 3.站立会议的意义 4.敏捷开发想解决什么问题? 5.如果用敏捷的方式盖房子 6.敏捷开发和瀑布模型的差异 (1)敏捷开发是怎么做需求分析的? (2) ...

  6. 敏捷开发智慧敏捷系列之三:做不做架构设计?

    这是敏捷开发智慧敏捷的第三篇.(之一,之二,之三,之四,之五,之六) 缘起 甲:"敏捷不应该写架构设计,应该每个迭代都是相同的,才能达到自相似性(这是Ken Shweber说的)." ...

  7. 临床研究和医疗保健行业实现数据湖架构的机会和挑战

    ERT首席数据官Prakriteswar Santikary博士上个月在2018年数据架构峰会上做了演讲,在演讲中他谈到了他的团队在其临床研究组织开发的数据湖架构.他讨论了部署在云中的数据平台,使用无 ...

  8. Mendix敏捷开发零基础学习《三》-高级 (数据删除保护机制、数据关联删除、Security安全、调用外部接口、调用JAVA代码)

    目录 Mendix敏捷开发零基础学习<三> 一. 数据保护机制(Prevention of Delete) 1.业务需求 2.业务分析 3.项目实现 二.Mendix权限(Security ...

  9. Mendix敏捷开发零基础学习《二》-进阶(Microflow微流、表单验证、运算符、条件判断、数据嵌套、触发器、Debug问题跟踪、版本管理)

    目录结构 Mendix敏捷开发零基础学习<二> 一.Microflow微流 1.引言 2.常见的功能 3.微流可以做那些事情? 3.1 举例1(用微流打开新增页面) 3.2 举例2(用微流 ...

最新文章

  1. 深度学习:梯度下降算法改进
  2. labview实现简单的图片显示
  3. Python基础教程(十三):JSON、练习题100题
  4. linux查看最近修改过的文件
  5. 利用SharedPreferences完成记住账号密码的功能
  6. C# WPF MVVM开发框架Caliburn.Micro常用功能指南②
  7. 生成树协议(STP)原理与配置PVST+实现负载均衡
  8. 和整数相乘_小学数学基础概念归纳总结:整数篇
  9. mysql8 修改密码_Mysql 8新特性之(1):账户与安全更人性化
  10. 挪威议会的内部邮件系统遭攻击,信息被盗
  11. 透彻理解Java并发的等待队列——Condition
  12. (原创--网上办法经过改良)系统重装后,如何快速的回复oracle 10g(测试环境:windows server 2003 sp1+Oracle 10g)...
  13. Win10系统msvcr120.dll丢失解决
  14. 淘宝客推广赚钱全攻略
  15. 查看Android打包时签名文件keystore的MD5值
  16. 无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系查明你是否有访问权限。
  17. python编写登录脚本_python实现的登录和操作开心网脚本分享
  18. DOCTYPE声明——标准模式与怪异模式的区别
  19. python 使用qq登陆搜狗微信搜索
  20. VFP调用命令行图像处理程序,添加水印也在行

热门文章

  1. 计算机大作业论文意义,大学的大作业是什么?
  2. 迷你世界无人驾驶地铁火车_出口伊斯坦布尔地铁列车“云下线”
  3. 笔记本电脑键盘切换_真想本小新13pro搭档,笔记本电脑周边好物清单推荐
  4. php 文件 不更新,php页面不刷新更新数据
  5. java中wait的场景,wait——webdriver实用指南java版
  6. Linux下environ环境变量操作函数
  7. python安装Scrapy踩过的坑以及安装指导
  8. 还是畅通工程(克鲁斯卡尔算法+并查集)
  9. Set实现类性能对比
  10. C语言之strstr函数