确定多种产品类型的交货日期的制作方法

文档序号:15739845发布日期:2018-10-23 22:06阅读:567来源:国知局
确定多种产品类型的交货日期的制作方法

随着信息的价值和使用不断增加,个人和企业寻求其他方式来处理和存储信息。用户可用的一个选项是信息处理系统。信息处理系统通常为商业、个人处理、编译、存储和/或传送信息或数据或通过这些途径实现的其他目的,从而允许用户利用信息的价值。由于不同用户或应用之间的技术和信息处理需求和要求各不相同,因此信息处理系统也可能因处理什么信息,如何处理信息,处理、存储或传送多少信息,以及如何快速和有效地处理、存储或传送信息而改变。信息处理系统的变化允许信息处理系统是通用的或为特定用户或特定用途配置,例如金融交易处理、航空公司预订、企业数据存储或全局通信。另外,信息处理系统可以包括可以被配置为处理、存储和传送信息的各种硬件和软件组件,并且可以包括一个或多个计算机系统、数据存储系统和网络系统。

向消费者和商业(例如企业)提供用于购置的产品的公司可以提供各种产品,包括按订单生产(BTO)和按库存生产(BTS)的产品。对于BTO产品,客户可以通过指定要使用的硬件和软件组件等来定制产品。BTS产品可以被制造并存储在库存中,例如,在区域仓库或零售商处,并且当客户下订单时,可以提供给客户。由于BTO和BTS产品涉及各种物流,当客户(或销售代表)下订单时,公司可能无法向客户(或销售代表)提供准确的交货日期。



技术实现要素:

本发明内容提供了概念的简化形式,其在下面的具体实施方式中进一步描述。本发明内容不旨在标识关键或必要特征,因此不应用于确定或限制所要求保护的主题的范围。

本发明描述了基本上实时地确定与产品相关的估计发货日期或估计交货日期中的至少一个的系统和技术。承诺代理商可以从计算设备接收与包括按订单生产的产品相关联的数据。承诺引擎可以确定产品是否有资格进行直接货运、国际包裹直接货运或硬合并货运。承诺引擎可以确定产品的运送方法,确定估计的发货日期,估计的交货日期或两者,并且向计算设备发送消息,该信息识别估计的发货日期或估计的交货日期中的至少一个。

附图说明

通过结合附图参考以下详细描述,可以获得对本公开的更完整的理解。在附图中,附图标记的最左边的数字标识首次出现附图标记的图。不同图中的相同附图标记表示相似或相同的项目。

图1示出根据一些示例的用于提供订单履行信息的架构的框图;

图2示出根据一些示例的用于确定区域数据的架构的框图;

图3示出根据一些示例的用于确定估计的交货日期的架构的框图;

图4示出根据一些示例的包括前置期计算器的架构的框图;

图5示出根据一些示例的包括购物车服务的架构的框图;

图6示出根据一些示例的包括穿梭时间的架构的框图;

图7示出根据一些示例的包括确定和提供估计的发货日期(ESD)的过程的流程图;

图8示出根据一些示例的包括确定和提供估计的交货日期(EDD)的过程的流程图;

图9示出根据一些示例的包括确定产品是按订单生产(BTO)还是按运送生产(BTS)的过程的流程图;

图10示出可用于实现本文描述的系统和技术的计算设备的示例配置。

具体实施方式

出于本公开的目的,信息处理系统可以包括可用于估算、计算、确定、分类、处理、发送、接收、检索、发起、切换、存储、显示、传送、列清单、检测、记录、复制、处理或利用任何形式的信息、情报或数据的任何工具或工具集合以用于商业、科学、控制或其他目的。例如,信息处理系统可以是个人计算机(例如,台式或笔记本电脑)、平板电脑、移动设备(例如,个人数字助理(PDA)或智能电话)、服务器(例如,刀片式服务器或机架服务器)、网络存储设备或任何其他合适的设备,并且可以在大小、形状、性能、功能和价格上变化。信息处理系统可以包括随机存取存储器(RAM)、一个或多个处理资源,例如中央处理单元(CPU)或硬件或软件控制逻辑、ROM和/或其他类型的非易失性存储器。信息处理系统的附加组件可以包括一个或多个磁盘驱动器,用于与外部设备通信的一个或多个网络端口以及各种输入和输出(I/O)设备,例如键盘、鼠标、触摸屏和/或视频显示器。信息处理系统还可以包括可操作以在各种硬件组件之间传输通信的一个或多个总线。

本文描述了用于实时监控并提供产品承诺日期的交付承诺引擎的系统和技术。产品承诺日期可包括库存产品(例如BTS)的准确日期和按订单生产(BTO)产品的日期范围。产品承诺日期可以提供给查看库存并在线进行购买的客户以及使用销售工具的销售代表。产品承诺日期可以基于库存数据、制造类型(库存/非库存)、供应链数据、附加服务、假期和客户选择的交付选项来确定。该系统和技术可能能够确定公司(例如)的产品承诺日期,其具有不同类型产品(固定配置(BTS)、按需求生产(BTO),以及由第三方提供)的多个产品线,这些产品由不同的原始设备制造商(OEM)生产并存放在世界各地的多个位置(例如配送中心、仓库、零售商等)。此外,该系统和技术可以考虑由于不断变化的业务需求而发生的变化,例如OEM的变化、产品库存位置的变化等。

单库存池视图

该系统和技术可以提供多种类型产品(例如,BTO、BTS等)的单库存视图,包括每种类型产品的合并视图。例如,可以合并在不同位置的BTS产品的库存以为区域(例如,北美地区、南美地区、欧洲地区、亚洲地区等)提供单库存池。随着产品的销售,该系统和技术可以近似实时地减少库存水平,以提供跨多个销售系统的准确库存视图。当特定产品缺货时,系统可自动切换为提供延长的交货时间。当特定产品被重新存储时,系统可以自动恢复使用标准交货时间(例如,无人工交互),从而向客户提供准确的承诺而不涉及人类监督。

该系统和技术可以自动倒计时延迟。例如,当物品不在库存中时,用户(例如,供需计划员)可以添加额外的时间(例如,额外的天数)以反映物品的制造时间。该系统和技术可以每天自动地减少(例如倒计时)延迟,直到该物品在库存中存储(例如,可用于运送给客户)。相反,在常规系统中,人类可以每天检查入库货物并且每天手动调整延迟。

