软件工程技术中的软件部分生命周期逻辑的应用

2017-07-19 14:00曾晗
卷宗 2017年13期
关键词:软件工程逻辑建模

曾晗

摘 要:本文分析了软件工程技术中的软件部分生命周期逻辑的应用,介绍了软件定义阶段逻辑的应用,领域建模逻辑的应用。

关键词:软件工程;建模;逻辑

对于软件工程技术而言,如何提高软件在各个阶段的工作效率至关重要,而对于软件的描述,软件的管理以及软件的文档等方面的研究,也是软件工程技术研究的主要内容之一。从方法、工具、过程来看,也即我们可以从软件工程的三要素来展开研究。我们通过逻辑学中的类比法,可以把软件工程的各个生存周期,看成是人的生命周期。我们知道在逻辑学中检验一个真值函项模式的有效性和一致性的时候,我们通常是对真值函项式进行真值分析,在真值分析的时候,如果每种情况下,得出的结果都是真的,那么这个时候我们就认为它是有效的或说是一致性的;如果在每种情况下,得出的结果都是假的,那么这个时候我们就认为它是不一致的。其次,我们对有效性的证明的时候,当遇到一种情况是假的,那么我们对有效性的证明就可以停止。

1 软件定义阶段逻辑的应用

在软件定义阶段,主要有以下三个方面:首先是问题定义,其次可行性分析,最后是立项或签订合同。我们知道一个典型的范围描述有以下几点:

1.1 初始需求清单

客户范围约束;

开发者范围约束。

我们知道在设计某个软件的时候,我们不可避免的需要考虑它的市场价值,因而软件的经济性和有效性也一直是我们需要考虑的问题。这时候我们可以选用一些简单的,容易实现的一种方案来实现。由此可见,对于软件的开发者而言,在软件的这样一个过程中,需要明确的知道软件需要做什么以及不需要做什么,这样才能在设计软件的时候知道出发点以及目标,而不是盲目的追求功能的实现和运行,不考虑有些功能的必要性和有效性。

所以在初期设计出一个合理精确地范围文档在软件开发过程中是非常重要的。如果一开始所设计出的文档,语义不清,表达内容模棱两可,这就会造成不必要的麻烦。例如:当某医院需要一个医药管理软件,这款软件的部分功能是病人也能查询到医药的价格,但是不能查看库存或者盘点药品等功能。而软件开发者在设计的时候由于一开始对该医院所需求的软件定义不明确,或者是因为该医院在表述该软件功能的时候对这款软件的实现表述不明确。最终导致的结果是:设计出来的医药管理软件,病人根据他们个人信息登录进去也能查看到该医院医药的库存等方面的信息。这种由于一开始的表述不精确,给双方都造成了麻烦。下面我们先通过了解逻辑学中如何对概念进行概括和限制,再通过对比,知识的迁移运用到软件定义阶段。

1.2 内涵和外延

在逻辑学中,我们在对概念进行描述的时候,会用到概括和限制这两种方法,同样这样的两种方法也适用于软件工程需求分析阶段文档的描述。我们首先要先了解概念的概括和限制的具体用法,这样才能准确的把握概念的内涵和外延。如何对一个概念的内涵或外延进行增加或缩小呢?这是接下去我们要研究的问题。

