克里斯·约翰斯顿,捷豹路虎
在路上或OFF时,捷豹陆路车的车辆都是为了他们出色的转向,骑行和处理而闻名。在这次谈话中,克里斯将描述在整个公司产品线上系统地量化和优化车辆动态的挑战。然后,他将解释他的车队动态和软件工程师的发展方式如何发展和应用一套高级MATLAB®基于工具,极大地提高生产力和决策能力。
记录时间:2018年10月2日
我们身边到处都是证据,表明我们正在设计的世界正变得越来越复杂,像这样的会议是一个很好的机会,展示这种复杂性是如何在科学、工程和我们工作的行业中体现出来的。
让我们来看看。因此,无论是航空航天和国防,还是计算机,或眨眼,你就会错过机器人和人工智能的日常进步。如果你不知道右边的这家公司,他们叫波士顿动力公司。我相信你们很多人都知道,但创新的速度是惊人的。事实上,YouTube上到处都是,所以去看看吧。它们也有点吓人,所以值得一看。
那么在我们在JLR的工作中看到的行业,这种复杂性的复杂性是什么?我们的客户要求未来更安全的车辆。最先进的燃烧发动机正在促进所有电动推进。在那里,你可以看到新的捷豹I-Pace。
即使是最现代化的推进装置也在日益被取代。甚至人机界面也被设计得看起来更简单,但实际上却变得复杂得多。左边是非常漂亮的捷豹E型内饰。看起来很复杂,其实不然。市场需要右侧的外观和感觉,但简单的外观掩盖了仪表板背后的复杂性。
同样值得注意的是,仪表板的复杂性,有多个屏幕,并不是很容易确保它看起来简单,并实际工作在一起。做起来相当复杂。在左边,同样,所有这些开关,它们都是独立的。它们都做一件事,所以看起来很复杂,其实不然。因此,斯特林·莫斯本人并不认可捷豹重返赛车界。
这不仅仅是我们的车辆越来越复杂。我们对工程的方式以及我们使用的工具也是如此。在右侧,您可以看到VR墙,其中我们的组件在3D之前被视为原型甚至制造。
所有这一切都是由一天的代码基础的巨型基础的巨大,所以你在这里看的是什么 - 希望你能够清楚地看到 - 沿着水平轴的数百万个代码线熟悉的代码基础。因此,您可以看到这些随着时间的推移和现代操作系统的增加,我们正在寻找超过1亿行代码,范围流浪者对此没有例外。
我将把这个幻灯片留下一秒钟,因为比尔盖茨有一个非常棒的报价,它描述了在过去几十年加速创新和变革中我们已经看到的内容。“从来没有在历史之前创新过许多时间的创新,这么短暂的时间。”明智的话。
那么,设计一款像现代路虎揽胜这样复杂的汽车到底需要什么呢?我会告诉你们一些我们在捷豹路虎是如何做到这一点的。它被称为产品创造和交付系统,我们从PS开始,Star项目,一个车辆的最初概念或想法,我们最终得到的是一辆成品车,一辆从生产线上下来的汽车。我们称之为第一份工作。
在这两个点之间,我们有通道,检查点,可以这样说,我们在做工程我们已经做了我们需要做的。所以在任何时候,我们都可以有几个这样的工具在开发中,几个这样的项目同时在开发中。我们也在开发系统和部件,我们正在优化这些部件和系统,不仅针对一辆车,而是针对多辆车。所以有个问题,你如何描述这些飞行器在任何时间点的性能?你会如何衡量它?
所以在这些网关之间,我们有检查站,并进行我们的工程,我们使用称为系统工程的东西。我相信你们很多人都会熟悉系统工程v,我将简要解释一下。你不能完全搞清楚,但我要解释一下。所以在左上方的左上方,您有所谓的业务需求,这就是客户想要的。所以我们可能会说,例如,对于捷豹,我们想要课堂领先的转向。然后我们会做什么,我们会打破那个,我们将创建一些系统要求,因此我们的工程目标如果您愿意。我们将进一步打破它并创建一些子系统目标,组件目标,然后我们实际上会去做一些东西。
所以当我们已经和做一些,我们想知道我们要满足客户的需求,当我们回去的另一边,V,所以我们有测试,测试在每一个层面上,多个测试,我们检查,我们得到了我们想要做什么,我们设计的初衷。
因此,我们测试车辆的所有方面以量化性能,每个测试都有数百个指标,而指标是一个处理后的结果,如果你喜欢,一个标量值,每个属性执行数百个测试。我学过驾驶动力学或车辆动力学,这只是其中一个属性。那么动力系统,电气,热力,噪音,振动,刺耳,耐久性,可靠性呢?捷豹路虎实际上有超过20个主要属性,所以你知道了。它实际上非常复杂,有很多不同的事情,有很多不同的测试需要我们去做。这需要大量的工程师来处理这些复杂的问题。
这是需要判断的。在这些门户审查期间,必须做出判断,进行比较和权衡,我们试图使用相同的组件来平衡所有这些属性,因此很难做出这些决定。还有很多QA循环,他们可能会花上几天或几周的时间来检查我们的工程设计是否正确。
一场接一场的会议,导致了一种疲劳和瘫痪在项目时间上有巨大的成本,因为很难整体理解所有这些,而这就是这些通道所做的。我们正在努力确保,在那个时候,我们已经完成了我们需要做的工程,我们有信心,我们将使汽车走出这个工程过程,将是可销售的,有竞争力的,并将满足客户的需求。
所以让我给你一个这个过程导致的复杂权权的一种例子。如果我们要做一个新的程序,则需要尺寸的电池尺寸?你可能不认为这太复杂了,但如果客观是范围,那么让我们想想那些受到影响的事情,如果你要回答这个问题:充电时间,乘员空间,转向,骑,处理,航空,成本。对于照顾所有的工程师的数量,并将所有这些都是巨大的,传统上,网口审查是什么样的?好吧,我们这样做的每个网关。
我为什么要画这幅画呢?为什么这么难?是复杂性、数据量、截止日期、问题,有时还有房间里那些自大的人。从根本上说,它困难的原因是因为它很复杂,而管理所有这些复杂性是非常困难的。所以这些会议压力很大。
有很多属性被跟踪,传统上,他们必须在这些会议中被平衡,以确保我们最终得到正确的东西。它的高压力。需要做出决定。我们在检查我们是否达到了目标。我之前谈到的那些度量标准,我们正在检查我们是否符合——我们有正确的度量标准。因此,一场接一场的会议,疲劳和来自高级经理的问题,比如,数据在哪里?和上次相比,我们的表现如何?和竞争对手相比呢?
因此,如果你在这些入门会议期间没有拿到数据,那么下周还有另一个会议,然后是这个会议,再下一周也是,因为你没有回答这个问题。就项目时间而言,这是一个巨大的成本。
六年前,我刚开始在捷豹路虎工作的时候,在这些摩擦不断的会议上,我负责捷豹XE项目。我常常坐在这些会议上,问自己一些问题,比如,在我们刚刚进行的冗长讨论中,到底有什么进展?在这一点上实际取得了哪些切实的进展?这次会议有什么进展?重要的是,这次会议将做出哪些决定?我不能总是回答这些问题。那么,我们如何着手改善这种状况呢?现在的门户会议回顾是什么样的呢?
六年过去了,我们和MathWorks一起努力创建了一个应用生态系统。这些应用程序的作用是将人们集中在一起。我们可以在一个空间合作。这对我们来说是一个巨大的生产力驱动力,也是捷豹路虎的竞争优势。我的团队开发了一套工程分析工具,我们使用应用程序商店的机制发布了这些工具,你可以在这里看到,我们把这些应用程序发布给了成百上千的工程师,这个数字还在不断增长。
其中一个应用叫做“客观指标的应用工具箱”,你可以在屏幕上看到。你们现在看到的是,当我之前解释所有的测试时,所有这些指标,你们可以在那个又大又长的列表中看到,那个列表实际上非常非常长。它有几千行。不仅仅是你在这里看到的。
右边是所有的数据,相对于每个指标,我们有每个竞争对手的每个项目的数据,我们可以在任何时候把这些数据拉进来。所以,如果你在会议上被问到一个问题,如果没有更多的数据你就无法回答,那么你可以在会议期间简单地把它拉进来回答这个问题,并在会议期间做出你需要做出的决定。
这个列表过滤目前在一个特定的属性,但是在左边的蓝色面板中,您可以看到一个列表的勾选框,它们允许您以不同的方式来过滤这些指标,所以你可以看看在捷豹路虎的所有其他属性,我们需要查看并确保平衡。在上面有一些标签。这是针对我们做的每一种衍生工具每一种模型,如果你喜欢,在我们做的一个程序中,你也可以看看这些。这个是为F-PACE设计的,有点旧了。我不会给你看任何你看不到的东西。
原子的另一种观点。不仅你有度量,标量度量和数字,但你可以看到图数据,也因此你可以点击任何一个指标和看到这些数据背后的阴谋,所以补充数据,如果你需要深入一点的细节。另外一个观点。
这里所关注的是测试数据本身,不是处理后的数据,而是测试数据本身。时间序列数据,我们把它画在右边的蜘蛛图上,左边是一棵树。你可以将物理测试数据与CA测试数据进行比较。在底部,你有一些行那里有一些颜色,绿色,红色和蓝色。这是与测试相关的元数据,所以您可能需要知道,测试是什么时候完成的?谁做的测试?也不知道那天的天气如何。你手上有数据。
所以我要告诉你,这些天门口会议是如何运行的。是的,很棒的照片。因此,我们现在可以在会议期间使基于数据,数据驱动的数据驱动的决策,与可以在该会议期间拨打电话的高级管理人员讨论。我们可以在一个基调中集中地合作。这推动了效率和质量,它具有提高士气的额外好处,因为我们不再在黑暗中,这反对需要做出的计划延误,计划延误,判断呼叫,并且因为这是,希望,每个人的血压都略微下降。
我也会告诉你们我们是怎么做的。所以我们现在关系很好。要做到这一点并不容易,所以我将告诉你我们是如何组织工具和团队的。首先,我们试图聚集志同道合的人,他们可以把最初的想法变成现实。我们训练他们。我们赋予他们权力,我们训练他们,让他们能够创造出高质量的,优雅的工具来获取他们的专长,我们决定——至关重要的是,我们决定为别人不想做的事情负责。
其次,我们采用了敏捷。我们开始冲刺。我们创建了一个产品backlog,这样我们就知道我们的客户想要什么。我们经常沟通,我们完善我们的流程,我们知道我们昨天做了什么,我们今天在做什么,我们明天在做什么。
敏捷允许你做的是快速地得到一些东西,这很重要。你应该从小处开始,梦想要大,因为随着时间的推移,如果你坚持下去,梦想就会成为现实。在我们的例子中,我们需要两种类型的工程师;我们需要软件工具工程师,我们需要方法,知道工程方法的人,在我的例子中是车辆动力学工程师,因为当你把这两个分开——如果你只有一个或另一个,好的事情并不总是发生。所以如果你把制作软件的方法和我们在程序上需要做的工程知识分开,并不总是有效的,所以我们决定把这些人放在同一个地方,在同一个大楼里。我们把工具开发人员和他们的用户放在一起。
最后在这张幻灯片上,这就是为什么这张图在左边。你不会第一次就做对的。我错了很多很多次。如果你要开发一种对人们有益的工具,而不是强迫他们使用它,那么你可能在第二次或第三次都不会做对。你必须不断循环,从你做错的地方学习,听取反馈,然后将其整合到工具中,最终,你会得到正确的东西。
为什么选择MATLAB呢?好吧,现成的工程库意味着你不必重新发明轮子。我无法告诉你这有多有用。我的工程师可以自己制造工具。他们可以使用MATLAB中的模型拟合、可视化、仿真、工具箱、优化、信号处理函数和单元测试框架,这意味着我们可以发布软件,我们有信心它会工作。这是健壮的。SVN和Git集成在MATLAB的上下文菜单中,也提高了源代码控制方面的效率,当然,MathWorks中有一个世界级的开发团队的支持。万博1manbetx
所以MATLAB所做的就是把权力交给工程师。它节省了编写低级代码的时间,还有一个单元测试套件,这意味着我可以在晚上睡觉,这也更好,还有一个为JLR定制的发布和更新系统,任何人都可以使用它。我们正在编写的是工程代码,所以你可以看到这个工具是如何工作的。它没有编译,所以我们可以看到发生了什么,就像我说的,任何人都可以拿起它。MathWorks也很好用。
我要引用大卫·桑普森的话。他说:“我们拥有的最有价值的东西是我们的测试,MathWorks测试,因为它们描述了我们软件的行为。”捷豹路虎相当于什么?在捷豹路虎,我们用DNA来设计我们的车辆,我们的驾驶DNA,或者我们的骑行DNA。我们正在做的是把它放到MATLAB代码中这是非常强大的。我们知道我们在做什么。下次我们可以做得更好。
那么未来会怎样呢?好吧,当复杂性疯狂地增加时,在会议中实时的数据驱动决策对于保持机器运转至关重要,而与最了解问题的工程师一起构建软件能够实现这一点。在捷豹路虎,我们还没有体验过比上一个更简单的汽车项目,但我们已经为未来产品的复杂性做好了前所未有的准备。s manbetx 845我们现在知道,构建工程工具是管理复杂性的基础。另外,这很有趣,而且你可以对你工作的地方产生很大的影响。
最后我想说:尽你所能承担责任。承担责任是一种真正的力量。如果你选择接受你身边的事情并不是最理想的,你可以和你工作的人和你工作的公司一起做一些事情,那么你就可以让改变发生。把它放在心上,你就能产生巨大的影响。而且,我想说,如果很难,那就很好。
你在这段旅程的哪一部分?我很想知道你们接下来要做什么,我真的很感兴趣,所以请稍后来和我聊天。我今天大部分时间可能都会在这里,所以请一定要来和我聊天,谢谢你们的聆听。
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。