该系统和技术可以自动调整按需制造的产品(例如,BTO)的前置期。例如,对于按需制造的产品,通常认为可用性是无限制的,直到产品达到寿命终止(EOL)。但是,交付BTO产品的前置期可能会根据供应链(从制造到交付产品时)中的实时事件发生变化。例如,用于构建产品的组件可能会延迟,例如,由于天气、劳动力不稳定等,导致前置期的临时增加。

该系统和技术可以考虑到直接货运到客户或从库存位置(例如,区域仓库)货运。当客户使用在线购物界面配置产品时,系统可以近似实时地(例如,基于客户选择配置产品的组件)自动确定产品是否可用于直接货运给客户或者是否将订单发送到库存位置。例如,库存位置可以添加客户与产品一起购买的定制或附件(例如,更大容量的电池、软件等)。这种实时确定通过确定如何为客户提供最短的可用交付时间和准确的交付期望来为客户提供出色的购买体验。

在确定交付时间时,该系统和技术可以使计划事件和计划外事件被考虑到。计划事件可以包括由于假期(例如,中国的黄金周)、高订单量时间段(例如,美国黑色星期五和圣诞节之间的时间段)以及其他预定或已知事件而导致的停工。计划外事件可能包括劳动力问题(例如,港口或制造工厂的罢工)、组件制造商的自然灾害(例如,飓风或海啸)等。该系统包括特殊的事件管理组件以启用自动调整事件,以便将交货时间提供给正在进行购买的消费者或销售代表。例如,如果亚洲国家的海啸导致特定硬盘驱动器的制造延迟,则可以更新使用该特定硬盘驱动器按需构建的产品,以反映产品发货日期的延长。

规则引擎可以确定各个组件的前置期(例如,在BTO产品中使用)。例如,系统可以确定用于构建产品的各个组件(例如,内存、硬盘驱动器、处理器等)的前置期和可用性。根据前置期和可用性,系统可以计算发货日期和交货日期。如果系统确定组件已经在制造商处延迟,则系统可以自动(例如,没有人工交互)将延迟添加到发货日期和交付日期。系统可以使用机器学习来识别那些典型的(例如,高百分比的时间)导致延迟的组件,了解典型的延迟时间包括什么,并且基于延迟时间自动倒计时。例如,系统可以使用机器学习确定特定硬盘驱动器制造商在某组条件下(例如,特定硬盘驱动器的订单超过阈值量)延迟两天。在该示例中,该系统可以确定何时满足该组条件,自动添加两天延迟,并对延迟进行倒计时以考虑特定硬盘驱动器何时可用。

该系统和技术可以基于目的地进行源(例如,库存位置)的实时选择。例如,在购买过程中,系统可以基于客户的邮政编码(例如,邮政编码)自动选择最接近(例如,就距离而言)的库存位置。如果产品在最近的位置没有库存,则系统可以自动从最近的位置切换到下一个最近的位置以启用销售系统(例如,包括经由互联网、经由呼叫中心接收的订单等)继续接受订单,同时提供准确的发货日期和准确的交货预期。

当产品线停产(例如,寿命结束)时,该系统和技术可以卖掉“安全”库存。安全库存(也称为缓冲库存)是一个术语,用于描述由于供应(例如供应链)和需求(例如,出乎意料的大需求量)的不确定性而维持的库存水平,以降低特定产品库存不足的风险。当产品的寿命终止时(例如,产品被安排中断),系统可以开始倒计时直到最后一个单元被出售,例如包括安全库存。通过已经开始结束寿命的产品的安全库存销售,制造商可以避免在出口商店以低价销售保留在安全库存中的产品,从而增加利润。在传统系统中,当产品停产时保留在安全库存中的产品最终在出口商店以亏本(或非常少的利润)出售。

该系统可以使用机器学习来添加,减去或修改一个或多个加法器。系统可以使授权用户能够添加,减去或修改加法器。加法器指示系统考虑由特定类型的事件引起的延迟。系统的规则引擎使用一种算法,该算法旨在通过使用加法器来考虑供应链需求的变化。例如,加法器允许在发货日期计算和交货日期计算中添加或删除具有前置期的组件。例如,客户可以请求定制特定产品,例如笔记本电脑。作为回应,制造商可能决定在中国生产后在马来西亚定制笔记本电脑。系统可以使用机器学习来确定将笔记本电脑转移到马来西亚需要多长时间以及定制过程需要多长时间。当收到要求定制的订单时,系统可能会确定在中国生产后在马来西亚定制笔记本电脑是执行定制的最有效方法。系统可以自动添加“在马来西亚定制”加法器,以使估计的发货日期和估计的交货日期能够考虑到在马来西亚定制笔记本电脑所造成的延迟。

图1是示出根据一些示例的用于提供订单履行信息的架构100的框图。应当理解,在典型的实施中,这里描述的各种组件可以使用一个(或多个)网络(包括有线和无线网络)彼此通信。

架构100可以包括与全局库存数据库104、产品数据库106和订单管理模块108通信的承诺引擎102。订单管理模块108使得能够接收订单并且能够取消先前接收的订单。买方(例如,消费者、零售商等)可以使用销售渠道110之一(例如,在线销售、离线销售等)来下订单112。订单112可以被发送到订单管理模块108。承诺引擎102可以从订单管理模块108接收订单112,并检查全球库存数据库104以确定产品是否可用于订购。在一些情况下,承诺引擎102可以从产品数据库106检索产品数据112。承诺引擎102可以提供订单数据114,例如估计的发货日期(ESD)、估计的交货日期(EDD)、其他订单相关信息或其任何组合到订单管理模块108。订单管理模块108可以经由销售渠道110之一向买方提供订单数据114。对于订单112中没有库存的按库存生产(BTS)产品以及订单112中按订单生产(BTO)的产品,承诺引擎102可以使用前置期管理器118确定ESD和EDD。前置期管理器118可以使用前置期计算器120来确定产品变得可用或将要构建的前置期。

对于作为BTS的订单110中的产品,承诺引擎102可以使用可用销售(ATS)数据库116来检查可用性。对于订单110中的产品是BTO(或者是BTS但是当前没有库存),承诺引擎102可以使用前置期管理器118和前置期计算器120确定构建产品的前置期。例如,前置期管理器118可以确定与来自产品数据库106的特定产品相关联的产品数据122(例如,包括关于用于构建产品的部件的信息),确定用于构建产品的部件的前置期,并计算(例如,使用交货时间计算器)前置期以构建产品。

