评估和选择软件工具的五个步骤

译文
开发 后端
我在职业生涯的早期阶段是名软件质量工程师,那时主管软件工具的评估、购买和实施工作。作为工具管理员,我帮助同事分析诸多工具,更准确地找出同类中的佼佼者。我遵循的流程非常适合正确评估一系列技术解决方案。考虑到这一点,我编写了这份简要的逐步指南,但愿对将来可能需要选择工具的那些人有所帮助:

【51CTO.com快译】我在职业生涯的早期阶段是名软件质量工程师,那时主管软件工具的评估、购买和实施工作。作为工具管理员,我帮助同事分析诸多工具,更准确地找出同类中的佼佼者。我遵循的流程非常适合正确评估一系列技术解决方案。

考虑到这一点,我编写了这份简要的逐步指南,但愿对将来可能需要选择工具的那些人有所帮助:

1. 确定关键的技术功能

我最近读了本·霍洛维茨(Ben Horowitz)撰写的《创业维艰》一书。谈到招聘高管时,他提出了两点,这两点同样适用于选择工具。他特别指出:“如果你从来没有干过某项工作,怎么招聘到适合这项工作的人员?”而说到选择工具,这可能意味着:“如果你从来没有干过某项工作,怎么为干这项工作的人员选择***工具?”

接下来一点是:“记下你想要的优势,以及愿意容忍的弱势。”这一点很重要,因为没有哪一款工具适用于所有人。我们很容易掉入这个陷阱:因为一味专注于选择一款没有明显缺点的工具,结果选择了一款“勉强可以”的工具。别低估了你所寻找的优势。

首先,确定为最终用户、管理员和公司管理层提供价值的关键技术功能。这类功能的简短清单可能包括如下:平台兼容性、第三方软件兼容性、成套功能、可配置性(指点操作)、可定制性(编码)、符合各种流程的灵活性、易用性、用户社区的活力/规模等。贵企业可能需要更多的功能。

接下来,你需要为技术功能加权。在制作这份等级表时,对你认为最重要的功能赋予更高的权重。在某些情况下,我们会将决策的50%赋予单单一项功能,而其他一些无关的功能只有5%的权重。这可以帮助你评估优势,如上所述。

下图这个例子显示了功能及其权重,总共为100%。

请记住,你在给这些功能加权时力求全面对你最有利,所以别在时间或流程上敷衍了事。我参加过几次评审,粗糙的流程导致了权重偏差严重的功能,这反过来导致选择了错误的工具。我们都听过“垃圾进等于垃圾出”这句老话。这句话同样适用于此。

2. 识别和评估工具

利用各种渠道,比如行业活动、出版物、用户社区和业内同行,调查并选择合格的候选工具。你在努力识别候选工具时,别忘了看看公司内部。你已经在使用什么工具?你在内部可能就已经有几个候选工具。你可能发现,如果目前拥有的工具需要报废或停用,这番工作不仅限于工具选择,还需要考虑到工具整合。如果你***面临多个工具,可能在内部需要提供指导,表明使用哪个工具、为何使用。但是这个话题我们以后讨论。

确保一致性对任何工具评估而言至关重要。切忌这样:看了某家厂商的官方网站和几张数据表后就评估一种工具,然后评估另一种工具:把该工具引入到公司内部,接受几个星期的评估。搞清楚你想要如何一致地给每项功能评分,如何一致地评估每种工具。某些功能可以通过阅读数据表来进行评估。其他功能可以借助现场演示和质量保证来进行评估。而某些功能你必须在自己的环境下亲眼看一下。

使用从1到5的基本等级表,填写矩阵(见下文),给每种工具的每种功能评分。你甚至可以根据几项属性将某项功能单列出来。下面我对功能6的三项属性求平均值,以获得一个分数。

3. 给工具评分,然后列出拥有那些功能的最终候选工具

现在是时候进行一番计算了。加权分数使用下列公式和来自***个和第二个步骤的数值计算而得:

