项目流程管理&&架构总结

1 项目背景

所在业务在早期没有营销费用,买家购买商品的折扣优惠是由卖家提供的,所有订单的最终价格是由卖家和业务方确定的,整个购买流程很简单。

现在此业务收受到公司重视,业务团队能申请到营销费用,业务团队能主动补贴折扣优惠。一件东西进行促销时,用户购买此物品后,由业务方出钱补贴折扣的费用,而卖家不需要考虑优惠折扣。实现这种营销需求需要和第三方的团队合作,例如商家营销团队、账务团队。

2 项目管理

团队协作

项目开始的时候,我方向这2个团体介绍业务背景,提产品需求,开头很顺利:业务边界范围的界定、接口交付时间、联调测试时间、系统上线时间。

1周之后获知:账务团队重新安排了开发负责人,然后和这个开发同事沟通之后,才发现之前讨论的需求他完全不了解,然后重新开始讨论产品需求和实现方案,结果之前定的时间点全部废弃。因为负责的同事说实现的方案很复杂,第一次无语了。。。然后我发开始消减产品复杂度。。。重新定时间评审需求、确定每个进度的时间点。

总结:核心业务如果依赖第三方的团队,在项目初期应该尽量他们沟通,确认项目初期是否有已经开展、是否有不清楚的细节,虽然在项目开始的时候重新安排开发负责人的情况很少,但确实存在,而且重新评估复杂度之后,发现对deadline影响很大。

对于这种问题除了项目初期尽量暴露出来之外,发生的时候,要和产品需求方重新确定需求中是否有些模块可以折中成简单的规则,例如:每个商家的每个订单的转账补贴由实时结算的方式改为 每个商家补贴日结+提供日结明细流水的方式,因为这种方法能够继续复用账务系统现有的日结逻辑,不需要汇款系统新开发实时结算模块。

基于这个教训,我们之后和营销系统、账务系统每隔2天都会互相通报进度,分批次提供或者要求提供 API接口,在自己业务系统通过mock方式完成所有的流程后,分批开发、联调接口,这样能够在比统一交互时间点更早的时间进行联调和自测。双方系统API接口能够并行的联调、测试、开发,充分利用时间。

测试环境不稳定:在业务主流程开发联调完成之后,账务系统同事通知说他们的测试环境不稳定,但是我们自以为他们会将这个问题搞定,等了一天之后发现依然不稳定,就顺便问了下他们什么时候能搞定,结果才知道:和国足踢进世界杯一样,希望渺茫,⊙﹏⊙b!!!之前还想再等等,如果再等下去,那就餐具了!我们果断去他们的工位上开始沟通测试方案,用一天的时间现场自测、磨合,之后开始业务测试----在聊天工具上沟通测试中的问题,之后测试很顺利。

需求变更

在项目中,PM是不能接受需求有太大的变化----判断依据是在当前的技术实现的复杂度,而不是依赖于产品功能的描述。所以能被接受的需求变更,一般属于产品功能的简化需求。

在跨团队合作中,一个需求简单的变化,如果没有同步给合作团队,很有可能造成项目的延期。这种变化即使由产品方通知了合作团队,技术团队也要再次沟通确认,合作方的技术团队很有可能因为这个小小的需求变动将技术实现方案大改,而且不会主动通知。PM要时刻关注这种变化,并且保证所有团队时刻了解最新的产品需求。

这次项目中,临时决定有个功能在此活动不会被使用(业务方来不及统计数据),但是随后的活动都会被使用,但是未及时同步到位,结果遭到合作方的吐槽,说是如果这样,此版本就可以不开发这个功能了,延期到下个版本。不过最后所有的功能都按时上线,\(^o^)/~。

这种问题归根结底是一定要把沟通放在第一位。

2 系统设计

模块和耦合

做好业务边界的划分,保证新业务功能模块和当前系统的关联关系最少,易于从逻辑上或者物理结构上进行切分。独立的业务模块只处理一件事件,而且将这个事情处理的很完美。而且易于之后应用于其他业务场景,做功能扩展也不会历史业务包袱。

健壮性

健壮性分为业务实现的健壮性和系统服务的健壮性。