在提交订单112之后,买方可以使用销售渠道110中的一个来向订单管理模块108提交与订单112相关联的查询124。例如,查询124可以请求与订单112中包括的一个或多个产品相关联的ESD、EDD或两者。。响应于经由订单管理模块108接收到查询124,承诺引擎102可以使用ATS数据库116确定可用性或使用前置期管理器118确定前置期并提供订单数据114。

销售渠道110可以与支持接口126通信,以通过电子邮件、聊天(例如,诸如即时消息的消息传递)、电话呼叫(例如,到呼叫中心)或其他支持机制来将客户与支持人员通信。支持人员可以使用支持接口126来从全球订单数据库130确定状态信息128。全球订单数据库130可以确定与来自订单履行数据库132的订单(例如,订单112)相关联的状态信息128,该订单履行数据库132跟踪订单的状态,例如,哪些订单已经履行,哪些订单正在履行中等。订单履行数据库132可以向性能分析和报告模块136提供日期134。日期可以包括与订单相关的发货日期、与订单相关的交货日期、当发生例外的日期(例如,业务关闭、没有人可用于签署订单交付、不正确的地址等)以及其他与订单相关的日期。性能分析和报告模块136可以是经由销售渠道110销售产品的企业(例如,公司)的企业商业智能(EBI)的一部分。承诺引擎102可以访问物流数据138。物流数据138可以包括从承运商(例如,等)接收的相对当前(例如,在过去几小时内更新)的物流信息,关于不同位置之间的装运时间,任何主要事件(例如,恶劣天气、运输车辆故障等)是否已经发生导致特定航线的货运延误等。物流数据138可以包括与每个承运商的各种交付模式(例如,当天交付、第二天交付、N天交付、最低成本交付等)相关联的成本。物流数据138可以包括与履行中心相关联的历史物流信息。例如,在一些情况下,第一履行中心可以更靠近(例如,距离)第二履行中心的特定区域。然而,当使用第二履行中心而不是第一履行中心时,历史上可以更快地满足来自特定区域的订单。例如,承运商可以比第一履行中心更容易进入第二履行中心,例如,机场可能更接近第二履行中心、第二履行中心附近的交通可能更少、第二履行中心附近的道路可以允许更快的速度、第二履行中心可以具有更快的装载设备等。因此,物流数据138可以使承诺引擎102能够选择运输商以及以最低成本提供最快交付的交付模式,同时考虑到客户已经请求的交付类型。

在客户通过销售渠道110之一下订单(例如,订单112)之前,承诺引擎102可以基本上实时地提供前置期数据138,以使客户能够确定前置期是否满足客户的需求。例如,客户可以使用在线配置器(例如,销售渠道110之一)来创建BTO产品并确定(例如,使用由承诺引擎102提供的前置期数据138)交付产品的交货时间是一周。客户可以使用在线网站(例如,显示由承诺引擎102提供的前置期数据138)来确定BTS产品有库存并且交付产品的前置期为零。如果客户希望在不到一周的时间内使用该产品,那么客户可以选择订购BTS产品。如果客户能够等待至少一周,则客户可以选择订购BTS产品。作为另一个示例,可以向客户提供两个BTO产品的前置期数据138,例如计算机的两种配置。第一种配置(包括i7处理器)可能有两周的前置期,而采用英特尔i5处理器的第二种配置可能有一周的前置期。基于经由销售渠道110之一(例如,在线、来自销售人员等)提供的前置期数据138,客户可以决定是否获得i5处理器或等待额外一周以获得具有i7处理器的计算机。

销售渠道110可以为特定产品执行可用性检查140,例如可用于承诺(ATP)检查。响应于接收到可用性检查140,承诺引擎102可以确定所请求的交付数量是否可以由所请求的交货日期提供。承诺引擎102可以考虑预交付活动,例如用于拣选的安排(例如,组件或产品)、包装时间以及生产或获得组件或产品所花费的时间。

订单管理模块108(或另一模块)可以发送倒计时消息142,请求承诺引擎102倒计时一个或多个产品的库存。例如,可以在产品停产(例如,启动寿命终止)时发送倒计时消息142。响应于接收倒计时消息142,承诺引擎102可以出售“安全”库存以最大化剩余库存的利润(例如,对于卖方或制造商)。

订单履行数据库132可以周期性地接收(例如,每小时,每天等)或者可以下载订单管理模块108接收的订单112。从订单管理模块108接收或下载的订单112可以用于更新订单履行数据库132使订单得以履行。

当确定前置期(例如,前置期138)时,提交引擎102可以基于由天气数据库144提供的天气数据自动地考虑天气信息。承诺引擎102可以在确定前置期之前从天气数据库144确定特定区域的天气数据。例如,如果要从区域仓库运送BTS产品,则承诺引擎102可在确定前置期时确定区域仓库附近的天气。作为另一示例,如果要将BTO产品从第一国家运送到第二国家,则承诺引擎102可以确定货运将使用的最可能的路线并且在确定前置期时确定沿着可能的路线的天气。如果BTO产品使用在易受季节性恶劣天气影响的区域(例如,暴风雪、季风或大雨等)中制造的组件,则承诺引擎102可在确定前置期时确定该区域的天气预报。承诺引擎102还可以从天气数据库144接收关于天气突变(例如,龙卷风、飓风、热带风暴等)的警报。例如,警报可以识别飓风正朝向特定区域,导致承诺引擎增加从特定区域运输或运输产品(或组件)的前置期。随后的警报可以将飓风降级为热带风暴,使得承诺引擎调整(例如,减少)前置期。

