增加了形态观下的关键科学问题
This commit is contained in:
parent
301297229f
commit
257934a510
|
@ -81,6 +81,14 @@
|
|||
再次,内生的持续成长能力将成为软件的基本能力。除了自适应能力外,软件将越来越多地具备支持自演化的持续生长能力。这种持续生长意味着通过各种智能化算法调整软件的算法和策略从而实现优化运行,而且还意味着软件通过各种生成以及合成能力不断增强自身的能力。因此,未来软件定义中功能与数据的界限将进一步模糊,越来越多的功能将通过数据定义(代码也可以看作一种数据)的方式进行表示,并通过数据驱动的方式实现自演化和自生长。
|
||||
|
||||
最后,软件与人将在不断汇聚的群体智慧中实现融合发展。软件的覆盖面越来越广、渗透性越来越强,最终用户对于软件的依赖也越来越强。由此,软件所能获得的关于用户行为和反馈的数据越来越全面和丰富,并在此基础上形成越来越强的群体智慧。这种群体智慧注入软件后又将服务于每个最终用户,使得他们能够在各种应用场景中以更加智能化和个性化的方式满足自身的需求,从而使得软件在使用中越来越有“灵性”和“人性”。未来的软件学科及相关研究需要摈弃“人”与“软件”二元分离的思维定式,更加自觉的考虑人机共融,不仅考虑“人因”,更要考虑“群智”。
|
||||
|
||||
|
||||
\subsubsection{形态观下软件方法学的关键科学问题}
|
||||
形态观下软件学科面临的一个关键科学问题是如何面向最终用户场景、通过人机物资源的按需融合与自适应、自演化持续满足用户的多样化需求。这一问题的解决有赖于编程语言及系统软件支撑、软件构造方法、软件演化与维护方法等多个层面的方法和技术发展。
|
||||
1)最终用户是人机物融合应用的使用者,同时也在个人所见的人机物资源视图基础上参与应用的构造过程。这方面的问题包括:如何面向最终用户提供软件定义的人机物资源编程模型和语言?如何发展示教编程(programming by demonstration)、图形化编排等面向非专业开发者的最终用户编程方法以及相配套的工具环境?
|
||||
2)软件应用的泛在化要求各种面向通用目开发的软件以解构再重构的方式,以用户为中心按需分布到泛在化、专用化的计算设备和运行平台上,从而适应应用按需融合与自适应、自演化的要求。这方面的问题包括:如何通过新型编译器、翻译器及其他系统软件工具支持遗留软件系统实现面向不同专用硬件和平台的高效定制和裁剪?如何基于超轻量级容器、泛在操作系统等新型系统软件支持泛在环境下软件部件的高效动态部署和运行?
|
||||
3)软件应用的持续生长要求软件以更加柔性的方式进行定义和构造,同时以更加智能化的方式实现软件的动态构造和更新。这方面的问题包括:如何通过运行时模型实现软件功能和实现策略的运行时定义?如何基于用户行为和反馈数据实现对于软件用户满意度及环境适应性的评价?如何根据用户目标、代码上下文及运行时反馈实现程序的自动合成和适应性调节?
|
||||
|
||||
\subsection{价值观}
|
||||
传统的软件质量观以软件制品为中心,人们主要通过客观度量软件系统来评估软件。新时代下,软件制品的内外部质量要求进一步强化和扩展。更重要的变化是,软件通过服务的方式满足用户需求,软件无迹可寻的趋势强化了软件作为人类价值载体的特征,需要在传统的质量观的基础上发展以人为中心的价值观。
|
||||
\subsubsection{从质量走向价值}
|
||||
|
|
Loading…
Reference in New Issue