信息化的本质分享 http://blog.sciencenet.cn/u/Babituo

博文

数字孪生与面向资源应用开发ROAD

已有 398 次阅读 2021-5-18 07:48 |个人分类:面向资源软件开发方法|系统分类:科研笔记

ROAD原来只为数字孪生而生。

数字孪生与面向资源应用开发ROAD

追本溯源

人类社会中的所有事物都被称为“资源”,计算机信息系统本是人类社会的一小部分,但随着其不断发展和进步,它正在成为人类社会的一个层面,有人称之为“孪生社会”。计算机信息系统就像一面“信息的镜子”,把人类社会的信息一骨脑儿全“照”了进来。人类社会的资源被“照”进计算机系统后,就被叫做“信息资源”。

怎么理解这个“照”的呢?可以理解为是现实世界物质和能量层面的人类社会,先是被“照”进了人类的大脑,这个“照”,就是人类对自然界的学习、认知、研究和再造。随着人类的进步,人类发明了电脑,认清了数据、信息、知识和方法的本质及其相互的关系,并把“照”进人脑的事物统统都搬进到了电脑中,于是,就能在计算机系统中再造出一个信息层面的人类社会来。

如果是简单的复制再造,还不能被称为是“孪生”的。事实上,是人类发明了一种方法,把原本就隐藏在现实世界事物中的信息,双向同步地搬进了计算机系统,使得在计算机系统内修改的信息,反过来还会同步到现实世界。这并不是什么新鲜的看法。所谓的“自动控制”,本质上就是想实现这个目的。先贤维纳在代表人类提出《控制论》时,就表明了这个初衷,即实现所谓赛博社会(Cyber Society)和社会控制(Social Control),这样才能叫“孪生社会”。当然,到目前为止,这个想法依然还只是人类科技进步的长远理想之一。

所以,只要把人脑中关于现实世界的信息处理结果以及信息处理的方法,全“照”进计算机系统,就能加快人类实现赛博社会理想的进程。笼统地说,人脑关于现实世界的信息处理结果包括两类:实物和类型,处理方法就是五步法:

1. 首先对实物进行采样;

2. 然后对采用结果进行拟合还原,验证采样结果正确有效;

3. 接着对拟合还原结果进行模式识别和提炼,形成类型;

4. 再接下来就是对类型进行试验改造;

5. 最后对试验改造的类型进行重建创生。

如果说以前的计算机信息系统着重在【把人脑的信息处理结果“照”进电脑】的话,那么,相信今后,必定会在【把人脑的信息处理方法“照”进电脑】方面得到迅猛的发展。本系统的设计初衷,就是希望能在加强人类这个信心方面有所帮助。

需求分析

如果说,在“信息原子与分子的设计与实现小节中,介绍的是对自然界微观本质及其结构原理的实现的话,那么,在本节,就跨进了人类社会,需要分析和实现人类社会资源本质:资源类与类型定义类的实现。

在现实世界中,资源和类型的认知,代表了对实物表征描述和对概念抽象描述的两种结果。通常在面向对象分析设计中,类Class来代表类型认知,而用对象Object代表实物认知,体现在编程上,需要为每一类事物定义一个Class,在需要实例时用Class new一个Object,再用Object来执行Class中定义的属性和方法来完成对象之间的交互过程。这就是所谓的OOAD和OOP的范式。

本系统的设计,则是在ROAD和ROP范式下的工作模式,也就是面向资源的分析设计和编程范式。那么,OO和RO到底有什么不同呢?从编程的角度来理解,不同点在于:OO方法,是用面向对象的程序语言对需要管理的对象和过程进行编码,直接编译或解释执行这些代码形成应用系统;RO的方法,则是用面向对象的程序语言对资源Resource和类型TypeDefine及其关系进行编码,而用二者的实例,即OO中的object和class来描述需要被管理的对象和过程,用执行引擎来执行这些描述形成可执行的应用系统。

也就是说,在RO范式下,只需要在编程语言级别写Resource和TypeDefine两个Class,new出来的实例,全是resource和type,整个应用程序跑起来,是讲述关于resource和type的故事,而不是被管理对象,如:学校,工厂,医院,公司的组织机构,人员工作流程的故事。

这意味着RO范式下开发的一次应用系统是一个应用开发建模工具软件,这个开发工具主要使用资源和类型这两个概念来描述被管理对象的业务逻辑和运作流程,形成应用模型。然后通过执行引擎载入应用模型执行,才得到二次应用系统,就是传统的应用系统。把传统OO方法中用代码写的Class转换到RO方法中用TypeDefine的模型实例;而Object则转换为RO方法中的Resource的模型实例来实现,这两个操作都被称为是“资源化”。

用数学上的微积分语言来类比表达OO和RO的关系,可以把RO理解为是OO的“一阶导函数”,即所谓资源化,就是“求导”。用执行引擎运行资源模型,也就是最终应用软件执行的过程,就是在做“积分”。

这样做的好处只有一个:就是使开发工具环境和程序运行环境变得“超轻”,其他的一系列好处都可以从这个好处带来。




http://wap.sciencenet.cn/blog-33982-1287045.html

上一篇:对象定义方式
下一篇:智能认知随想

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2021-8-4 09:15

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部