Jed Moffitt没想到他在Puget Sound的King County Library System (KCLS)担任的IT服务总监角色会延伸到领导基于Web的敏捷软件开发项目上。但是,现在,开发项目规划已占了他工作的30%。不过这一路充满挑战:快速应用及新功能交付的高需求,员工抵触,作为早期采用者的痛苦,当然,还有紧巴巴的预算。
“自从Amazon和Google之类的公司因为读者而成为竞争对手后,图书馆也必须提供互联网服务来保持自己的地位,”Moffitt说。他必须转变图书馆更新缓慢的历史,让拥有47个分支的图书馆系统,能在图书馆使用的如此众多信息上网时发挥作用。建设并针对Web定制KCLS应用的决定让Moffitt成为了一位先驱。“你很难找到第二家走这条路线的图书馆,”Moffitt说。他复述了自己的同事对此的常规反应:“你在开发软件?别开玩笑了!”
软件史引领走向开源工具
必要性此前促使Moffitt进入了软件开发。回到1986年,Moffitt就开始着手图书馆系统工作,将旧式的基于纸质的卡片目录转为软件目录。
“我用哑终端和只有半K内存的计算机,”他说。在此基础上,他开始用软件实现“图书馆流程最棘手的部分”。这意味着要对选书、购书、分类、跟踪等事情进行自动化。并开始在没有得到图书馆软件供应商必要的技术支持的情况下定制开发、修补漏洞。
随着电子书及信息服务的互联网供应商的流行变得明显,Moffitt开始对KCLS新的集成图书馆系统(ILS)进行评估。基本上ILS就是一个为图书馆定制的企业资源管理套件。KCLS团队选择了Evergreen Project的Evergreen软件,这是一个开源的、基于Linux的ILS,具备了可伸缩性及丰富的功能集,内置的工具包括管理、分类、资料流通,无论图书馆多大、多复杂均可适用。
Evergreen的开源是主要的吸引力。“商用软件供应商真的只想着把同一样东西的多个版本卖出去,想着卖授权费,”他说。此外,采用开源软件让用户有机会进行修补,这是Moffitt渴望的一个选项,因为他曾经历过供应商支撑不到位的情况。
KCLS选择了一个与Evergreen Project相关的服务提供商来支撑应用开发、定制及部署。“我们没有那么强的实力来充当图书馆开发商店,那不是我们的战略,”他说:“我负责整个系统的技术、网络、中心服务器、电话、企业资源、业务办公室以及会计资料这类的东西。”图书馆应用和服务全部都是在本地托管的。
早期采用 风险重重
新的ILS很快就暴露出问题。“有些问题是我们自己制造的,推进速度有点太激进了,”Moffitt说。在生命周期中过早采用Evergreen导意味着要牺牲被替代软件的一些功能和特性。
实现新功能或对原有的进行客户化都是一个缓慢的过程,很大程度上是因为技术提供商采用瀑布流开发。King County的图书管理员变得沮丧,因为功能交付太慢了,从来都跟不上他们的需求和期望。
突然之间,Moffitt管理的项目陷入了混乱。“我们不得不仓促行动,”他说:“我们意识到自己得要有更多的帮助来让系统执行得更好。”
KCLS评估了7家开源软件和服务提供商。大型开源供应商无法应对KCLS对需要学习ILS的敏捷团队的需求,也无法以合理的节奏和价格产生出结果。Tucson的一个开发服务机构被列入考虑范围,但最终选上的是巴尔的摩的一家低成本的Catalyst IT Services。
敏捷展开拯救
成本并非决策的要素。Catalyst IT的开发方法论,敏捷才是。短迭代并征求用户反馈再行动的敏捷方法很适合KCLS。“无需再等待新的功能和修补,甚至简单的事情完成了,”Moffitt说:“我们每周都能根据规范改一次系统。”
King County的图书管理员已经从ILS的意见相左者变成支持者。“看到这个定期的流程能让我们争取到这些利益攸关者并让他们以一种非常具有协作性的方式参与到流程中,”Catalyst IT Services的CEO Michael Rosenbaum说:“他们现在对我们的工作成果寄予希望,对于每一个完成的阶段也有了主人翁的感觉。”
不过一路上还是有一些不平坦的地方,尤其是当Moffitt和Catalyst IT的团队全力应对ILS复杂的GUI以及遭遇到几次失败的迭代时。然而作为团队,他们增进了对ILS的专业知识,在修补漏洞和交付新功能方面慢慢变得熟练起来。“Catalyst IT的贡献可以打一个‘A’,”Moffitt说。
现在,Moffitt正跟Catalyst IT一起规划应用开发项目,后者进行实际的开发、部署等相关任务。华盛顿的另一家服务提供商则负责处理KCLS数据库优化并对KCLS的新应用进行沙盒测试。
基于自己在ILS上面的经验,Moffitt向自己的同行提供了以下一些提示:
- 当心被绑定在一家供应商的服务及软件上。
- 在购买或开发软件前要勤于做业务分析并制定开发规范。
- 除非企业乐于蜗牛般的迁移速度,否则请选择敏捷开发。
感谢敏捷开发,Moffitt说,“我们很快就走出了混乱,从而可以着手更大更具前景的项目当中。”
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
翻译
相关推荐
-
2019年值得考虑的5款开源云监控工具
在过去十年,开源软件生态系统日趋完善,云监控工具也不例外。在2019年,企业将面对广泛的开源工具选项,用以监控 […]
-
“以建应变”:敏捷+DevOps驱动数字化转型
数字化转型由软件驱动。如今在数字化转型中,交付软件实际上处于每一个业务的核心,这一软件趋势也正好与CA Technologies一直强调的应用经济相一致。
-
开发运维一体化(DevOps):协作是成功的保障
如今的IT部门存在一个矛盾:敏捷开发者希望可以快速部署常规软件,而运维团队则优先考虑稳定性。开发和运维不同的成功指标使得每个团队都有自己独立的目标
-
CA Technologies CEO呼吁企业领导者善用软件的颠覆力量
CA Technologies首席执行官 Mike Gregoire日前在CA World ’15上发表了主题演讲,聚焦业务领域对创新速度的更高要求,呼吁企业将软件作为一项基本组织化原则,以在快速变化的世界里保持优势地位。