业务实现的健壮性体现在业务的幂等性、事务性、容错性等方面。和REST架构风格中POST/PUT类型接口的实现原则一样,最好每个接口要有幂等性的特征,query类型的接口天然支持幂等性,但是ADD/UPDATE/DELETE类型的接口需要一些特征参数来实现这些原则。一个完成的交易业务由多个子流程A、B、C等子流程组成的。如果C流程失败了,应该如何处理当前交易业务呢?

有2种场景:

1、  如果当前交易是另外一个交易的附属流程,因为前置条件符合业务场景,则次交易流程是不允许失败的,那么事务在这种场景是不合适的,只能通过业务状态来重试,保证最终成功。

2、  第二种方式也很常见:如果C失败,通过事务/分布式事务来将A、B的操作全部回滚,此次业务操作失败。

如果2种方式都是可选的,第1种方式比较合理,因为可重试的实现方式,不会因为某个流程暂时性错误:数据库连接失败、线程池任务添加失败等等,而影响其他业务流程,同时这些接口能暴露到管理界面便于之后的人工干预、系统自动的补偿操作。

通过业务健壮性来保证给提供使用方的服务的最终状态肯定是符合预期结果的。

系统服务的健壮性体现在良好的错误通知和恢复策略。系统中单个节点宕机或者一段时间内服务不可用或者压力过大,不应该导致整个服务集群不可用。所谓的Load Balance、Failover、Failback、Throttle(Sampler) 这些软硬技术策略能够发挥很大作用。

自我监控

监控分为业务监控和系统应用环境的监控。

业务系统监控主要关注业务接口的RT/QPS、成功和失败次数,核心业务的成交量等。在某个时间段内的如果有数据指标波动较大,有可能是某些业务接口出现问题了;或者一些偶发的错误报警也需要关注,这些偶然的也有可能是代码逻辑的bug或者,系统快达到瓶颈导致的。

系统应用环境的监控就很常见了系统的Load、CPU、MEM、磁盘IO、网卡流量、JVM等。

管理入口

业务管理界面:之前一直强调系统的幂等性、容错性,既可以通过系统自动重试来达到最终一致性,也可以便于暴露接口到管理页面,由管理人员人工干预进行补偿操作或者数据订正。本次系统基本上所有的服务接口都暴露到管理上,很容易做数据订正和业务重试。

配置项管理界面:高可配置性是一个系统能够很容易做到服务的高可靠性、易扩展性。通过修改配置能够停用/启用不重要的流程,启用/停用压力过大的服务。。。这次系统上线开始做活动,因为新版功能上线怕账务计算错误,通过配置临时停止划款操作,账务总额确认通过后,才启用这个业务配置。

3 总结

每次的项目都会有不如意的地方,在项目流程上的:沟通不顺畅、人员变动、需求被强制大改;有些是依赖的第三方系统的细节不透明,首次使用之后,经常会在遇到状况才发现某些隐藏规则

项目流程管理&&架构总结

时间: 2024-12-08 23:34:52

项目流程管理&&架构总结的相关文章

文思海辉技术有限公司——流程管理架构平台应用

一.项目简介 1.客户介绍 文思海辉技术有限公司的前身分别是文思信息技术有限公司和海辉软件(国际)集团公司,这两家公司都是软件外包服务提供商.之后宣布合并,合并的公司中文名称为"文思海辉技术有限公司" 文思海辉一直致力于为全球客户提供世界领先的商业/IT咨询.解决方案以及外包服务,在金融服务.高科技.电信.旅游交通.能源.生命科学.制造.零售与分销等领域积累了丰富的行业经验,主要客户涵盖众多财富500强企业及大中型中国企业.凭借专业的交付能力,帮助客户在全球市场中赢得成功.目前公司拥有

项目流程管理&&架构总结

1 项目背景 所在业务在早期没有营销费用,买家购买商品的折扣优惠是由卖家提供的.全部订单的终于价格是由卖家和业务方确定的,整个购买流程非常easy. 如今此业务收受到公司重视,业务团队能申请到营销费用.业务团队能主动补贴折扣优惠.一件东西进行促销时,用户购买此物品后.由业务方出钱补贴折扣的费用.而卖家不须要考虑优惠折扣.实现这样的营销需求须要和第三方的团队合作.比如商家营销团队.账务团队. 2 项目管理 团队协作 项目開始的时候.我方向这2个团体介绍业务背景,提产品需求,开头非常顺利:业务边界范