权重/ 5 *分数=加权分数

比如说,工具A功能1:

25 / 5 * 2 = 10

下一步确定“值得保留的工具”。在这种情况下,我们把得分***的工具B和C列入短名单。工具A处于交界点,因为虽然它在一些方面具有优势,但是在其他方面差强人意。这是满足你确定的技术要求的最终候选工具,并注重你想要的优势。

4.计算总体拥有成本(TCO)、投资回报率和软性好处

现在着眼于非技术方面评估“值得保留的工具”,比如总体拥有成本和投资回报率。在这个环节之前,成本被有意忽略。纯粹根据技术功能来评估和选择“值得保留的工具”,并不考虑成本。

价格肯定是大多数企业考虑的一个因素,所以要考虑影响拥有每种工具的总成本的所有因素。这不仅仅涉及明显的前期许可成本。由于没有许可成本,大家忍不住会认为开源工具是“免费工具”,但是如果考虑到所有成本,开源工具可能极易昂贵。非许可成本可能包括:维护和支持续约,与培训用户和管理员有关的时间和成本,需要多少管理员来部署、维护和升级工具,工具管理员和开发人员所需的技能组合,以及那些人员的全部成本。此外,还要调查所需的任何额外的硬件成本。

许多好处是显而易见的,衡量起来相对简单直观。但务必要包括因消除人工流程而预计节省下来的时间。

“软性”好处衡量起来比较困难,但是把它考虑进来非常重要。比如说,公司将得益于提高的团队参与性(因而员工更开心)、更好的可追溯性(因而更好地遵守行业法规)以及因准确数据而改进的管理报告功能(因而带来更合理的决策)。

***,你需要对每家工具厂商的愿景和未来发展方向作一个判断。这家厂商能够成为战略性合作伙伴吗?它是否以稳定的步伐提供创新技术?它有没有能力在今后几年继续交付解决方案?

5. 向利益相关者阐述选项和建议

由于你已经对每种工具运用了排名系统,更清楚地了解了每种工具的总体拥有成本和价值,现在要将相关选项告诉管理层的有关人员。起初根据***技术解决方案来阐明你建议的选择。这很重要,因为***技术解决方案可能是对贵企业最有利的那种方案。除此之外,它可能会带来最满意的开发人员/从业人员,可能甚至影响你留住他们的能力。而我们知道,这年头物色并留住优秀的程序员有多难。

如果***解决方案不是成本***的方案,就要准备分担选择一种技术较逊色、成本较低廉的解决方案带来的业务风险。这些风险可能包括:生产力下降、数据损坏、员工不满以及把钱花在无法实现目标的系统上。选择实际上可帮助你实现目标的那种解决方案,避免客户流失。

如果遵循这五个步骤,那么恭喜你!你可能做出了稳固的业务选择。如果你花时间正确评估面临的选项,贵企业就能大大提高效率,会成为吸引优秀人才前来工作的诱人工作环境。

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:赵立京 来源: 51CTO
相关推荐

2013-11-19 17:39:15

hypervisor私有云

2023-12-21 11:59:29

2013-11-20 08:51:28

hypervisor私有云

2014-03-12 15:23:20

2023-08-01 10:35:46

2022-08-03 10:43:42

安全风险影子IT

2014-02-11 09:41:31

2018-06-14 00:45:11

IoT物联网IoT平台

2024-11-11 10:17:42

2021-12-22 10:37:40

安全勒索软件数据

2023-03-19 17:24:43

2017-01-19 10:44:54

私有云云计算虚拟化

2024-04-25 12:40:09

云安全云迁移

2023-04-20 15:53:05

综合布线光纤

2023-07-13 23:21:02

2021-07-09 05:58:12

勒索软件攻击网络安全

2012-10-31 10:00:01

数据保护数据安全

2013-08-02 09:20:33

网络故障网络危机

2010-06-11 10:39:51

VDI

2019-04-03 14:36:15

点赞
收藏

51CTO技术栈公众号