场景:信息系统项目管理
记录:NO.245
最近打算阅读一下《信息系统项目管理师教程》这本书。带着点功利,想考个证;也不带着功利,想充分了解一下这方面基础知识。就业竞争的紧迫感,也推进了这个想法:充实并拓展视野。打工嘛,风险与机会并存。
因此,在还没系统的了解信息系统项目管理这方面知识前,想写一下一次经历。话题就定义为:比较完整的参与了一个项目。
在后续在熟悉系统信息系统项目管理后,再看看会是如何变化,有何感想。有对比,数据会变得更具备说服力。
在项目中,小北角色是后端开发,但不局限于开发。
项目数据流大致这样:现场量测设备A,将量测信息通过有线或者短距离无线方式传输给现场采集设备B;现场采集设备B,将信息以5G网络方式传输给网关服务器C;网关服务器C,将信息转发到后台解析服务器D;解析服务器D,根据厂商对下位机定义的硬件协议,解析后将信息输出给入库服务器E;入库服务器E,将各类信息分门分类的存储到持久化数据库F,其一,提供给前台web服务器G展现,其二,提供给交互服务H,它将数据提供给需求部门;其一,前台web服务G以可视化页面方式,将各个功能展现给用户User,其二,交互服务H以各种接口方式提供给外围数据需求部门服务,展现给用户User。
现场量测设备A和现场采集设备B,一般是多对一方式为主。设备A和设备B一般以短距离无线通信方式传输数据,比如:LoRa无线通信、ZigBee无线通信、Wi-Fi 无线通信技术等。或者有线方式:RS232通信、RS485通信等。因此,现场采集设备B会汇聚多个现场量测设备A的数据信息。即一个现场采集设备B,包括汇聚现场量测设备A1,A2,A3,...,An信息和现场采集设备B自身数据。
现场采集设备B和网关服务器C,一般是多对一方式为主。现场采集设备B和网关服务器C使用5G网络进行通信。在现场采集设备B中安装5G手机卡,将汇聚多个现场量测设备A的数据信息和现场采集设备B自身信息数据传输给网关服务器C。即一个网关服务器C,汇聚现场采集设备B1,B2,B3,...,Bn的信息。
以上,是上行数据流信息,是下位机到上位机(服务器)数据流;一个完整工业系统当然包含下行数据流,即上位机控制命令等数据传输到下位机,达到控制目的。
在新项目开始前,这个系统已经在运,称为设备信息系统5.0;随着设备数量增长,通信技术进步,采集数据量呈现指数暴增,当前系统已经无法支撑现有需求,于是,设备信息系统6.0拉开了序幕。
小北,从项目组召开启动会后,就开始参与进入了。
1.需求调研
系统5.0已经在运5年了,各种需求变更不计其数,功能变化也是迭代不止。系统5.0开发团队并没有提供足够资料.事实上,也提供不出足够落实到文档的资料。系统5.0团队成员本身也是迭代变化的。甲方各个时期新需求,基本上也是口对口传达,或者当时可能形成了简陋文档,但是,已经不复存在。
系统6.0团队调研,邀请系统5.0团队运维人员和业务设计人员,对着系统5.0的Web前台功能介绍,逐个菜单讲解对应流程。系统6.0团队根据已有经验和行业标准设计等文档,梳理出对应功能菜单背后的逻辑流程。再请系统5.0团队相关人员确认。在数据模型层面,根据系统5.0数据模型,层别出各类核心表以及核心字段,再根据系统6.0团队设计思路重新打造数模,在保持已有功能同时结合新技术提炼出新设计思路。最后,输出《系统6.0需求说明书》,再提交甲方确认。
小北参与了数据交互相关部分,即系统6.0与外围系统交互,包括离线数据和实时数据等。在大型系统中,产生数据系统,除了自身用,共享到关联系统使用更能体现数据价值。比如,与系统6.0交互系统共计100个,那么就得和每个系统逐个确认。包括需求数据明细、交互方式、交互频率等等。最后与对方逐个输出《系统6.0和XX外围系统交互需求说明书》。
2.集中开发
系统6.0团队,根据《系统6.0需求说明书》,将系统各个大功能模块拆分为多个微服务。主要原则:一个功能模块,对应一个微服务。这样原有集成系统就拆分为90多个微服务。至此,系统6.0团队开发人员进场,根据业务需求设计人员指导,集中开发。小北参与了数据交互相关部分,包括若干个微服务、数据模型、数据同步任务等开发。经过几个月开发测试。最后,输出《系统6.0完整测试报告》
3.现场最小环境测试
根据甲方要求,在甲方现场部署最小环境测试验证。以验证相对应的核心功能是否满足甲方需求,以及系统6.0相比系统5.0,性能提升体现在哪方面。小北有幸参与了这部分工作,作为最小系统部署验证成员之一。在输出《系统6.0最小系统测试环境部署与验证》之后,验证小分队(3-5人),开始在甲方场地忙碌起来了。最后,输出《系统6.0最小环境测试报告》。
4.现场仿真环境测试
根据甲方要求,在甲方现场部署现场仿真环境测试,系统6.0团队核心人员入场30+人,每个模块功能均有开发人员进场。最后,输出《系统6.0仿真环境测试报告》。
根据甲方要求,甲方邀请用户使用系统6.0。用户都是每天使用系统5.0作为日常工作的人员。在他们体验过程中,提出不足之处以及未考虑周全之处,反馈开发修正。最后,输出《系统6.0仿真环境用户使用报告》。
5.双系统运行上线
根据甲方要求,甲方指定部分区域用户使用系统6.0。即系统6.0正式生产上线,但是,只承担部分用户使用职责,大部分用户还是使用系统5.0。这样形成双系统运行。在生产环境中,指定的用户使用系统6.0处理日常事务。让系统6.0接受实际生产的考验。使用过程中,发现问题能及时改进。最后,输出《系统6.0双系统运行上线报告》。
6.系统6.0上线
根据甲方要求,经过几个月双系统运行上线后,系统6.0得到全面修正,培养了用户对新系统使用习惯,用户使用新系统也满足了甲方正常需求以及达到甲方预期目标。最后,输出《系统6.0上线报告》。
小北有幸参与以上过程,作为开发角色,比较完整的参与了一个项目。