软件需求工程学习笔记(三)
本文介绍了系统概念在不同语境下的具体语义,为软件需求工程提供了一个基本的语义环境。
钱学森先生于1993年提出了一种人类知识体系结构,将人类知识体系自上而下分成了三个层次。最上层是哲学,哲学不仅是知识,还是智慧。中间层是科学技术体系,科学知识的特点是,不仅知道是什么,还能回答为什么。最下层是前科学,也就是经验知识、感性知识及不成文的实践感受。这部分知识的特点是只知道是什么,还不能回答为什么,这类知识经过研究、提炼也将成为科学知识。此外,还引入了“性智”与“量智”两大概念,分别用于宏观整体认识与微观定量分析,两者是互补的,相辅相成的。
系统科学的一个基本观点是:如果要从宏观上研究和学习一个系统,那么就需要立足于更大的系统之中去观察。从人类知识体系结构本身来看,这是一个一维的层次结构,上层知识为下层知识提供可能性,下层知识为上层知识提供现实材料。当立足于更大的系统中观察时,显而易见的一个结论是:知识体系和人类活动可以形成一个二维的网络结构的系统,任何层次的知识都可以和人类活动建立直接的联系。这个系统的基质正是信息,那么,根据系统生成论的观点,同样显而易见的是,这样一种信息系统正是生成信息空间的那一个“微”。
系统科学的另一个基本观点是:一切事物都以系统方式存在,都可以用系统方法研究。从整体上看,人类所需要处理的关系可以分成两个方面:一方面是人与自身的关系,另一方面是人与自然的关系。在人与自然的关系中,一方面是认识层面的人与自然的关系,另一方面是现实层面的人与自然的关系。这两方面的关系辩证统一于实践。在处理现实层面的人与自然的关系中,人和工具组成的系统是最基本的功能单位,这个系统的基质是知识。一个人掌握的关于工具的知识以及在这些知识指导下使用工具的能力是此人实践能力的构成要素。
系统观的一个基本观点是,系统具有目的性。按照系统多隶属原理,任何系统都会因为观察者目的的不同隶属于不同的系统体系。因此,可以说,人类社会的发展历史就是一部知识生产的历史,也可以说人类社会发展的历史就是一部工具发展演变的历史。当这两种观点下的历史进程走到计算机软件出现这一点时,也可以说,从此之后,人类社会的发展历史就是一部计算机软件的发展历史。计算机软件作为一种工具,其本质作用是提高了人类知识对现实的转化率。计算机软件是知识性和工具性的辩证统一,这种统一性的工具载体是编译器软件。一方面,计算机软件具有强烈的知识性特征,一个重要原因是计算机软件产生和发展的每一步都是知识密集型的,并且知识的密集性会随着软件本身的发展而增大。另一方面,计算机软件及其载体计算机系统的本质是物理的工具系统,这一工具性的内因决定了不管计算软件在发展过程中表现出什么样的知识性甚至是建立在知识性基础上的拟人性,它依然是一种工具,具有和其他工具一样的本质属性。正是这种在计算机软件身上体现出的知识性和工具性的一体两面性,使得在计算机软件协调和控制下的工具系统从要素性质的层面接近了人和工具组成的实践功能单元,这也正是计算机软件在工具层面具有先进性的根源。
正如前文提到,计算机软件的本质作用是提高了人类知识对现实的转化率。这种作用是在人类社会信息化的进程中发生的。所谓信息指的是能够表征事物、具有可信性而又从被表征的事物中分离出来栖息于载体上的东西。信息是一种系统现象,至少有信源和信宿才能谈论信息,有相互作用才有信息。不存在与系统无关的信息,也不存在没有信息的系统。有元素之间、分系统之间、层次之间相互作用,有系统与环境之间的相互作用,就有信息的产生和交换。对于系统涌现性来说,整体涌现性的产生或消失并非物质能量的产生或消失,而是信息的创生、变换或消失。信息与系统互为条件,相伴相生,信息化事业与系统工程研究相互指导,相互促进,二者统一于在钱学森等人开创的系统科学中国学派指导下的与时俱进的中国特色信息化实践。
对于一个具体的软件系统,必然存在一个具体的现实业务系统作为软件系统发挥作用的战场,同时也必然存在一个形成现实工具的计算机软件物理实现。软件项目作为一个具体的工程系统,其系统目标是生成一个计算机软件系统,将其整合到一个具体的业务系统中,形成一个新的业务系统。这个新的业务系统在一定的环境下相对于原业务系统的实践能力在一定评价视角下等到了提升。实现这个系统目标正是软件系统的需方对这个软件项目提出的最根本的需求。