食品溯源系统是一种利用信息技术,特别是区块链技术,来追踪和记录食品从生产到消费全过程的系统.
(一).Y模式分析
1. 理解区块链技术:
区块链是去中心化,不可篡改,透明性,智能合约来实现智能。
2. 分析业务需求:
利用区块链透明性能追踪生产商到运输商再到消费商的全流程,确保消费者了解食品来源。
并且区块链不可篡改性能保证食品如果有问题,要查的数据绝对正确。
因为这一全流程,如果要用人去查询,去做,非常麻烦,所以利用智能合约来让其自动执行,能更轻松,更能减少了中间商赚差价。
区块链的去中心化能让其不依赖中央服务器,而是通过网络中的多个节点共同维护和更新数据。毕竟这是一个庞大的工程,如果出故障,那肯定又耗钱又耗时,这种结构防止出现故障从而全部瘫痪,多个节点维护,哪个节点故障维护哪个就行,不会影响其他正常使用。
3. 确定应用场景:
这一技术应用在供应链管理,因为他要追综生产商到运输商,再到消费商的全流程,具有透明性。
4. 设计系统架构:
业务平台:
(1)因为是食品溯源系统,所以要得生产商,分销商(把食品从生产商交给零售商的中介),零售商,用户,所以要有角色管理。
(2)然后给了东西之后,哪个给哪个,要有数据,所以就要有溯源管理,以便于追踪。
(3)因为不同角色的职能不同,对应角色只能做对应角色的职能,所以要设置权限管理,a只能做a的事。
(4)因为食品溯源系统,所以得有食品管理。
(5)因为要对系统,应用程序,设备进行数据收集,存储,以此来监控系统是否出现问题所以要有日志管理。(检查系统是否出故障)
(6)因为区块链是分布式账本,去中心化的,所以它有很多节点,虽然这样能哪个节点故障维护哪个就行,不会影响其他正常使用。但是不同节点的数据状态肯定是不同的,所以就要有共识管理,来让每个节点达成相同共识,以此来解决多个节点之间达成一致意见的问题。
(7)因为有效的系统参数管理可以帮助组织优化系统运行、提高效率和确保安全,所以要有系统参数管理来对系统中各种参数的配置、监控和调整。(系统配置优化让其更快)
支撑平台:
(1)数据要有存储的地方,一般都用Mysql存。
(2)因为用户要用系统程序,肯定是在自己电脑上用,所以要有本地服务器支撑。
(3)现在网上的资源共享,一般由云服务提供商在其数据中心中提供的虚拟服务器,用户可以通过互联网按需访问和使用这些资源,所以要有公有云主机来让用户使用。
(4)因为除了用户之外,还有一些企业或组织要使用,所以要专门为单个组织或企业提供的云计算资源和服务,通常在该组织的内部数据中心或由第三方服务提供商托管的环境中运行,要有私有云主机专门提供给组织或企业。
(5)如果要用于处理大规模数据存储和高吞吐量的应用场景,就用Rocksdb存取数据库。
(6)分布式存储是一种数据存储架构,它将数据分散存储在多个物理位置或节点上,而不是集中在单一的存储设备或服务器中,这样能提高数据的可用性、可靠性和扩展性。
(7)因为是一个系统,就要用SDK软件开发工具包开发软件应用程序。
(二)系统角色及功能分析
系统角色:
生产商:生产食品,保证其质量。
分销商:运输食品,把食品从生产商交给零售商的中介。
零售商:把食品卖给用户。
用户:买食品的群众。
溯源平台功能分析:
- 交易功能:实现资金的交易。
- 查询功能:查询交易的资金,交易时间,交易区块,查询对应角色的信息数据等。
- 自动化:利用智能合约编写代码,以此来实现自动化。
- 监管功能:支持监管机构对区块链系统进行监控和管理。
(三)系统功能结构图(选基本图形或流程图)
两层结构图:最简单的层级,仅分为“系统”层和“功能模块”层。
三层结构图:增加了一层“子功能模块”层,使功能划分更为细致。
五层结构图:详细划分功能,提供更深入的层次化结构。(太多了不画了)
步骤:
顶层:写上“食品溯源系统”。
第二层:列出主要功能模块,如“用户管理”、“食品管理”、“订单管理”等。
第三层:为每个功能模块分出子功能。
第四层:进一步细分,可能是更具体的子功能。例如,用户管理的注册功能可能细分为“邮箱注册”、“手机注册”等。
第五层:例如,每个注册方式可能有具体的表单字段,如“用户名”、“密码”等。
(四)业务流程图(选基本图形或流程图)
(五)系统功能流程图
(六)用例图(用例图用于描述系统与用户之间的交互关系)
(七)时序图(智能合约时序图用于描述智能合约中各个角色之间的交互时序)
(八)E-R图(E-R图用于描述数据库中的实体及其关系)
注意:矩形表示实体,椭圆表示属性,菱形表示关系。
标签:系统,用户,设计,区块,节点,食品,溯源 From: https://blog.csdn.net/2403_87679370/article/details/144171608