因此,承诺引擎可以实现不同的销售渠道,包括在线购物站点、具有销售人员的呼叫中心、零售店或批发商店的员工、分销商的员工等,以基本上实时查看不同类型产品的前置期。不同类型的产品可能包括存放在区域仓库中的BTS产品和基于用户指定部件构建的BTO产品。承诺引擎可以使客户和销售人员能够通过浏览器并且基本上实时地查看订单的状态(例如,包括BTS和BTO产品)。例如,客户或销售人员可以使用在线目录来选择或配置产品(例如,使用在线浏览器)。当选择BTS产品或配置BTO产品时,在线目录可以向承诺引擎102发送查询以确定与产品相关联的ESD,EDD或两者。承诺引擎102可以确定ESD和/或EDD并且基本上实时地向浏览器发送指示ESD和/或EDD的消息。客户可以比较不同的产品并部分地基于每个产品的ESD和/或EDD来选择产品之一。基本上实时地指示承诺引擎102可以通常在几毫秒内确定ESD和/或EDD,使得显示结束查询的在线目录的浏览器与承诺引擎102之间的时间与从承诺引擎102接收ESD/EDD的浏览器之间的时间小于30秒。

图2是示出根据一些示例的用于确定区域数据的架构200的框图。架构200包括位于区域204(1)中的仓库202(1)。仓库202(1)可以存储一组(例如,一个或多个)BTS产品206(1)。架构200包括位于区域204(M)中的仓库202(M)(其中M>0)并且存储一组BTS产品206(M)。例如,BTS产品206(1)至206(M)可以包括计算机(例如,膝上型计算机、台式机、平板电脑等),计算机配件(例如,监视器、扩充口等)以及其他与技术相关的产品。

架构200可以包括位于区域210(1)中并且存储一组组件212(1)的组件仓库208(1),以及位于区域210(N)中并且存储一组组件212(N)的组件仓库208(N)(其中N>0,N不一定等于M)。例如,组件212可以包括用于组装物品的部件,例如计算机、计算机配件等。为了说明,对于BTO计算机,组件212可以包括磁盘驱动器、处理器、存储器设备、显示屏、光盘驱动器、键盘、壳体等。

区域204、210的各个区域可以跨越两个或更多个国家,例如,北美地区可以包括加拿大、美国和墨西哥。区域204、210的各个区域可以在一个国家内,例如,美国可以包括东海岸地区、西海岸地区、东南地区、西南地区、中西部地区等。区域210中的至少一个可以与区域204中的一个不同,例如,区域204中的至少一些可以与区域210中的一些不同。

承诺引擎102可以周期性地(例如,以预定间隔)分别从区域204和210中的每个仓库202和208接收(或检索)数据。例如,承诺引擎102可以从仓库202(1)接收(或检索)数据214(1)并从仓库202(M)接收(或检索)数据214(M)。承诺引擎102可以从组件仓库208(1)接收(或检索)数据216(1)并从组件仓库208(N)接收(或检索)数据216(N)。数据214可以包括与BTS产品206相关联的更新的(例如,当前的)库存信息。数据216可以包括与组件212相关联的更新的(例如,当前的)库存信息。例如,数据214或216可以指示BTS产品的货运或组件的货运已经被接收或已经被延迟(例如,由于天气、材料短缺等)。

基于数据214,承诺引擎102可以更新与全球库存数据库104中的对应BTS产品相关联的交货时间。基于数据216,承诺引擎102可以更新与全局库存数据库104中的对应BTO产品相关联的前置期。

因此,承诺引擎可以从存储BTS产品的区域仓库以及用于创建BTO产品的库存组件的区域仓库接收(或检索)更新。承诺引擎可以基于更新在全球库存数据库中更新与BTS产品和BTO产品相关联的前置期。响应于承诺引擎接收关于订购商品的查询,承诺引擎可以从区域仓库检索信息。

图3是示出根据一些示例的用于确定估计的交货日期的架构300的框图。销售渠道110和订单管理模块108可以使用诸如代表性状态转移(REST)应用程序编程接口(API)302的接口与承诺引擎102交互。例如,销售渠道110和订单管理模块108可以使用RESTAPI 302来确定与订单相关联的信息,例如来自承诺引擎102的订单的估计发货日期(ESD)304、订单的估计交货日期(EDD)或两者。承诺引擎102可以包括多个加法器,例如加法器308(1)至加法器308(S)(其中S>0)。可以将零个或多个加法器308添加到每个订单以修改与订单相关联的前置期或者修改订单中的产品。例如,加法器308可以包括与BTO产品一起使用的定制履行服务(CFS)加法器,以基于客户请求定制产品。CFS加法器可用于根据客户提供的规范调整(例如,添加)与定制BTO产品相关联的交货时间。加法器308可以包括计划事件加法器,其考虑计划事件,例如政府假日,用于计划修理或升级的工厂停工,以及预先已知的其他类型的事件。加法器308可以包括计划外事件加法器,其考虑计划外事件,例如由天气(例如,飓风、龙卷风、海啸等)引起的延迟,由劳动争议引起的延迟(例如,工人罢工),以及其他计划外事件的类型。加法器308可以包括大物品加法器,其考虑与大型物品、易碎物品和其他类型的物品(例如,尺寸为42英寸或更大的电视机)相关联的特殊处理,其在运输、交付或两者期间需要特殊处理。加法器308可以包括订单大小加法器,其可以用于考虑与大订单相关联的特殊处理(例如,大调色板等)。除了提供的示例之外,这里描述的系统和技术可以创建许多不同类型的加法器。承诺引擎102可以使用机器学习来基于订单的类型(例如,BTS产品或BTO产品)确定用于每种类型的加法器的前置期的量,与订单相关联的区域(例如,与订单中的每个产品相关联的运输路线中的区域)。例如,承诺引擎102可以使用机器学习来确定即使在美国的感恩节假期是一日,公司(包括运输公司)在周四和周五(例如,感恩节后立即的星期五)关闭导致感恩节至少增加两天的前置期。

承诺引擎102可以使用诸如REST API 308之类的接口与前置期管理器118交互。例如,承诺引擎102可以使用REST API 308来确定或更新存储在前置期数据库312中的订单信息,例如,与订单314(1)至314(T)(T>0)相关的信息。为了说明,承诺引擎102可以使用REST API 308来确定或更新(i)订单314(1)中的BTS产品(或与产品相关联的BTO组件)的库存状态316,(ii)订单314(1)中的一个或多个BTS产品(或与产品相关联的BTO组件)的一个或多个前置期318,(iii)包括在订单314(1)中的计划停产的BTS产品的库存倒计时320,与订单314(1)相关联的其他订单相关信息,或其任何组合。

前置期管理器118可以向控制面板322提供与订单314相关联的信息,例如每个订单(或订单中的每个产品)的最新ESD和EDD等。