我们常说要有正确的逻辑思维,而正确的逻辑思维就需要我们对概念有所了解,也即需要概念明确,我们在概念明确的基础上,才能准确的把握概念的内涵和外延。那什么是概念的内涵呢?在逻辑学中,对其定义是反映对象本质属性的概念。对于限制而言,字面上理解是缩小其范围。那么在逻辑学中如何理解呢?逻辑学中有两种概念:种概念和属概念。我们把表示范围大的概念称为属概念,把另一个表示范围小的概念称为种概念。而逻辑学中对于限制的定义,首先需要判断我们所需限制的概念是否具有种属关系。也就是说范围小的概念和范围大的概念之间需要存在着种属关系。简言之我们的限制是把范围大的概念也即屬概念,通过限制变成范围小的概念即种概念。也即限制是通过增加内涵,缩小外延,从属概念得到其种概念的逻辑方法。上述,我们知道内涵是揭示概念本质的,那么对于概念的外延,我们用什么来揭示呢?此时,逻辑学中我们把它称为划分。此外,我们知道限制是由某个概念的属概念得到种概念的这样一个方法,那么如果这个过程反过来看,就得到逻辑学中的另一个定义,即:概括。当我们需要扩大某个概念的外延的时候,我们可以运用概括。这样这个概念的内涵也相应减少了。下面我们可以通过几个例子来具体区分一下以上几种情况。如:“学校”到“中学”,这个例子中我们对“学校”进行了限制,从而使得其更具体化了。但是根据限制应用条件可知,我们在使用时候,一个要注意这两个概念之间的关系,如果不具备上述条件,我们使用限制就是错误的。例如:“城市”限制为“农村”这就是错误的,因为“城市”和“农村”这两个概念并不具备种属关系,两者是并列关系。“麻雀”能概括为“鸟”,不能概括为“哺乳动物”,从抽象的角度来考察:“鸟”是“麻雀的抽象,而“哺乳动物”却不是“麻雀”的抽象。通过以上的例子,我们在运用的时候一定要判断好你所要运用的对象是不是具备种属关系,如果不具备就不能乱用,否则就容易造成错误。

既然种属关系在应用时候如此重要,那么,我们就需要对它进一步的认识和理解。在概念外延间关系中,对于相容的关系我们又把其分为全同关系、属种关系和交叉关系。我们主要看属种关系,概念S、P有属种关系,是指所有的S是P,且有S不是P如“学生”和“大学生”有属种关系。属概念:外延较大:种概念:外延较小。我们又可以把属概念称为上位概念,而把种概念称为下位概念。同时,概念S、P有属种关系,则P、S有种属关系,反之也一样。概念S、P有属种关系,也称S真包含P,或P真包含于S。对不相容关系,不相容概念有一个确定的属概念,称为论域。概念的不相容,分为矛盾关系和对立关系两种。对矛盾关系而言,S和P不相容,但是S和P的外延和等于其论域M,如“白虎”和“非白虎”就是矛盾关系;对立关系,S和P不相容,但S和P的外延之和小于其论域M,如“白虎”和“黄虎”就是对立关系。

2 领域建模逻辑的应用

在逻辑学中,任何概念都可以看成“类概念”,可以说概念是思维的形式,承载着相应的思维内容,同时理性认识的基本形式也即概念。概念与语词或词组有一定关系。逻辑学中有以下几类概念:第一种肯定概念和否定概念,任何事情都是相对而言,这两个概念也一样,它们是根据概念所反映的对象是否具有某种属性来区分。其中肯定概念又称为正概念,而否定概念又称为负概念;第二种是普通概念和单独概念,其中单独概念的外延分子=l,是指1个对象,即独一无二的事物、专名或摹状物,而普通概念则是外延分子>-2,也指一类对象、形容词或动词等。从这两类对象而看,它们是根据反映对象数目不同来划分的。第三种是集合概念和非集合概念,我们把反映集合体的概念称为集合概念,反之,不反映集合体的概念则称为非集合概念。我们把由两个或两个以上的个体经组合构成的统一整体称为集合体。综上,可以看出上述三种概念的分类是根据每个不同概念的内涵或外延在形式上的共同点进行划分的,因而概念的内涵或外延也反映出概念的本质。它们的两个特点分别从量和质两个方面来说明概念。外延从字面上理解,就说明了概念所适用的范围,而内涵则代表着这个概念所特有的属性。在计算机软件工程中的领域建模就可以运用到上述知识,领域建模是为了过渡到类图建模的,通过分析它,更好的帮助我们了解领域建模。在领域建模中有个问题域,这个问题域是研究的是相关事物或概念对象。我们通常会运用图形来表示问题域里对象静态模型。由此可见,逻辑学中的概念在领域建模中也有应用,我们学会对概念外延的划分,能够帮助我们更好的理解领域建模中的概念的外延,而内涵我们也能利用前面所了解到的种属关系,进行限制或者概括,这样能够更好的帮助我们来理解领域建模的内涵,此处就不举例子一一说明。

猜你喜欢
软件工程逻辑建模
刑事印证证明准确达成的逻辑反思
逻辑
创新的逻辑
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
关于如何创新和完善计算机软件工程管理的探讨
三元组辐射场的建模与仿真