项目流程管理

目的: 随着时间测试岗位也会深入,有时候还会从测试来约束其公司的工作流程,因为在两家公司从事过这个环节,觉得一定会有其他的小伙伴会遇到同样的问题,这篇文章希望能够给相关人员带来一点灵感,我这块“砖”希望能引来各种不同的“玉” 目标人群: 软件测试人员.测试leader.技术经理 内容: xmind文件下载地址:http://note.youdao.com/noteshare?id=052f5325dc4f76462e76f90fdab7e43e&sub=4646E3BAC4144DD9B9B55

迈瑞综合应用及流程管理平台项目

主题:迈瑞综合应用及流程管理平台项目技术框架交流 嘉宾:迈瑞集团 周舟 有些人一见钟情,有些人日久生情,迈瑞和K2就属于后者. 迈瑞的K2项目始于2010年,一开始和K2的情感磨合并不顺利,像所有父母之命媒妁之言的婚姻一样,一开始相敬如宾,直到一天天相处下来,摸透了彼此的脾气习性,才开始"天雷勾动地火",2012年掌握要领后,迈瑞开始出现爆发式的应用,仅当年就上线153个业务流程. 应用架构总览 技术架构-工作流引擎(WMP-2) 流程平台展示 技术架构-工作流引擎(WMP-1) (本

ssh2+jbpm4.4项目 审批流转:审批流程管理的思路

1.创建一个ProcessDefinitionAction.java package cn.itcast.oa.view.action; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.util.List; import java.util.zip.ZipInputStream; import org.jbpm.api.ProcessDefinition; i

项目整体管理与范 围 管理

第六章项目整体管理 1.项目整体管理的7个过程: 1)      项目启动,制定项目章程. 2)      制定初步的项目范围说明书. 3)      制定项目管理计划. 4)      指导和管理项目的执行. 5)      监督和控制项目. 6)      整体变更控制. 7)      项目收尾. 2.项目章程应当包括11项内容(记忆7条以上) 1)      基于项目干系人的需求和期望提出的要求. 2)      项目必需满足的业务要求或产品需求. 3)      项目的目的或项目立项的

从国内流程管理软件市场份额看中国BPM行业发展

随着互联网+.中国制造2025.工业4.0等国家战略的支持与引导,企业在数字经济时代的信息化表现惊人,越来越多企业认识到,对于企业的发展来说,信息自动化远远还不够,企业的战略.业务和IT之间需保持高度一致,在苦练IT外功的同时,强化管理内功,才能大力提升企业运营效率与质量. 如何帮助企业提高管理质量与效率,被誉为架起了企业业务部门与IT部门之间的沟通桥梁的BPM的人气似乎越来越旺.然而,虽然BPM在世界500强企业中已占据半壁江山,国内BPM的市场份额仍不容乐观. BPM到底是哪路神仙 谈到BP

2016年4月16日作业(项目整体管理、项目范围管理)

http://xuedalong.blog.51cto.com/1030946/1751965 1.请根据授课内容,梳理出今晚讲的重点.2.写出论文架构(不用写全文):论项目的计划与监控说明:对于中项学员只需完成第一题即可. 第6章,项目整体管理 1.项目整体管理的过程包括哪些内容?(记) 答:(1)项目启动 (2)制定初步的项目范围说明书 (3)制定项目管理计划 (4)指导和管理项目的执行 (5)监督和控制项目 (6)整体变更控制 (7)项目收尾 2.项目立项以后,就要正式启动项目.所谓的项目

推荐大家看一下《成功的项目群管理》

推荐大家看一下<成功的项目群管理>这本书,本指南提供了: n 一个适合项目群管理的路线图,汇集关键的原则,治理主题及一套相互关联的促进业务转型的流程 n 对项目群管理原则.主题及流程可以被嵌入.审查和应用的建议,以从商业变革中获得可测量的收益 项目群管理MSP架构是基于三个核心概念: n MSP原则(外环)来自从积极的和消极的结果中学习到的经验教训.他们代表了支撑任何转型变革项目群的成功的共同因素. n MSP治理主题(第二环)一个组织级的方法,应对项目群管理需要的定义.测量以及控制.治理主题