为了确定BTO订单的ESD 304,承诺引擎102可以确定(i)与订单中的产品相关的产品详细信息,(ii)与产品相关的制造前置期,(iii)支付前置期(例如,提供商付款与提供产品或组件之间的时间),(iv)加法器,包括计划事件加法器(例如假期等)、CFS加法器、影响发货日期的其他因素,或其任何组合。为了确定用于BTS订单的EDD 306,承诺引擎102可以确定(i)与BTS产品相关联的履行位置,(ii)基于履行位置的邮政编码的到目的地位置的邮政编码的物流前置期,(iv)加法器,包括计划事件加法器(例如,用于假期等)、大/大型物品加法器、影响发货日期的其他因素,或其任何组合。

图4是示出根据一些示例的包括前置期计算器的架构400的框图。前置期计算器120可以基于支付前置期402、制造前置期404、计划事件406、与发货日期相关的另一因素或其任何组合来确定ESD 304。支付前置期402可以指定何时向制造商付款以及何时准备运送产品之间的时间段。制造前置期404可以指定下订单和完成的订单的货运之间的时间段。计划事件406可以包括预先已知的事件,诸如假期、用于预定维护的工厂停工、以及已经安排并且可能影响ESD 304的其他事件。

交货前置期120可以基于ESD 304、物流前置期(LLT)408、穿梭时间(例如,穿梭交货时间)409和规则引擎410来确定EDD 306。LLT 408识别在下订单和完成订单之间的时间段(例如,通常在订单交付时)。LLT 408可以包括采购(例如,在开始生产之前获得产品中使用的部件的库存)、生产(例如,制造、组装、质量控制、例如测试等)和分配(例如,安置,分配和跟踪货运和交付资源等)。穿梭409的时间可以指示穿梭前置期,例如,将制造产品从制造工厂到履行中心(例如,图2的仓库202或208中的一个)的穿梭(例如,运输)时间。规则引擎410可以包括用于确定EDD 306的各种规则。例如,规则引擎410可以确定产品是BTS产品还是BTO产品。对于BTS产品,规则引擎410可以确定将BTS产品从履行中心运送到客户位置(例如,到客户的邮政编码所在地)的时间。

对于BTO产品,规则引擎410可以确定BTO产品是否直接符合运送资格,例如,从原始设计制造商(ODM)运送到承运商中心然后运送到交货位置(例如,邮政编码)。承运商可以包括邮政服务(例如,美国邮政服务)、联邦快递、联合包裹服务(UPS)、另一承运商或其任何组合。对于BTO产品,规则引擎410可以确定BTO产品是否有资格直接用于国际包裹直接货运,例如,从ODM直接运送到客户的邮政编码(例如,USPS邮政编码)。对于BTO产品,规则引擎410可以确定BTO产品是否有资格进行“硬合并”,其中BTO产品从ODM运送到履行中心(例如,区域库存仓库),然后从履行中心运送到交货位置(例如,客户的邮政编码,例如USPS邮政编码)。

对于BTS和BTO产品,规则引擎410可以在确定ESD 304和EDD 306时确定运输选项,例如地面、空气、次日等。为每个订单(或每个产品)选择的运输选项可包括(i)下订单时选择(和支付)的运输选项,(ii)在下订单之后但在订单运输之前选择(和支付)的升级运输选项,(iii)组装的产品将被运送到一个位置,(iv)客户指定订单交付地点的位置,(v)当订单中的每个产品准备发货时(例如,产品应准备好在承运商的预定到货时间之前发货-例如,如果承运商在下午4:00取货且产品在某一天没有准备好,则承运商可以在第二天取货),(vi)运输选项从取货到交货需要多长时间(例如,多少天),(vii)其他与运输相关的因素,或者其任何组合。

对于BTS和BTO产品,当确定ESD 304或EDD 306时,规则引擎410可以确定订单是否由于订单中的多个物品或者订单是否包括大型产品而经历特殊处理。例如,具有超过X个物品(X>0)的订单(例如具有25个或更多产品的订单)或包括被认为是大型物品订单的订单可能经历特殊处理,例如,订单可以使用能够处理订单中产品的数量、尺寸或重量的承运商(例如,货运承运商)运输。为了说明,具有25个或更多产品或包括大型产品的订单可以在托盘上运输(例如,以使订单能够使用叉车移动)并且可以使用货运公司运输。大型产品可以是具有大于预定阈值的包装重量的产品,至少一个尺寸(例如,高度、宽度或深度)大于预定阈值、总尺寸(例如,高度+宽度+深度)大于预定阈值,另一特殊处理特性或其任何组合。

前置期计算器120可以通过使用日历管理模块412管理(并考虑)各种日历来确定前置期。例如,日历管理模块412可以管理多个日历,包括工厂日历414(例如,考虑工厂假期、计划停机维护等),公司日历416(例如,与销售BTO和BTS产品的公司相关联的日历,例如),支付日历418(例如,识别何时支付BTO和BTS产品的各种提供商,包括OEM和ODM提供商)和物流日历420(例如,识别每个承运商何时在每个区域仓库执行提货,每个承运商遵守哪些假期等)。

前置期计算器120可以包括加法器管理模块422。加法器管理模块422可以使用户能够将一个或多个加法器添加到订单中以用于计划和计划外事件(例如,工人罢工或减速、天气状况,例如暴风雪、海啸等)。加法器管理模块422可以使用机器学习来确定何时自动将一个或多个加法器424添加到订单。例如,加法器可以包括定制加法器424(1)、大型物品加法器424(2)、事件(例如,计划和未计划事件)加法器424(3)、以及订单数量加法器424(4)。当订单包括定制时,例如,BTO或BTS产品可以在被运送到客户以进行交付之前被运送到中间位置以进行定制,可以添加定制加法器424(1)以增加前置期。事件加法器424(3)可用于考虑计划外事件(例如,飓风、海啸、码头工人罢工等)和计划事件,例如假期、维护停工等。大型物品加法器424(2)可以用于考虑对大型物品的处理,例如,包装重量大于预定阈值的物品,当包装时至少一个尺寸(例如,高度、宽度或深度)大于预定阈值,打包时的总尺寸(例如,高度+宽度+深度)大于预定阈值,另一特殊处理特性,或其任何组合。订单数量加法器424(4)可用于考虑具有多于X个物品(X>0)的订单,例如具有25个或更多产品的订单,其订单只有一些运营商能够运输。当然,除了图4中所示的那些之外,还可以定义其他加法器。

前置期管理器118可以基于库存状态426(例如,BTS物品是否有库存)、产品数据库106、前置期318(例如,包括标准前置期318(1)以及延长前置期318(2),以及前置期数据库312来确定订单(或订单中的产品)的前置期。前置期管理器118可以提供控制面板322(例如,以GUI的形式)以使客户能够查看与用于创建BTS产品的部件相关联的各种前置期、与BTS产品相关联的前置期等。前置期管理器118可以自动执行各种前置期的倒计时142,以基本上实时地显示控制面板322中的数据。例如,计划事件(例如中国的新年庆祝活动)可以是固定的天数。当显示在中国组装的BTO产品的前置期时,前置期管理器118可以自动执行计划事件的倒计时142。

因此,当客户或销售人员在在线目录中查看BTS或BTO产品时,前置期计算器120可以基本上实时地提供ESD 304、EDD 306或两者。通过基本上实时地显示ESD 304和/或EDD 306,客户或销售人员可以使用与每种产品相关联的ESD 304和/或EDD 306来确定要购买哪种产品。例如,客户可能希望购买具有至少特定产品规格的产品。客户或销售人员可以确定BTO产品是否满足特定产品规格但是需要Y天交货并且成本为Z。在该示例中,第一BTS产品可能比BTO产品便宜但可能不满足所有特定产品规格,而第二BTO产品可能比BTO产品更昂贵但可能超过它们中的至少一些特定产品规格。第一和第二BTS产品都可以比BTO产品更快地交付。由前置期计算器120近实时显示的前置期可以使客户或销售人员能够确定订购哪个产品(例如,来自BTO产品或第一和第二BTS产品)。

图5是示出根据一些示例的包括购物车服务的架构500的框图。架构500包括客户设备502、承诺引擎102(图1-3)的前端504和承诺引擎102的后端。

客户设备502可以是计算设备,诸如掌上计算机、台式计算机或平板计算机。客户(或销售人员)可以使用互联网浏览器508导航到在线配置器510以配置一个或多个BTO产品。配置器510可以与前端504的REST API 310交互以向客户(或销售人员)提供ESD 304。客户(或销售人员)可以将一个或多个BTO产品(例如,使用配置器510配置)添加到在线购物车服务512并使用验证和提交屏幕514来验证订单是正确的并且提交用于订单的在线购物车的内容。验证和提交屏幕514可以与前端504的REST API交互,以确定和显示与订单中的每个产品相关联的ESD 304和EDD 306。在客户(或销售人员)已经提交订单之后,客户设备502可以显示订单完成消息516。

后端506可以从客户设备502接收订单数据518。订单数据518作为输入提供给全局商务管理模块522。在一些情况下,全局商务管理模块522可以从REST API 310获得附加订单数据526(例如,当在验证和提交514期间提交订单时由客户设备502提供的附加数据)。全局商务管理模块522可以处理订单数据518并将转换后的订单数据518的至少一部分发送到一个或多个区域订单管理服务524。全球商务管理模块522可以将订单数据518(例如ESD 304和/或EDD 306)添加到模式以提供下游订单处理组件提供给客户的交货时间信息(例如,ESD 304和EDD 306)。因此,前置期提供给客户并向下游发送到区域订单管理524和履行中心(图1的仓库202和208中的一个或多个)。例如,全球商务管理模块522可以确定区域订单管理服务524中最接近订单数据518或附加订单数据526中指定的交货位置,并将订单数据518发送到最近的区域订单管理服务524以便履行。

因此,客户或销售人员可以使用浏览器来启动配置器以配置BTO产品。在配置BTO产品之后,客户或销售人员可以提交包括订单信息的订单,例如配置细节、EDD、ESD、交货位置等。当客户使用配置器配置产品时,前置期数据库可以为客户选择的特定组件提供接近实时的前置期更新。前置期更新可能会导致ESD、EDD或两者发生变化。例如,如果客户选择特殊类型的硬盘驱动器(例如,固态驱动器(SSD)而不是机械磁盘驱动器),则前置期数据库可以确定特殊类型的硬盘驱动器的前置期,从而导致ESD和/或EDD将根据前置期进行更新。客户设备可以与承诺引擎的前端和后端交互。承诺引擎可以接收订单数据,解析订单数据,并将订单的一个或多个部分发送到区域建造公司,以配置、构建BOB产品并将其运送到订单中指定的交货位置。

图6示出根据一些示例的包括穿梭时间的架构600的框图。制造前置期404可以包括在制造工厂处制造(BTS或BTO产品)602的时间以及将制造的产品从制造工厂到履行中心(例如,图2中的仓库202或208中的一个)的穿梭时间409。当确定ESD 304时,可以包括制造602的时间。在确定EDD 306时,可以包括将制造的产品从制造工厂到履行中心的穿梭时间409。

在图7、8和9的流程图中,每个框表示可以用硬件,软件或其组合实现的一个或多个操作。在软件的上下文中,框表示计算机可执行指令,当由一个或多个处理器执行时,使得处理器执行所述操作。通常,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等。描述的顺序不旨在被解释为限制,并且可以任何顺序和/或并行地组合任何数量的所描述的操作以实现这些过程。出于讨论的目的,如上所述参考图1、2、3、4、5和6描述过程700、800和900,但是其他模型、框架、系统和环境可以实现这些过程。

图7是根据一些示例的包括确定和提供估计发货日期(ESD)的过程700的流程图。例如,过程700可以由图1-6的承诺引擎102的一个或多个组件执行。

在702处,可以接收与产品(或订单)相关联的细节。在704处,可以确定与产品(或订单中的每个产品)相关联的产品类型(例如,基于产品细节)。当客户或销售人员在下订单之前在线查看产品时,可以接收详细信息。例如,在图1中,承诺引擎102可以通过销售渠道110之一从客户设备接收产品细节,包括客户希望获得的产品类型。可以在客户或销售人员下订单之后接收细节,例如,当客户或销售人员请求关于ESD、EDD或两者的更新时。当发生计划外事件并且承诺引擎自动更新ESD、EDD或两者时,可以接收详细信息。

在706处,可以确定制造前置期。在708处,可以确定支付前置期。例如,在图4中,承诺引擎102可以使用前置期管理器118来确定各种前置期,包括制造前置期404和支付前置期402。确定制造前置期404可以包括确定制造602的时间和穿梭时间604。穿梭时间604可用于确定EDD 306。

在710处,可以确定并考虑区域假日(例如,以确定ESD)。例如,在图4中,日历管理412可以确定BTS履行中心(例如,区域仓库)所在的区域或BTO制造工厂所在区域的区域假日。

在712处,可以确定是否添加定制加法器(例如,定制工厂集成(CFI)或定制工厂服务(CFS))。例如,如果订单数据包括定制请求,则可以将图4的定制加法器424(1)添加到产品的前置期确定和ESD。

在714处,可以确定是否添加计划事件加法器。例如,如果日历管理412识别一个或多个计划事件,则可以将图4的事件加法器424(3)中的一个或多个添加到产品的交货时间确定和ESD。

在716处,可以确定并提供与产品相关联的估计发货日期(ESD)(例如,近似实时地)。例如,当承诺引擎102从销售渠道110之一接收到指示产品的潜在订单的消息时,承诺引擎102可以执行702,704,706,708,710,712或714中的一个或多个,以大致实时确定产品的ESD。承诺引擎102可以将ESD提供给相应的销售渠道110,以使客户或销售人员能够在下订单之前选择具有满足客户需求的ESD的产品。在下订单之后,可以响应于客户查询来确定并提供ESD。在下订单之后,承诺引擎可以自动更新ESD(例如,由于计划外事件)并且通知客户更新的ESD。

图8是根据一些示例的包括确定和提供估计交货日期(EDD)的过程800的流程图。例如,过程800可以由图1-6的承诺引擎102的一个或多个组件执行。

在802处,可以接收与产品(或订单)相关联的细节。当客户或销售人员在下订单之前在线查看产品时,可以接收详细信息。例如,在图1中,承诺引擎102可以通过销售渠道110之一从客户设备接收产品细节,包括客户希望获得的产品类型。可以在客户或销售人员下订单之后接收细节,例如,当客户或销售人员请求关于ESD、EDD或两者的更新时。当发生计划外事件并且承诺引擎自动更新ESD、EDD或两者时,可以接收详细信息。

在804处,可以使用规则引擎来确定履行位置。例如,在图4中,规则引擎410可以识别最接近交货位置的履行位置(例如,到BTO制造商的BTS仓库)或具有考虑到交货位置的各种因素的最快履行。例如,第一位置可以比第二位置更靠近交付位置,但是第二位置可以由快递员访问,而不是可以提供到交货位置的隔夜服务,而没有一个快递员可以从第一位置提供隔夜服务。

在806处,可以确定至少一个物流前置期。例如,在图4中,LLT 408可以确定订单下达和订单履行之间的时间段(例如,通常在订单交付时)。LLT 408可以包括采购(例如,在开始生产之前获得产品中使用的部件的库存)、生产(例如,制造、组装、质量控制,例如测试等)和分配(例如,安置,分配和跟踪货运和交付资源等)。可以基于物流数据138以及由天气数据库144提供的当前和预测的天气信息来确定LLT 408。

在808处,可以确定是否添加大型产品加法器或数量加法器。例如,在图4中,如果订单中的项目数量(或待处理且尚未下单的潜在订单)超过预定阈值(例如,25个物品),则订单数量加法器424(4)可以在确定EDD时被包括在内。如果订单(或潜在订单)包括大型物品(例如,所有三个维度的权重、一个维度或总数超过预定阈值),则在确定EDD时可以包括大型物品加法器424(2)。

在810处,可以确定零个或多个区域假日并将其考虑在内(例如,在确定EDD时)。例如,在图4中,日历管理412可以包括区域假日,包括工厂日历414中的工厂假日、公司日历416中的公司假期等。

在812处,可以例如基本上实时地确定和提供与产品相关联的估计交货日期(EDD)。例如,当承诺引擎102从销售渠道110之一接收到指示产品的潜在订单的消息时,承诺引擎102可以执行802,804,806,808或810中的一个或多个,以大致实时确定产品的EDD。承诺引擎102可以将EDD提供给相应的销售渠道110,以使客户或销售人员能够在下订单之前选择具有满足顾客需求的EDD的产品。在下订单之后,可以响应于客户查询确定并提供EDD。在下订单之后,承诺引擎可以自动更新EDD(例如,由于计划外事件)并且通知客户更新的EDD。

图9是根据一些示例的过程900的流程图,该过程900包括确定产品是按订单生产(BTO)还是按运送生产(BTS)。例如,过程900可以由图1-6的承诺引擎102的一个或多个组件(例如,规则引擎410)执行。

在902处,可以接收与产品(或订单)相关联的细节。当客户或销售人员在下订单之前在线查看产品时,可以接收详细信息。例如,在图1中,承诺引擎102可以通过销售渠道110之一从客户设备接收产品细节,包括客户希望获得的产品类型。可以在客户或销售人员下订单之后接收细节,例如,当客户或销售人员请求关于ESD、EDD或两者的更新时。当发生计划外事件并且承诺引擎自动更新ESD、EDD或两者时,可以接收详细信息。

在904处,可以(例如,基于细节)确定产品是BTO产品还是BTS产品。响应于在904处确定产品是BTS产品,在906处确定距离与产品相关联的交货位置最近的履行中心(例如,图2的仓库202(1)至202(M)的最近仓库),并且过程转到914。响应于在904处确定产品是BTO产品,可以在908处确定产品是否符合直接运送资格,可以在910处确定该产品是否符合国际包裹直接货运资格,并且可以在912处确定该产品是否有资格进行硬合并。对于BTO产品,图4的规则引擎410可以确定BTO产品是否直接符合运送资格,例如,从ODM运送到承运商中心然后运送到交货位置(例如,客户的邮政编码)。对于BTO产品,规则引擎410可以确定BTO产品是否符合国际包裹直接货运的资格,例如,从ODM直接运送到交货位置(例如,客户的邮政编码,例如USPS邮政编码)。对于BTO产品,规则引擎410可以确定BTO产品是否符合进行“硬合并”的资格,其中BTO产品从ODM运送到履行中心(例如,区域库存仓库),然后从履行中心运送到交货地点(例如,客户的邮政编码,例如USPS邮政编码)。

在914处,可以确定特殊处理是否将与产品一起使用。例如,包括大型物品的订单,或者产品数量超过阈值的订单可能需要特殊处理,因为只有货运公司才能够处理订单。

在916处,可以至少部分地基于货运位置、交货位置、所选择的交付(例如,订单中指定的交付类型,例如隔夜交付)、特殊处理、交货时间以及此处讨论的其他因素来选择运送方法。例如,如果客户已选择并支付隔夜交付,则可以选择隔夜交付。

在918处,可以提供ESD、EDD或两者。在选择运送方法之后,承诺引擎可以向客户或销售人员提供ESD、EDD或两者。

因此,规则引擎可以包括多个规则以基于产品(或订单)细节确定运送方法。

图10示出了可用于实现本文描述的系统和技术的计算设备1000的示例配置,诸如图1的承诺引擎102。计算设备1000可以包括一个或多个处理器1002、存储器1004、通信接口1006、显示设备1008、其他输入/输出(I/O)设备1010,以及一个或多个大容量存储设备1012,其被配置为彼此通信,例如经由系统总线1014或其他合适的连接。

处理器1002是可以包括一个或多个处理单元的硬件设备(例如,集成电路),其中至少一些处理单元可以包括单个或多个计算单元或多个核。处理器1002可以实现为一个或多个硬件设备,诸如微处理器、微计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于执行操作指令来操纵信号的任何设备。在其他性能中,处理器1002可以被配置为获取并执行存储在存储器1004、大容量存储设备1012或其他计算机可读介质中的计算机可读指令。

存储器1004和大容量存储设备1012是用于存储由处理器1002执行以运行上述各种功能的指令的计算机存储介质(例如,存储器存储设备)的示例。例如,存储器1004通常可以包括易失性存储器和非易失性存储器(例如,RAM、ROM等)设备。此外,大容量存储设备1012可以包括硬盘驱动器、固态驱动器、可移动介质,其包括外部和可移动驱动器、存储卡、闪存、软盘、光盘(例如,CD、DVD)、存储阵列、网络附加存储器、存储区域网络等。存储器1004和大容量存储设备1012在此可以统称为存储器或计算机存储介质,并且可以是能够将计算机可读的处理器可执行程序指令存储为计算机程序代码的介质,该计算机程序代码可以由处理器1002执行,作为被配置用于执行本文的实现中描述的操作和功能的特定机器。

计算设备1000还可以包括用于交换数据的一个或多个通信接口1006(例如,经由网络)。通信接口1006可以促进各种网络和协议类型内的通信,包括有线网络(例如,以太网、DOCSIS、DSL、光纤、USB等)和无线网络(例如,WLAN、GSM、CDMA、802.11、蓝牙、无线USB、蜂窝、卫星等),互联网等。通信接口1006还可以提供与外部存储器(未示出)的通信,例如存储阵列、网络附加存储器、存储区域网络等。

在一些实现中可以包括显示设备1008,例如监视器,用于向用户显示信息和图像。其他I/O设备1010可以是从用户接收各种输入并向用户提供各种输出的设备,并且可以包括键盘、遥控器、鼠标、打印机、音频输入/输出设备等。

诸如存储器1004和大容量存储设备1012的计算机存储介质可用于存储软件和数据。例如,计算机存储介质可用于存储承诺引擎102、前置期管理器118、前置期计算器120、全球库存数据库104、产品数据库106、订单数据518、一个或多个预定阈值1016、其他应用1018和其他数据1020。预定阈值1016可以包括阈值以确定产品是否要经历特殊处理。例如,可以基于确定第一产品的高度、宽度和深度的总和满足预定的总尺寸阈值来确定产品经历特殊处理(例如,通过货运运输),确定第一产品的高度、宽度或深度中的至少一个满足预定的一维阈值,确定第一产品的重量满足预定的重量阈值,或确定订单中的产品数量满足数量阈值。

这里描述的示例系统和计算设备仅仅是适合于一些实现的示例,并且不旨在对可以实现本文描述的过程,组件和特征的环境,架构和框架的使用范围或功能提出任何限制。因此,这里的实现可以与许多环境或体系结构一起操作,并且可以在通用和专用计算系统或具有处理能力的其他设备中实现。通常,参考附图描述的任何功能可以使用软件、硬件(例如,固定逻辑电路)或这些实现的组合来实现。这里使用的术语“模块”、“机制”或“组件”通常表示可以被配置为实现规定功能的软件、硬件或软件和硬件的组合。例如,在软件实现的情况下,术语“模块”、“机制”或“组件”可以表示在处理设备(例如,CPU或处理器)上执行时执行指定的任务或操作的程序代码(和/或声明型指令)。程序代码可以存储在一个或多个计算机可读存储器设备或其他计算机存储设备中。因此,这里描述的过程,组件和模块可以由计算机程序产品实现。

此外,本公开提供了各种示例实施,如所描述的并且如附图中所示。然而,本公开不限于本文描述和示出的实施方式,并且可以扩展到其他实施方式,如本领域技术人员已知的或本领域技术人员将知的。在说明书中引用“一个实施”,“该实施”,“这些实施”或“一些实施”意味着所描述的特定特征,结构或特性包括在至少一个实施中,并且这些短语的出现在说明书中的各个地方不一定都指的是相同的实现。

软件模块包括应用程序、字节码、计算机程序、可执行文件、计算机可执行指令、程序模块、以高级编程语言(如C,C++,C#,Perl或其他)表示为源代码的代码中的一个或多个或低级编程代码,例如机器代码等。示例软件模块是基本输入/输出系统(BIOS)文件。软件模块可以包括应用程序编程接口(API)、动态链接库(DLL)文件、可执行(例如,.exe)文件、固件等。

这里描述的过程可以被示为逻辑流程图中的框的集合,其表示可以硬件、软件或其组合实现的操作序列。在软件的上下文中,框表示可由一个或多个处理器执行以运行所述操作的计算机可执行指令。在流程图中描述或描绘操作的顺序不旨在被解释为限制。而且,在不脱离本公开的范围的情况下,可以省略所描述的框中的一个或多个。

尽管本文在附图中示出并且在具体实施方式中描述了本公开的方法和装置的各种示例,但是应当理解,本公开不限于所公开的示例,并且能够进行多次重新布置、修改和在不脱离本公开的范围的情况下进行替换。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1