形式化的软件开发

2024-05-14

形式化的软件开发(精选10篇)

形式化的软件开发 篇1

0 引 言

随着计算机技术的发展, 软件规模日益庞大, 软件开发也日益复杂。随之而来的问题是许多IT系统都无法实现期望, 它们要么无法实现业务目标, 要么无法有效支持用户任务, 要么成本很难控制在预算之内。究其原因, 相当多的软件失败是因为需求不明白或者不确定而致。自1991年J.Martin提出“需求工程”[1] 概念后, 需求分析作为软件工程的一个重要阶段开始形成一门独立学科, 称为需求工程。软件需求的重要性正在不断提高, 因为它是用户预先知道将以什么样的成本, 获得什么样产品的途径。

需求工程在软件系统开发中的重要性已不容置疑。需求的获取是需求工程的主体, 是软件系统开发过程中最为困难, 也是最为重要的部分。只有真正满足用户需求的软件产品才能为用户接受, 不能满足用户需求的产品, 不管采用了多么先进的技术, 对用户来说都是毫无用处的。根据Leffingwell 在1997 年的研究, 软件项目中40%~60%的问题都是在需求的获取和分析阶段埋下了祸根[2]。在过去几年, 文献主要强调需求建模和规约方法, 现在重点转移到了软件需求获取的有效方法。

传统的需求分析过程通常采用数据流图等方式来描述系统的逻辑模型。由于这些非形式化以及半形式化方法所需求的描述都未给出数学意义上严格的语法和语义说明, 因此需求阶段建立的模型或多或少的带有不精确性、不完全性和不一致性。形式化方法 (Formal Methods) 是全面系统地使用基于数学的语言、技术和工具, 精确地说明、开发和验证的软件系统, 使用形式化方法描述的规约具有规范性和无二义性, 而且形式化语言是一种机器可处理的描述语言, 可以保证软件复用自动化成为可能。

1 用例驱动的需求获取

1.1 用例模型

用例模型是系统既定功能和系统环境的模型, 它可以作为客户和开发人员之间的契约。系统建模有许多种方法, 每种建模方法, 均可满足不同的目的。然而, 用例模型最重要的作用是将系统行为传达给客户或最终用户, 因此模型必须易于理解。用例模型驱动了需求分析之后开发工作的各个阶段和UML的各个模型。

用例模型采用若干个用例图描述。用例图是一个参与者和用例以及另外的定义和说明的可视化表示。用例图不仅是一个图, 而且是系统想要的行为的全文档化模型[3,4,5]。

1.2 用例

用例表示一个完整的给用户传值的功能性单元。用例是系统和用户之间的动作序列, 而不是逐条的个体需求。显著的用例改进了这一问题。现在, 需求是用例的形式, 需求以顺序的方式提供系统的行为, 以相关的替换和异常信息结束。用例只说明了系统要做什么, 而且在设计上领先, 因为它对于收集需求和开始设计过程都非常便利。

1.3 参与者

参与者和用例从功能需求的分析中就确定了, 功能需求具体化为用例, 用例通过给参与者提供某个值的结果来满足功能需求。业务分析员是选择首先表识参与者, 然后再表识用例或者相反。

1.4 用例关系

用例描述的是系统外部可见的行为, 是系统为某一个或几个参与者提供的一段完整服务[4]。从原则上来讲, 用例之间都是并列的, 它们之间并不存在包含的从属关系, 但是从保证用例模型的可维护性和一致性角度来看, 可以在用例之间抽象出包含 (include) 、扩展 (extend) 和泛化 (generalization) 这几种关系。这几种关系都是从现有的用例中抽取出公共的那部分信息, 然后通过不同的方法重用这部分公共信息, 以减少模型维护的工作量。

1.5 案例分析

这里分析一个体液免疫的实例。体液免疫是由B细胞介导的免疫应答。体液免疫可由胸腺依懒性抗原 (TD) 和非胸腺依懒性抗原 (TI) 诱发。这里讨论由TD诱发的体液免疫。

TD诱发的体液免疫必须要有抗原递呈细胞APC (Antigen Presenting Cell) 和辅助T细胞 (TH细胞) 。TD诱发的体液免疫过程大致如下:当抗原侵入机体内时, 抗原递呈细胞识别抗原, 并处理和递呈抗原状决定族给辅助T细胞;辅助T细胞识别抗原状决定族, 然后把抗原状决定族传递给B细胞, 辅助T细胞自身活化, 增殖分化成效应T细胞;B细胞接受来自辅助T细胞的抗原状决定族, 活化并增殖分化为效应B细胞和记忆细胞;效应B细胞产生抗体, 当同种抗原再次进入机体时, 记忆B细胞便分化成大量的效应B细胞, 进而使抗体与抗原结合, 抗体将抗原杀死[6]。

分析上述体液免疫的过程, 可以把该软件系统需要实现的功能归结为以下几个问题:

(1) 抗原入侵机体;

(2) 抗原递呈细胞摄取抗原;

(3) 抗原递呈细胞处理抗原;

(4) 抗原递呈细胞递呈抗原状决定族给辅助T细胞;

(5) 辅助T细胞识别来自抗原递呈细胞传递的抗原;

(6) 辅助T细胞传递抗原决定簇给B细胞;

(7) 辅助T细胞增殖、分化形成效应T细胞;

(8) B细胞接受辅助T细胞的抗原决定簇;

(9) B细胞增殖、分化形成记忆B细胞;

(10) B细胞增殖、分化形成效应B细胞;

(11) 效应B细胞产生抗体;

(12) 记忆B细胞记忆抗原;

(13) 同一种抗原再次进入B机体, 记忆B细胞增殖分化成大量的效应B细胞;

(14) 抗体和抗原结合杀灭抗原。

根据上述这些问题, 可以把所涉及的操作归结为:入侵、识别、摄取、处理、传递、活化、增殖分化、产生、记忆、结合并杀灭这几个方面。根据这些分析结果, 可以创建以下用例:入侵 (Intrusion) ;摄取 (Inhale) ;处理 (Processing) ;传递 (Present) ;活化 (Activation) ;增殖分化 (Proliferation and Differentiation) ;产生 (Produce) ;记忆 (Memory) ;识别 (Recognition) ;结合并杀灭 (Binding and Kill) 。

根据上述分析, 系统的参与者分别为抗原递呈细胞 (APC) ;辅助T细胞 (TH) ;B细胞 (B) ;抗原 (antigen) ;记忆B细胞 (memory B cell) ;效应B细胞 (effect B cell) ;抗体 (antibody) 。

根据上述分析, 可以画出图1所示的体液免疫用例图。

这里采用顺序图建立对象间的动态交互的模型。

由TD介导的体液免疫过程已在上面详细描述, 由于篇幅限制, 体液免疫的顺序图不再列出, 但是它的形式化描述将在下面介绍。

2 形式化需求

2.1 形式化B方法的介绍

B方法是形式化方法之一。B方法以规格说明语言的研究为背景, 在引入一些面向对象机制等特点的同时, 保留了语言的优点。B方法使用相对简单且运用人们熟悉的符号表示法广义代换表达状态的转换, 从软件的规格说明到编码的形成是一致的形式描述, 使程序和程序的规格说明处于统一的数学框架之下, 以一种基于集合论的符号表示法来书写, 减少了出现语义错误的可能性。这种数学框架是通过谓词变换和扩展的最弱前置条件为前提的[6,7]。

B包含一种AMN的结构化机制, AMN是B方法中的一种基本封装机制, 非常接近人们在程序设计中所熟知的一些概念, 如类 (SIMULA) 、抽象数据结构 (CLUE) 、模块 (MODULA-2) 、包 (ADA) 、对象 (EIFFEL) 等概念[8,9]。

AMN中有赋值和条件语句, 也有前置条件、多重赋值、约束选择、卫、无约束选择。AMN中没有定序和循环, 理解AMN的根据是状态及改变状态的操作, 即包括静态和动态分析。静态对应状态的定义, 动态对应其操作[10]。

下面通过论述的实例来获得体液免疫形式化B的需求。

2.2 用B形式化需求

根据上述用例图, 定义如下转换规则[11]:

(1) 所有的参与者用枚举集合来表示, 并把相应的变量、不变式等封装在参与者的机器里;

(2) 所有的用例用枚举集合来表示, 并把相应的变量、不变式等封装在参与者的机器里;

(3) 参与者与用例的关联关系用二元关系组成的枚举集合来表示, 并把相应的变量、不变式等封装在关联关系的机器里。

因为在本例里, 没有参与者与用例的关联关系, 所以不在此列出, 方法类似规则 (2) 。根据以上规则, 得出参与者与用例关联关系的机器如下:

这样就可以把参与者与用例之间的关系用形式化B的语言表示出来, 而参与者机器和用例机器在这里不一一列出。

下面再来看如何把顺序图转换成形式化B的语言, 定义以下几个规则:

把顺序图中的对象用枚举集合来表示;

把顺序图中对象之间的操作名用枚举集合来表示;

把顺序图中对象之间的操作顺序用枚举集合来表示;

定义常量并对其设置前置条件;

定义变量并对变量设置不变式;

根据转换规则, 得到顺序图形式化B的机器表示形式如下:

这里得到了形式化B的规格说明, 避免非形式化需求描述的歧义性, 并且形式化的规则说明易于验证前后的一致性等问题。

3 结 语

采用基于用例建模的方法进行需求获取。该方法的主要好处是以用户为中心, 用例方法可以使用户更清楚地认识到新系统允许他们做什么。把用例建模获取的需求变成形式化B的描述方法, 形式化的需求具有无歧义、精确性等优点, 能提高规格说明的正确性。下一步的工作就是用B方法的证明技术来验证机器, 并将其精化、程序实现。

参考文献

[1]Zave P.Classification of Research Efforts in RequirementsEngineering[J].ACM Computing Surveys, 1997, 29 (4) :315-321.

[2]WIegers K E.软件需求[M].陆莉娜, 译.北京:机械工业出版社, 2000.

[3]F Martin.UML精粹[M].2版.徐家福, 译.北京:清华大学出版社, 2002.

[4]汤小康, 王志刚, 曹步文.UML用例图的Z形式规范[J].计算机与现代化, 2006 (11) :12-13, 16.

[5]范晓平.UML建模实例详解[M].北京:清华大学出版社, 2005.

[6]陈慰峰.医学免疫学[M].4版.北京:人民卫生出版社, 2007.

[7]裘宗燕.B方法[M].北京:电子工业出版社, 2004.

[8]邹盛荣, 阳雪平, 郭峰, 等.免疫因子网络的I mmune-B模型设计[J].吉首大学学报:自然科学版, 2006, 27 (3) :27-32.

[9]Zou Shengrong.Modeling Distributed Algorithm Using B[A].Proceeding of the International Grid and CooperativeComputing Conference[C].2004:683-689.

[10]张志锋, 徐洁, 邓璐娟, 等.基于B的UML形式化需求分析[J].计算机技术与发展, 2007, 17 (8) :133-135.

[11]侯丽珍, 蔡小娟, 邹恒明.软件需求的形式化转换模型[J].计算机工程, 2007, 33 (5) :73-75.

形式化的软件开发 篇2

经营性用地实行招标、拍卖、挂牌(简称“招拍挂”),是土地市场建设的基本要求。一些政府出于招商引资、建设回迁房、基础设施建设等原因。对企业通过招拍挂取得土地后缴纳的土地出让金进行一定比例或额度的返还。由于政府与开发商之间约定返还的条件和形式不同,对企业取得的返还款是认定为财政性资金,还是认定为经营性收入,其税务处理也不尽相同。税务机关对返还收入的涉税认定,本着实质重于形式原则,主要依据是政府与企业签订的出让协议和补充协议的约定内容进行判定。今年以来,相关稽查案例不断出现,返还款用途不同,稽查处理差异迥异。下面结合实例就企业取得政府返还土地出让金的形式,以及相关的税务处理进行分析,以期企业可以认清纳税事项、规避涉税风险。

第一、政府主导拆迁,土地出让金返还用于建设购买安置回迁房

案例:某房地产开发企业通过招拍挂购入土地 100 亩,与国土部门签订的出让合同价格为 10000 万元,企业已缴纳10000 万元。协议约定,在土地出让金入库后以财政支持的方式给予乙方补助 3000 万元,用于该项目 10000平回迁房建设,回迁房建成后无偿移交给动迁户。相关税务处理:

一、营业税:本案例实际上是政府主导拆迁,由政府出资购买回迁房,用于安置动迁户。对房地产开发企业税,属于销售回迁房行为。鉴于拆迁房屋行为的特殊性,在返还款营业税的计税依据上,应区分以下三种情形。1,返还款相当于回迁房营业税组成计税价格确认收入的部分。

根据<营业税暂行条例实施细则>第二十条规定:“ 纳税人有条例第七条所称价格明显偏低并无正当理由或者本细则第五条所列视同发生应税行为而无营业额的,按下列顺序确定其营业额:

(一)按纳税人最近时期发生同类应税行为的平均价格核定;

(二)按其他纳税人最近时期发生同类应税行为的平均价格核定;

(三)按下列公式核定:营业额营业成本或者工程成本×(1+成本利润率)÷(1-营业税税率)” 如果返还款 3000 万元相当于回迁房组成计税价格确认收入,房地产开发企业应按取得售房 3000 收入万计算缴纳营业税。

2,返还款大于回迁房组成计税价格确认收入的部分。

土地出让金返还协议如果约定返还款大于回迁房组成计税价格确认收入,则取得的土地出让金返还应作为销售回迁房收入,征收营业税。大于回迁房组成计税价格确认收入的部分,如用于其它事项,可以按实际情况,进行营业税判定。

土地出让金返还协议如果没有约定返还款大于回迁房组成计税价格确认收入的部分的特定用途,应视同购买回迁房的价款或价外费用,征收营业税。

3,返还款小于回迁房组成计税价格确认收入的部分。

开发商取得土地出让金返还款小于回迁房组成计税价格确认收入,则取得的土地出让金返还应作为销售回迁房收入,征收营业税。返还款与计税价格确认收入的差额部分,属于营业税条例细则中的价格明显偏低,如果没有正当理由,应视同销售,征收营业税。

二、企业所得税

本业务属于政府主导的拆迁安置工作,由政府部门将土地出让金部分返还予开发企业,该款项是开发企业销售回迁房取得的收入,应当并入所得计征企业所得税。

关于房地产开发企业取得的土地出让金返还款是否属于不征税收入问题: 根据《财政部、国家税务总局关于财政性资金、行政事业性收费、政府性基金有关企业所得税政策问题的通知》(财税2008151 号)规定:对企业取得的由国务院财政、税务主管部门规定专项用途并经国务院批准的财政性资金,准予作为不征税收入,在计算应纳税所得额时从收入总额中减除。

《关于专项用途财政性资金企业所得税处理问题的通知》(财税201170 号)对此进一步明确:“企业从县级以上各级人民政府财政部门及其他部门取得的应计入收入总额的财政性资金,凡同时符合以下条件的,可以作为不征税收入,在计算应纳税所得额时从收入总额中减除:

(一)企业能够提供规定资金专项用途的资金拨付文件;

(二)财政部门或其他拨付资金的政府部门对该资金有专门的资金管理办法或具体管理要求;

(三)企业对该资金以及以该资金发生的支出单独进行核算”。

此例业务属于政府采购行为,不属于不征税收入所对应的财政性资金。房地产开发企业收到的土地款返还实为一种补贴收入,按照上述政策规定一般不属于不征税的财政性资金,应当作为收入计算缴纳企业所得税。

三、土地增值税

1,返还款相当于回迁房土地增值税确认收入的部分。

根据国税发2006187 号:<国家税务总局关于房地产开发企业土地增值税清算管理有关问题的通知>规定:“房地产开发企业将开发产品用于职工福利、奖励、对外投资、分配给股东或投资人、抵偿债务、换取其他单位和个人的非货币性资产等,发生所有权转移时应视同销售房地产 其收入按下列方法和顺序确认:1.按本企业在同一地区、同一销售的同类房地产的平均价格确定;2.由主管税务机关参照当地当年、同类房地产的市场价格或评估价值确定。

如果返还款 3000 万元相当于回迁房土地增值税确认收入,房地产开发企业应按取得售房收入 3000 万元收入计算缴纳土地增值税。

企业缴纳的土地出让金 10000 元全额计入开发成本中的土地征用及拆迁补偿费的金额。2,返还款大于回迁房土地增值税确认收入的部分。

土地出让金返还协议如果约定返还款大于回迁房土地增值税确认收入的部分,用于其它事项,可以按实际情况,进行土地增值税是否征收的判定。

土地出让金返还协议如果没有约定返还款大于回迁房土地增值税确认收入的部分的特定用途,应抵减房地产开发成本中的土地征用及拆迁补偿费的金额。

3,返还款小于回迁房土地增值税确认收入的部分。

根据《土地增值税暂行条例实施细则》第五条规定:“条例第二条所称的收入,包括转让房地产的全部价款及有关的经济收益”。

如果返还款 3000 万元小于回迁房土地增值税视同销售确认的收入,房地产开发企业应将取得的返还款 3000 万元全部计算售房收入计算缴纳土地增值税。然后还要根据国税发2006187 号应视同销售房地产的土地增值税收入确认的方法和顺序,属于《土地增值税暂行条例》第九条:纳税人有下列情形之一的,按照房地产评估价格计算征收:

(三)转让房地产的成交价格低于房地产评估价格,又无正当理由的。以及《土地增值税暂行条例实施细则》第十三条:条例第九条所称的房地产评估价格,是指由政府批准设立的房地产评估机构根据相同地段、同类房地产进行综合评定的价格。

对开发商取得土地出让金返还款小于回迁房土地增值税确认收入的部分,计算征收土地增值税。企业缴纳的土地出让金 10000 元全额计入开发成本中的土地征用及拆迁补偿费的金额。四:契税

根据《中华人民共和国契税暂行条例》第八条 契税的纳税义务发生时间,为纳税人签订土地、房屋权属转移合同的当天,或者纳税人取得其他具有土地、房屋权属转移合同性质凭证的当天。因此:企业交纳土地出让金时,就缴纳契税,计税依据为 10000 万元。

另:根据《中华人民共和国契税暂行条例细则》第九条规定:“ 条例所称成交价格,是指土地、房屋权属转移合同确定的价格。包括承受者应交付的货币、实物、无形资产或者其他经济利益”。

土地出让金返还款小于回迁房契税成交价格的部分,应按规定作为契税的计税依据,缴纳契

五、会计处理

土地出让金返还用于建设购买安置回迁房,企业应做营业收入处理。收到返还款时: 借:银行存款 3000 贷:预收账款 3000 完工结转收入时: 借:预收账款:3000 贷:营业收入 3000 第二、政府主导拆迁,土地出让金返还用于拆迁(代理拆迁、拆迁补偿)

目前招拍挂制度要求土地以“熟地”出让,但现实工作中一些开发商先期介入拆迁,政府或生地招拍挂,由开发商代为拆迁。在开发商交纳土地出让金后,政府部门对开发商进行部分返还,用于拆迁或安置补偿。

某房地产开发企业通过招拍挂购入土地 100 亩,与国土部门签订的出让合同价格为 10000 万元,企业已缴纳10000 万元。协议约定,在土地出让金入库后以财政支持的方式给予乙方补助 3000 万元,用于该项目 10000平土地及地上建筑物的拆迁费用支出。国土部门委托房地产开发公司代理进行建筑物拆除、平整土地并代委托方向原土地使用权人支付拆迁补偿费。约定返还的 3000 万中,用于拆迁费用 1000 万元,用于动迁户补偿 2000万元。企业实际向动迁户支付补偿款 1500 万元。相关税务处理:

(一)、营业税 根据国家税务总局《关于政府收回土地使用权及纳税人代垫拆迁补偿费有关营业税问题的通知》(国税函2009520 号)第二条规定:“纳税人受托进行建筑物拆除、平整土地并代委托方向原土地使用权人支付拆迁补偿费的过程中,其提供建筑物拆除、平整土地劳务取得的收入应按照“建筑业”税目缴纳营业税;其代委托方向原土地使用权人支付拆迁补偿费的行为属于“服务业—代理业”行为,应以提供代理劳务取得的全部收入减去其代委托方支付的拆迁补偿费后的余额为营业额计算缴纳营业税。” 返还款 3000 万中

1,取得的提供建筑物拆除、平整土地劳务取得的收入 1000 万元,应按建筑业缴纳营业税 30 万元。2,代理支付动迁补偿款差额,应按服务业--代理业征收营业税【(2000-1500)*5%】75 万元。

(二)企业所得税: 返还款 3000 万元中:

1,取得的提供建筑物拆除、平整土地劳务取得的收入 1000 万元,扣除相对应的成本费用,差额应计入当年的应纳税所得额。

2,代理支付动迁补偿款差额,应计入当年的应纳税所得额。

3,企业实际发生的与上述业务相关的营业税等税费,可以在发生当年扣除。

(三)、土地增值税规定

根据【中华人民共和国土地增值税暂行条例】第二条:转让国有土地使用权、地上的建筑物及其附着物并取得收入的单位和个人,为土地增值税的纳税义务人。以及【中华人民共和国土地增值税暂行条例实施细则】第二条 条例第二条所称的转让国有土地使用权、地上的建筑物及其附着物并取得收入,是指以出售或者其他方式有偿转让房地产的行为。

开发商取得的返还款 3000 万中,属于提供建筑物拆除、平整土地劳务取得的收入和代理服务取得的收入,不属于转让不动产收入,因此,不征收土地增值税。此收入不计算土地增值税清算收入。开发商缴纳的土地出让金 10000 元全额计入开发成本中的土地征用及拆迁补偿费的金额。

四、契税。

企业缴纳的土地出让金 10000 元全额计入开发成本中的土地征用及拆迁补偿费的金额。

五、会计处理

先期支付拆迁补偿款和进行拆迁时: 借:其它应收款 1500 其它业务成本 1000 贷:现金或银行存款 2500。

支付土地出让金时,10000 全部计入开发成本—土地征用及拆迁补偿费并作为契税的计税依据。土地出让金返还用于支付动迁户补偿款和拆迁费用时,企业应冲减往来和做其他业务收入处理。收到返还款时:代理支付动迁补偿款业务 借:银行存款 2000 贷:其它应收款 1500 其它业务收入 500 收到拆迁工程款时: 借:银行存款 1000 贷:其它业务收入 1000 第三、政府主导拆迁,土地出让金返还用于开发项目相关的基础设施建设

目前招拍挂制度要求土地以“熟地”出让,但现实工作中一些开发商先期介入,或生地招拍挂,政府为减轻开发商的负担,对开发商进行基础设施建设部分进行返还。

一般情况下,由于实施了土地的储备制度,政府将生地转化为熟地后再进行“招拍挂”,动拆迁问题已妥善得到解决,土地的开发工作也已经基本完成,周边的市政建设将逐步完善,水、电、煤等市政都有计划地分配到位。即在招标、拍卖、挂牌活动开始前,国土部门已将拟出让的土地处置为净地,即权属明晰、界址清楚、地面平整、无地面附着物的宗地。

但是在经营性用地招标、拍卖、挂牌的实际工作中,大量存在着“毛地”出让的情况,尤其是在企业改革、改制处置土地资产时,这种情况更比比皆是。因此,很多政府部门在招拍挂出让土地后,都会以土地出让金返还的形式,用于开发项目相关城市道路、供水、排水、燃气、热力、防洪等工程建设的补偿。

案例:某房地产开发企业通过招拍挂购入土地 100 亩,与国土部门签订的出让合同价格为 10000 万元,企业已缴纳 10000 万元。协议约定,在土地出让金入库后以财政支持的方式给予乙方补助 3000 万元,用于该项目外城市道路、供水、排水、燃气、热力、防洪等基础设施工程建设。相关税务处理:

(一)、营业税

项目外城市道路、供水、排水、燃气、热力、防洪等基础设施工程所需要支出,按土地出让协议规定,是应该由政府承担的。

本案例符合 BT(即“建设-移交”)投融资建设模式(以下简称 BT 模式)的特征。即房地产开发企业将该项目城市道路、供水、排水、燃气、热力、防洪等基础设施工程建设完工后,移交给政府。对此开发企业取得基础设施建设返还款业务 BT 模式的营业税征收管理:

1,无论其房地产开发企业是否具备建筑总承包资质,对房地产开发企业应认定为建筑业总承包方,按建筑业税目征收营业税。

2,房地产开发企业取得的返还款,应全额交纳建筑业营业税,并全额开具建安发票。

如果协议约定返还款用于项目内应收开发企业自行承担的城市道路、供水、排水、燃气、热力、防洪等基础设施工程支出,则应按企业取得政府补贴处理,不征收营业税。

(二)企业所得税:

本案例开发商取得的提供基础设施建设劳务收入 3000 万元,扣除相对应的成本费用,差额应计入当年的应纳税所得额。

开发商实际发生的与上述业务相关的营业税等税费,可以在发生当年扣除。

(三)、土地增值税规定

根据【中华人民共和国土地增值税暂行条例】第二条:转让国有土地使用权、地上的建筑物及其附着物并取得收入的单位和个人,为土地增值税的纳税义务人。以及【中华人民共和国土地增值税暂行条例实施细则】第二条 条例第二条所称的转让国有土地使用权、地上的建筑物及其附着物并取得收入,是指以出售或者其他方式有偿转让房地产的行为。

开发商取得的返还款 3000 万,属于提供基础设施建设劳务收入,不属于转让不动产收入,因此,不征收土地增值税。此收入不计算土地增值税清算收入。

开发商缴纳的土地出让金 10000 元全额计入开发成本中的土地征用及拆迁补偿费的金额。

四、契税。

企业缴纳的土地出让金 10000 元全额计入开发成本中的土地征用及拆迁补偿费的金额。五,会计处理

形式化的软件开发 篇3

关键词:自媒体;舞蹈;教学资源开发

我国舞蹈教育发展至今,无论是教材建设、师资配备、基础性教育教法,还是特殊性教育教法,均取得重大成果。“舞蹈教学个案研究”的具体内容也得到更加全面和细微的论证及推广,无论从实际数据上看,还是从研讨结论上看,都已经可以证明这种途径,可有效提升舞蹈教学质量。

1 舞蹈教学个案研究的必要性

舞蹈学科的特殊性是在普通型的发展中及不同门类的框架中不断发现和“因事而宜”的。根据学科中“人才培养”的需求普遍性构成了相同相似的课程建设与教学手段。特殊性则构成了“针对性”的课程建设与教学手段。长期以来探讨“技术与艺术”“质量与品质”“独特与唯一”等关系,是因为必须把控与衡量这个关系在课程建设与教学手段的特殊性。特殊性不仅在舞蹈教育范畴、艺术教育领域及整个教育领域中是教育特色及人才特色的重要核心。由此延伸的“个案研究”也就必然形成了舞蹈教学的必要性。

深入学科具体来看,舞蹈无论从身体基础训练、技术提升与艺术拓展、舞蹈思维训练、舞蹈创作能力培养,还是多样性舞蹈可能探究方面,任何一个方面都具有对“语言”的具象与意向的教学训练与教育引导要求。框架中的“因事而宜”的运用态度,必然会随着教学内容、对象的特殊性在实施的过程中形成“个案研究”。

2 个案研究与舞蹈教学资源开发的联系

当前现代教育技术已经达到了“网络竞技时代”,受教育者本身在接受教育的途径上就随着“技术发展”发生变化。舞蹈受教育者需求更是如此,“个案研究”的显著性在受教育者中极受关注,“个案研究”内容、方法、手段、成果都具备极大的教学推动力,如果无法通过相辅相成的“资源开发平台”得以发展和推广。不但无法实现现代教育技术发展的要求,更加会将“舞蹈教学发展”滞后。

3 自媒体形式下的舞蹈教育平台开发条件与价值

自媒体形式是现代信息发展的优质产物,具有方便、直观的特性。在国内外,相同艺术教育中的美术、音乐、戏剧已经不仅开了自媒体形式的先河,其技术手段与存在内容都已经相对完善。在我国,不同领域及内容的专门网站、微博、微信公众平台,因为具备简单易操作,明朗好浏览,通过信息网络传播形成高度的适应性与流行性。因此自然构成了高度的自媒体性。变革和应用速度之快,形成平台化的不同类别,也具有不同的功能和特征。

在自媒体形式下的舞蹈教育平台开发中,只需具有基本的计算机应用能力及网络使用能力,均可达到基本操作及实现有效传播和发展效果。然而,在舞蹈教学中,如果能适应性的使用这一途径,将在原有的“课堂式”效率的基础上,双倍甚至更广的提高教学质量,达到更好的研究推广。那么,在自媒体形式下的舞蹈教育平台开发中,将“个案研究”的实例与成果直接反映到自媒体平台中,自然就形成了教学资源开发的条件。

谈及自媒体舞蹈教育平台建设时,以教师教学个体为主体的个性化“微信个人微信平台”更具有运用和传播价值。而舞蹈教学的个性化及个性化教学参照,通过“个案研究”的分享来进行“自媒体舞蹈教育平台”开发与建设将为舞蹈教育发展做出积极的贡献,也会产生舞蹈教育发展的核心价值。

4 “小草舞集”微信公众平台介绍与效应

4.1 主要内容、开设思路与个案导向

“小草舞集”是根据个人研究方向及教学实践过程中的需求考虑设定的。主要以舞蹈编导专业本科层面、综合性大学舞蹈学及表教专业本科层面的《作品构思与编创技术》及通识性《舞蹈编导》课程为核心研究内容;同时根据所任艺术硕士(实践类)舞蹈编导及表演专业创意性、延展性课程需求通过平台辅助性功能,提升教学功能的比较性与空间性。在平台建设过程中,推送了以舞蹈编导专业与舞蹈编导课程教学比较性相关教学过程与教学成果分享,实现了“平台建设”推动“个案研究”,“个案研究”完善“平台建设”的舞蹈教育形式呈现,充分利用了自媒体的教育传播功能,呈现了舞蹈教育自媒体化建设方式的唯一个案。

在“个案研究”方面充分突出以教师(笔者)个人的独立思想,以最直观与最真实的文字、图片、视频、讨论、投票分析等形式,来实施“教育引导”。截止到2016年9月25日,“小草舞集”已经经历了两年多的以平台建设与内容分享的“教与学”探索。以积累、总结、研讨、分享的形式来实施舞蹈教学,这是区别于其他以营利为目的的相关舞蹈信息网站及微信平台。

因为主要以“个案研究”导向来进行舞蹈教学思想、方式的推广。所以主要以实际教学资源为途径,在需求与缺乏之间探索尚未完全备受认可,或者至今未寻觅到明确的办法的相关舞蹈教学思想与方法。通过教学过程的介绍、教学成果的展示、教学实验的总结来分享与肯定教学主体的价值。

4.2 数据分析与反馈调研

在自媒体建设过程后,根据信息浏览和确切信息反馈都比较稳定,而固定的关注者并不十分理想。作为初步建立的非营利的自媒体研究與教学分享平台,比较其他同类商业营利性舞蹈信息平台。不具备专业的设计、制作、宣传与推广团队。所以,关注者大多是关注于舞蹈发展,心怀舞蹈“忧患”,渴望舞蹈多样化发展,期盼新舞蹈意识的教师、研究生、本科生及科研者。

从“关注人群地域分布”、“关注人群性别”、“关注人群使用语言分布”、“图文综合平均浏览率”、“阅读来源分析”实质数据来看,相对稳定的267名固定关注者来源及存在从主观性可得知主要还是以所教授学生为主。客观可通过交流途径得知信息分享,参与这一教学过程的人数无法从城市经济发展程度来确定。而其中阅读来源的总数,对于43篇推送内容的浏览,1552人中1353人均属于流动关注人群。而1552人的浏览次数却造成了多次反复现象,以2917次微信浏览记录。而其他网络二次传播造成的485次,客户端自由浏览下,比起微课录制专门平台推介的途径更显优势。

随着普及和大力推动舞蹈教育的节奏与力度,造成了舞蹈教育的许多弊端。虽然努力的在我国教育制度的指导下获得了无数优秀成果,但是在舞蹈教育领域已然在国际化与传统化的矛盾中持续磨合。以教师为主体的教育研究不断开展,不同的教育教学方式也解决了种种问题,而带来的考验也是重重。

自媒体形式下的舞蹈教育资源分享也将随着发展提出更高的要求。以教师个人在研究和实施过程中的经验和成果来看。这是一条需要支持和坚守的路,只有这样舞蹈教育才能真正地在公平中获得解放。针对与“个案研究”的内容与导向也有多种,以上内容的阐述与成果分享也仅仅是在某一阶段发现问题去寻求解决问题的某一种方式。虽然值得提倡,但是在有限的教育环境中,还是有许多不足之处。但求这样一个引领能获得认同与关注,共同追求需要多样化的多样性教育方式方法。

参考文献:

形式化的软件开发 篇4

应用先进项目管理软件则可有效的避免这些问题。项目管理软件, 例如MS Project, 可为用户提供基本的项目管理模板, 对大型项目进行整体以及详细划分, 用户可以通过自主设置, 针对项目的实际情况, 对项目进行分阶段管理。以下本文将以MS Project为例, 对项目管理软件的形式化语言描述进行具体的分析。

1 形式化语言分析

1.1 项目管理软件的应用必要性

项目管理软件, 如MS Project等常利用图形化表示方法来表达, 使得非专业人士也能够比较直观的认识和使用。利用项目参与人员具有共识的语言进行项目描述;无需人工进行复杂繁琐的项目计算、调整以及统计工作, 大大提高效率;细致条例的安排可帮助项目管理经理清晰抓住项目焦点, 关注主要矛盾, 集中力量解决;为项目每一个阶段开辟独立数据空间进行数据的计算、存储以及提取, 避免数据的错位;协助管理者对项目整体进行把握, 优化项目管理过程。

1.2 MS Project项目管理软件的优势

应用形式化语言描述方法对工程项目进行管理, 这种方法在项目管理具体实施上上具有十分明显的优势。MS Project整合了先进的现代项目管理理论以及方法, 例如甘特图、网络图、责任矩阵、成本预估以及项目评价技术等, 用形式化语言描述出来, 便于非软件开发的专业人员使用, 通用性强, 便于学习和使用, 对于数据分析和处理的能力较为突出。同时对一个企业来说, 可以利用这种形式化语言来对公司多个项目进行管理, 从而构建企业自身的项目管理平台, 便于企业负责人对所有项目的进展情况进行把握。

2 项目管理软件应用形式化语言可完成的功能

2.1 项目计划的快速建立

利用项目管理软件的形式化语言对项目的整体计划建立方面优势明显, 它可以集成一套甚至几套完整的项目管理描述方法以及计算方法和模型, 在这些模板基础上, 使用人员可以根据项目的具体情况快速完成项目计划的制定, 避免浪费大量时间。

2.2 按时间管理项目进度

项目管理软件可完成项目的时间进度管理, 利用形式化语言的描述, 可以直观的看到整体计划时间, 目前正在执行的计划进度以及待执行计划剩余可用时间等, 在计划实施过程中如果出现任何变动, 都可在软件开辟的相应的数据库中进行计划变更, 其他计划的安排也会相应发生变化, 而不必在某一项任务时间或人力、物力的使用发生变更时, 逐个对之后任务进行修改, 节省了大量时间, 也排除了认为更改中的疏漏, 确保了计划的准确性。

2.3 对项目要素的管理

在项目管理软件中, 通常情况下, 将最基本的元素, 例如人、材料、机械设备、可用资金等, 进行数据化抽象为资源, 并建立资源库。根据各基本元素的特性, 设置资源日历, 利用图表以及资源需求曲线等对项目的各个组成部分所需资源进行直观展示, 并指出资源使用情况, 便于管理人员及时进行资源的调配, 避免人力物力的浪费以及工程进度。

2.4 形成项目任务网络

在整个项目中, 各子任务不可能同时进行, 他们之间具有一定的逻辑关系, 例如对于任务I, J, K, 有依次完成的时间上的步进关系, 也有I和J同时完成方可进行任务K的情况, 这就是任务之间的关联性。项目管理软件针对这种情况可以对各个子任务进行逻辑分类, 并构建任务网络, 方便管理者安排工程项目的任务。

2.5 完成工程项目的进度跟踪以及调整

项目计划制定后并非一成不变, 由于某些不可抗拒因素, 例如自然灾害、政策变化、设计更改等状况的发生, 项目进度必然受到影响, 因此必须根据工程的实际进展进行跟踪调查并及时调整。对项目各阶段的开始时间、完成时间、实际工作量、计划工作量、计划投入资源数量以及实际投入资源数量等一一进行记录, 并计算变更量以及对工程整体进度的影响程度, 以较为直观的柱状图或饼状图表现出来, 根据结果对工程项目中的各个环节进行管理, 对于影响到预设目标的行为, 例如资源利用量超标等情况, 系统可提示管理者进行及时处理。项目管理软件还能对项目过程中的某些设定值在一定范围内进行自动调整, 以不对项目整体进度产生影响为原则。

2.6 为管理者决策提供信息

项目管理软件有设定的专门供管理者决策用的管理模块, 该模块是将范围管理、时间管理、资源管理、成本管理、风险管理、质量管理等多个子模块的统计信息进行整合, 并依据已设条件对其中某些影响项目进度、资源管理或者成本控制的行为进行提取, 并在管理模块中显示出来, 便于管理者进行筛选和处理, 避免了大量繁重的审计工作, 能够使管理者决策更加科学快速, 有利于工程的整体管理。

3 结语

项目管理软件的问世, 给大型复杂项目的管理带来了科学、快速、有效的管理方法。国内目前应用较多的项目管理软件Project Planner是国际上目前主流的项目管理软件, 该软件采用形式化语言, 对工程项目进行逻辑化管理, 并以直观的形式展示出来, 对项目的进度跟踪、资源调配、成本核算等诸多方面都十分有效。随着项目管理要求的越来越高, 项目管理软件的智能程度也必将进一步提高。

摘要:随着计算机技术以及信息技术的发展, 目前大中型工程项目自动化程度越来越高, 项目复杂程度也越来越高, 单靠传统的项目管理模式已经远远无法满足工程进度和效率的要求, 同时也会造成人力物力的大量浪费。应用先进的项目管理软件对大中型工程项目进行综合管理, 有助于对项目整体进行规划、分工, 能够有效的配置人力资源和原料, 极大提高工程项目管理的科学性和有效性。本文主要对先进项目管理软件所采用的形式化语言进行解读与分析。

关键词:项目管理,形式化语言,科学管理,解读与分析

参考文献

[1]张哲.工程项目管理的软件综合应用研究[J].信息与电脑 (理论版) , 2013 (02) .

[2]杨建.项目管理软件及Project应用[J].科技视界, 2013 (17) .

网络协议的形式化分析 篇5

从古至今,人们一直都在不断的探索研究,怎样才能建立一个能够在快速在远距离上传输信息的系统。

如果想要实现信息在远距离间传递,不光需要硬件设备,也就是发送和接收信号的设备,还需要建立一整套能够规定信号所代表的意义以及传递接收信号方式的规则、标准或者约定,这个规则就是协议。

1 网络协议的基本要素

一套完整的,能够确保计算机网络可以顺利进行数据通信的网络协议要包括下边的五点基本要素:(1)协议所提供的服务。

(2)对协议运行环境所进行的假设。

(3)用来实现协议的消息词汇。

(4)对该词汇中每个消息的编码。

(5)用来控制消息一致性的过程规则。

实现计算机之间高度自动化数据通信的网络协议,一般都会极其复杂。

借鉴对复杂系统问题分析研究的思想,分层结构对于理解和设计网络协议有着重要的作用。

软件工程中的形式化方法研究综述 篇6

1 形式化方法

1.1 形式化方法

软件工程中的形式化方法就是通过严格的符号系统和数学模型来描述和验证一个目标软件系统的行为和特性, 包括需求规格、设计和实现等[2]。形式化方法所使用的是严格的数学语言, 其语法和语义都是无二义的、精确的。

1.2 主要研究内容

形式化方法的研究主要集中在形式规约 (Formal Specification) 和建立在形式规约基础上的形式验证 (Formal Verification) 两个方面[3]。

形式规约是指通过具有精确语义的形式语言对程序功能进行描述。描述结果将作为程序设计和验证的重要依据。

形式验证是对现有的程序系统进行验证, 检查其是否符合规约的要求。传统的验证方式是通过实验对系统进行查错, 包括模拟 (simulation) 和测试 (testing) [2]。

1.3 形式化方法的分类

根据描述方式, 可将形式化方法归为两类[4]:

(1) 模型描述的形式化方法。通过构造一个数学模型来直接描述系统或程序。

(2) 性质描述的形式化方法。通过对目标软件系统中不同性质的描述来间接描述系统或程序。

根据表达能力, 可将形式化方法大概分为五类[Barroca*1992][5]:

(1) 模型方法——对系统状态和改变系统状态的动作直接给出抽象定义, 并进行显式描述。该方法的缺陷是不能显式地表示并发。

(2) 代数方法——通过定义不同操作的关系, 隐式地描述操作。与模型方法相同, 代数方法也不能显式地表示并发。

(3) 进程代数方法——通过一个显式模型来描述并发过程。将并发性归结为非确定性, 通过交错语义 (interleaving semantics) [6]来表示系统行为。如:CCS, CSP, ACP等。

(4) 逻辑方法——通过描述程序状态规范和时间状态规范的逻辑方法来描述系统特性, 如:CTL, LTL。

(5) 网络模型方法——通过独立描述网络中的每一个节点, 显式地给出系统的并发模型。如:Petri网。

2 软件方法学

2.1 软件危机

60年代后期, 软件系统的规模逐步增大, 程序实现地复杂度也越来越高, 可靠性问题成为越来越多人关注的焦点。由于软件开发生产率不再能满足计算机应用迅速深入的趋势, 软件危机开始爆发。1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议, 第一次讨论软件危机问题, 并正式提出“软件工程”[7]。

2.2 软件方法学

近年来, 国外出现了许多指导软件开发的方法。“软件方法学” (Software Methodology) 以软件方法为研究对象, 用来指导软件设计的原理和原则, 以及基于这些原理和原则的方法和技术。软件方法学是“软件工程”中的一个主要内容。狭义的软件方法学指某种特定的软件设计指导规则和方法体系[8]。软件方法学的主要目的是高效地设计正确的软件。根据性质可分为以下两类:

(1) 形式化方法:形式方法通过精确的数学语言对系统的各类属性和开发过程做出严格的描述和验证, 定义了如一致性、完全性、正确性、规约等概念。无需通过实际运行来证明软件规约[9]是可实现的、建立的系统是可正确实现的、系统具有某些性质等。

(2) 非形式化方法:非形式方法则不考虑系统的严格性, 通常采用文本、图表等模型描述系统。

3 基于形式化方法的软件开发

3.1 形式化方法开发过程

按照软件工程“自顶向下、逐步求精”的原则, 软件生命周期可分为六个阶段:可行性分析、需求分析、体系结构设计、详细设计、编码、测试发布, 形式化方法贯穿软件工程整个生命周期[10]。

(1) 可行性分析:可行性分析是对待开发系统提供一种综合性的分析方法。综合各方面因素论证待开发系统是否可行, 为开发过程提出综合评价和决策依据。由于形式化方法的符号演算系统仍不能完全表达自然语言, 所在在此阶段的应用仍是一项巨大挑战。

(2) 需求分析:需求分析是在软件开发过程的早期阶段, 将用户需求转换为说明文档。一般非形式化的描述可能导致描述的不明确和需求的不一致, 可能导致编程错误, 影响程序的使用和可靠性。形式化方法则要求明确描述用户需求。

(3) 体系结构设计:体系结构设计阶段的根本目的是将用户需求转换为计算机可以实现的目标系统。本阶段侧重描述软件系统的接口、功能和结构。形式化方法对于软件需求描述的优点同样适用于软件设计的描述。由于需求阶段功能描述并不能完全实现, 所以形式化方法在此阶段的应用仍存在问题。使用者可采用半形式化方法来完成此阶段的工作。

(4) 详细设计:详细设计阶段的形式化是以体系结构规范为基础进行精化描述的过程。通过此阶段的形式化描述能够检验需求描述和用户需求是否一致。为使形式化方法更适用于详细设计和精化过程, 可将各种形式的规范联系起来。

(5) 编码:自动代码生成器目前能将一些规模较小软件系统的形式化描述直接转换成可执行程序。在简化软件开发过程的同时既节约了资源又增强了软件的可靠性。

(6) 测试发布:软件开发的最后阶段是测试发布。在软件投入运行前, 需要对软件开发各阶段的文档以及程序源代码进行检查。对于测试来讲, 形式化方法可用于测试用例的自动生成, 保证测试用例的覆盖率。

3.2 综合评价

形式化方法开发软件系统的优势有[4]:

(1) 软件开发的基础是对软件需求的描述。形式化方法要求描述的明确性, 很大程度上保证了需求的一致性, 减少了可能的误解, 为正确实现用户需求提供了更大的可能性。

(2) 形式化验证对形式化描述的需求文档提供明确的逻辑论证, 通过推理验证来保证最终的软件产品能够满足用户需求。

(3) 形式化描述和验证实现了系统的一致性分析和重复分析, 提供了一个几乎不依赖特定分析者的分析过程。

(4) 形式化描述和验证基于计算机和严格符号系统的支持, 实现了开发和验证的自动化, 节约了人力资源并且保证了软件的可靠性。

形式化方法开发软件系统的缺陷:

(1) 形式化方法的使用建立在数学理论的基础上, 限制了大多数人员的学习和使用。

(2) 缺乏一种通用的形式化方法来支持软件生命周期每一阶段。

(3) 不同的数学规范在不同的模型和工程环境中可能不只有一种解释[11], 为形式验证带来困难。

参考文献

[1]张广泉.关于软件形式化方法[J].重庆师范学院学报 (自然科学版) , 2002 (2) .

[2]张玮玮, 陈珊.软件开发中的形式化方法介绍[J].张家口职业技术学院学报, 2005, 18 (1) :54-57.

[3]陈丹.基于形式化方法的软件开发技术[J].软件工程师, 2009:52-53.

[4]罗保山.基于形式化方法的软件开发技术[J].电脑知识与技术, 2008 (23) :1290-1292.

[5]郑红军, 张乃孝.软件开发中的形式化方法[J].计算机科学, 1997, 24 (6) :90-96.

[6]I.Czaja, R.J.V.Glabbeek, U.Goltz.Interleaving Semantics and Action Refinement with Atomic Choice[J].in“Advances in Petri Nets, 1991, 609 (12) :89-107.

[7]朱少民, 软件工程导论[M].北京:清华大学出版社, 2009.

[8]邹晓辉, 邹顺鹏.软件工程学科何以独特——形式化方法的双重路径[J].软件, 2011, 32 (7) .

[9]陈火旺, 罗朝晖, 马庆鸣.程序设计方法学基础[M].长沙:湖南科学技术出版社, 1987.

[10]苗德成, 冯黎波.形式化方法在软件工程中的应用研究[J].河北:河北科技大学学报, 2011, 32 (6) .

CHAM软件连接形式化模型研究 篇7

CHAM形式化模型以代数演算的方式研究通信并发系统, 将进程看作是代标号的变迁系统, 迁移的规则是以句法重新安排的方式来反映状态信息的变化过程。

1. CHAM形式化模型结构。

CHAM形式化模型最初是由Berry和Boudol开发研制的, 它建立在化学隐喻的基础上。CHAM形式化模型中的各个结构都可以利用化学概念来描述, CHAM形式化模型主要包括分子 (Molecules) 、溶液 (Solutions) 以及膜 (Membrane) 结构。

(1) 分子。分子是组成CHAM形式化模型的进本元素, 由进程代数理论可知, 子结构主要是由一些基本常量和操作细节所组成, 分别用m1, m2, …, mn来表示。

(2) 溶液。溶液是多分子的集合体, 可以表示为S=m1, m2, …, mn, 而且有多个溶液组成的一个较大型的溶液还可以表示为S∪S′=m1, m2, …, mn, m1′, m2′, …, mn′, 在CHAM形式化模型中溶液可以定义为一个状态信息。

(3) 膜结构。膜结构是对CHAM形式化模型的各种结构进行封包分层细化, 可以表示为{︱.︱}, 利用膜结构可以将不同溶液进行封包, 此时就可以将被封装的溶液看作是一个单一分子, 即为{︱S=m1, m2, …, mn︱}。而且膜结构还具有一定的选择透过性, 即通过膜上的气孔, 对分子的进入和离开进行选择, 这一过程可以表示为S′=mi{︱m1, m2, …, mn︱}。

2. CHAM形式化模型迁移规律。

分为一般反应和特定反应两大类。一般反应是对所有的CHAM形式化模型描述的软件体系结构都有效, 没有任何限制;特定反应只是针对某一具体的CHAM形式化模型进行描述, 是一种无任何前置条件的基本项重写规则。

二、CHAM软件连接形式化模型的设计与实现

1. CHAM形式化模型的构建元素。包括处理元素、数据元素、连接元素、膜元素四种基本构件元素。

(1) 处理元素。处理元素可以表示为分子结构, 具体是指具有一定功能的逻辑处理对象或者单元, 在进行软件体系结构描述的过程中也可以代表软件的构件单元。CHAM形式化模型的处理元素主要是由接口描述以及状态定义两大部分构成。其中接口描述包括一组说明处理元素与外部环境交互的端口, 而状态定义则是用来描述软件的构件单元的当前状态。

(2) 数据元素。数据元素主要包括进行软件结构描述所使用和变化的信息, 通常, 数据元素用依附在处理元素的红色和蓝色三角形来表示;红色三角形代表从处理元素中输入的数据元素, 而蓝色三角形则代表从处理元素输出的数据元素。

(3) 连接元素。连接元素的主要作用是将体系结构中的各个成分连接在一起。例如, 在不同处理元素之间进出的有效通讯元素就属于连接元素。而且每一个连接元素都具有连接不同处理元素之间的交互条件, 也就是CHAM形式化模型中的反应规则, 一般情况下用圆圈表示连接元素。

(4) 膜元素。膜元素是由一些处理元素和连接元素根据行对应的要求组合而成的, 可以通过膜上的气孔实现处理元素的输出与输入。

2. CHAM形式化模型的实现。

CHAM形式化模型的实现主要应用Java语言, 在NIST/ECMA环境集成的参考模型来构建。建模过程包括指图形视图和文本视图两大部分, 图形视图和文本视图建立在同一数据模型的基础上。先以Shape基类为根节点, 然后派生出Process类、Date类、Membrane类、Por类数据模型。通过面向对象语言的多态性等特征, 就可以将一些例如绘制、移动以积分放缩等相同的操作或者函数归于同一基类中。再根据DRTSADL的语法建立数据模型元素间的树形结构, 通过这种树形结构在方便实现数据模型元素导航的同时也更有利于Java序列化存储。使用CHAM形式化模型的基本建模元素设计软件体系结构图, 并且在构图的同时还可以进行模型语义一致性检查等工作。在设计软件体系结构图功能时, 使用了职责链设计模式, 即在加入其他新建模元素类时, 不会对原先的系统造成任何影响。文本视图建模主要包括程序理解以及信息浏览两大功能, 程序理解部分主要是由软件架构师根据图形建模生成的或者手工编写的CHAM形式化模型的描述并最终生成CHAM形式化模型的层次结构。源文件的浏览显示CHAM形式化模型的文件内容, 包括关键字、操作符等内容。另外, 由于图形视图和文本视图建立在同一数据模型的基础上, 因此更有利于两者间的数据转换。从软件体系结构图生成CHAM形式化模型的文本的过程来分析, 两者之间的数据交换主要是按照CHAM形式化模型的语法结构, 直接从数据模型中抽取文本, 属于一个正向的过程。而从CHAM形式化模型的文本产生软件体系结构图则属于一个逆向过程, 因为文本视图所映射的数据模型知识和图形视图所映射的数据模型子集不包含图形视图的布局信息, 需要通过软件结构配置语义生成对应的布局信息, 并且要确保布局的合理性以及有效性。

三、结论

形式化的软件开发 篇8

关键词:形式概念分析,概念格,二值背景,软件质量

概念格理论, 也称形式概念分析 (Formal Concept Analysis) , 由Wille R于1982年提出, 是一种有效的知识表示与知识发现的工具, 已被成功用于决策分析、数据挖掘等领域, 概念格结构模型是该理论的核心数据结构。它是根据形式背景 (称为形式背景) 中属性与对象之间的二元关系建立的一种概念层次结构, 生动而又简洁的体现出了概念之间的特化和泛化的关系, 概念格中的每一个节点表示的是一个形式概念。概念是由两部分组成的:内涵表示的是概念的属性, 也就是这个概念所有的对象共同具有的属性;外延则表示的是概念所覆盖的对象。哈斯图则非常形式化的体现了这些概念之间的关系。

概念格理论在各种形式背景的知识表示和知识发现中发挥着独特优势, 基于概念格理论所创造的系统具有和其他数据挖掘系统无法比拟的性能。概念格已经被广泛应用于机器学习、信息检索、知识工程、软件工程、语义Web、数据挖掘等领域。本文描述形式概念分析在软件质量评价领域的应用。

1背景知识

形式概念分析是基于数学的序理论的, 特别是基于关于完全格的理论。概念格的理论是建立在格论以及图论等相关理论的基础上的, 本节介绍概念格的基本理论。首先给出形式背景的定义。

2形式概念分析的应用

本节叙述形式概念分析在软件测试领域的应用。

概念格的建立是概念格应用的基础, 而形式背景的构造是概念格建立的基础, 下面结合软件测试的应用构建形式背景。

软件分为文档和代码, 软件测试是对软件的文档和代码正确性进行考核, 按照测试流程分为文档审查、静态分析、代码审查、单元测试、部件测试、配置项测试和系统测试。软件质量评价的一项指标是千行缺陷率, 选择一个基准的缺陷率 (如取2.39, 根据软件重要度级别可以自行调整该值) 。选择对象集为所有待评价的软件, 属性为各个测试阶段的千行代码缺陷率, 缺陷率大于基准缺陷率则表示该对象具备该属性, 按照此规则建立形式背景。

根据生成的形式背景, 按照形式概念分析规则生成对应的哈斯图, 再提取出概念, 根据生成的概念格可以对软件质量进行评价。

对应的哈斯图中越往底层表明在软件测试各个不同的阶段发现的问题越多, 越往上层表明软件的质量越高, 同一个概念中的对象的软件的缺陷率是接近的。当对软件测试的某一个阶段的缺陷比较关注时, 可以根据概念格中的关系获取对应的某一个概念。此方法对于海量的软件质量对比评价中具备很大的优势。

3举例

建立形式背景如表1。

表1中:对象集为{1, 2, 3, 4}分别表示4个不同的软件, 属性集为{a, b, c, d, e}分别表示软件测试流程中不同的阶段, 对于每一个软件当在不同的阶段发现的问题缺陷率大于等于基准缺陷率时则表示该对象具备该属性, 如:软件1在a阶段千行代码缺陷率大于等于2.39 (可根据需要调整缺陷率) 则对象1具备属性a, 对应的形式背景中值取1, 否则取0。

根据表1中的形式背景可以生成对应的哈斯图。

哈斯图中对应的每一个节点表示的就是一个概念, 表1对应的概念如图2。

通过概念格可以得出结论, 对象集{1}具备a, b, d, e四个属性表明, 软件1的的缺陷率在软件测试的a, b, d, e各个阶段均大于等于基准缺陷率, 与其他软件对象比较a的质量评价最低。当只关注d阶段的软件测试结果时, 通过概念格可以迅速找到对象{1, 3}。

4结语

软件测试是为了发现错误而执行程序的过程。目的是为了在投入生产性运行之前, 尽可能多地发现并排除软件中潜藏的错误, 从而提高软件的质量, 本文提出了通过概念格工具来对多个软件的测试结果进行建格, 从而提供了一个软件质量评价的方法。对比分析大量的软件测试结果, 为同类的软件的再次开发问题定位提供参考。千行代码缺陷率是此方法选择的一个评价标准, 文中简化该指标为二值背景, 实际运用中该值为多值, 产生的也应为多值背景, 对应多值背景的研究也是未来值得思考的问题。

参考文献

[1]Wille R.Restructuring Lattice Theory:An approach based on hierarchies of concepts[A].Rivall.Ordered Sets[C].Dordrecht:Reidel, 1982.Pages:445-470.

[2]Ganter B, Wille R.Formal Concept Analysis:Mathematical Foundations.Berlin:Springer-Verlag, 1999.Pages:25-36.

[3]Abderrahim E, Yassine E.Formal Concept Analysis for Information Retieval[J].International Journal of Computer Science and Information Security (IJCSIS) , 2010 Vol.7 (2) .Pages:119-125.

[4]张文修, 魏玲, 祁建军.概念格的属性约简理论与方法[M].中国科学E辑:信息科学, 2005, 35 (6) :Pages:628-639.

[5]M.J.Zaki, C-T.Ho.Scalable Algorithms for Association Mining[C].IEEE Trans Knowledge Data Eng.2000, 12 (2) .Pages:432-440.

[6]Tho QT, Hui SC, Fong ACM, et al.Automatic fuzzy ontology generation for semantic Web.Knowledge and Data Engineering, IEEE Transactions on, 2006, 18 (6) .Pages:842-856.

[7]蒋平, 任胜兵, 林娟.形式概念分析在软件工程中的应用[J].计算机技术与发展.2008.4, 18 (4) .Pages 128, 129, 213.

[9]方世昌.离散数学.第二版[M].西安电子科技大学出版社:陕西省新华书店, 1996.Pages:214-226.

形式化的软件开发 篇9

1 软件工程化的基本形式

软件工程化是在理论指导为基础, 实现技术创新发展的实用化。通过有序开发将过程更加的具体。这是工业化生产模式工具化形成的重要措施, 也是软件大中型开发的模块化发展趋势, 促进了软件工程产品标准化进程。

1.1 实用性

软件工程化实用性发展将更好地利用软件工程原理, 创新方法。强化对实用效果的理解解程度。软件工程化实用性开展将是抽象的原理理更加的明确, 使软件开发人员能够逐渐适应软软件工程化发展要求, 提升软件质量, 在实际工工程建设中能够解决更多的问题。软件工程化实实用性对人员综合素质有着较高的要求, 进一步量化软件开发人员数量。建立开发小组, 制定具体的衡量评价标准, 结合实际情况促进实用性的开展。

1.2 过程性

软件在开发过程中需要对建立效果、控制程度等方面进行系统的评估, 这是改进软件的重要过程。能够使软件工程化过程更加的具体, 形成有效的技术性管理程序文件。软件开发过程需要明确工程化目的, 关于如何开展软件工程化进程进行活动控制, 详细做好记录工作, 软件生存周期需要根据标准化程序制定。软件工程化过程中若干活动要在具体任务下开展, 项目在实施中要适当进行扩充, 使软件工程化过程能够更加具有操作性。

1.3 工具化

在完善软件工程化的过程中利用工具进行技术交流, 对软件进行充分的维护, 使分析计算的结果更加具有科学性。自动生成程序文档, 在软件模型建立的过程中能够使信息更加的明确, 实现自动维护, 软件自动化或者半自动化发展在复杂程度较高的大中型软件工程应用较为普遍, 效果更加的明显。分析设计工具是在软件设计基础上对自动生成的软件进行说明复制。软件开发人员在进行自动维护的时候文件的一致性将很难得到有效的保证, 这样就会影响到软件工程化的效果, 与新软件的开发。

1.4 建立模块

建立模块能够实现软件工程化过程中设计、测试、管理、创新等方面的量化效果, 极大的促进软件工程化开发的管理, 保证软件运行效果的可靠性。软件工程化过程中建立模块能够保证软件体系结构的稳定性, 同时也是模块化构件发展创新的重要表现, 符合软件工程化发展要求。

1.5 标准性

标准性是软件工程化的效果得到提升的关键。只有保证软件工程化的标准性才能够开发出具有操作性的实用软件。软件的可控性以及规范性才能够得到提升, 程序软件在设计的时候要保证软件工程化效果, 就要使工作人员能够更加容易理解软件应用情况。软件开发单位制定的标准是软件工程化建设的重点, 根据组织发展需求, 制定实施具有现代特征的标准体系, 在促进软件工程化发展进程的同时, 使企业生产更加的快捷。软件工程标准型能够明确开发规定, 突出软件的实用性效果。根据标准体系对原有整体功能作用进行有机整合, 按照技术标准提供的工作需求, 使每一个体系都能够按照标准进行工程化发展。

实用性、过程性、工具化、建立模块以及标准性这五种基本形式在内在上具有相互联系的特点, 根据软件工程化发展程度调整应用效果, 使软件工程化建设更加具有效率。

2 软件工程化关键技术

软件工程化建设总体规划要根据调研的实际情况进行制定, 保证软件工程化建设的总体目标, 在阶段性目标实施的过程中对工作方法进行创新, 明确实施过程中将会面临的风险, 并且在完成之后就要对成果进行验收。总体规划是在软件工程化建设标准下进行的, 我国软件工程化开发情况是现阶段阶段性目标实行的重点, 也是各项工作开展的关键。

(1) 领域工程技术领域工程是为一组相似或相近系统的应用工程建立基本能力和必备基拙的过程, 其产品有领域模型、构架、领域特定的语言、代码构件等。领域工程技术包括领城分析、领域设计和领域实现等实用技术。

(2) 软件过程技术软件过程是软件生存期内为达到一定目标而必须实施的一系列相关过程, 对软件质量和开发效率等有着重要影响.软件过程技术包括过程描述语言、过程定义、过程实施、过程度量、过程改进等技术。

(3) 工程环境技术工程环境是软件过程中集成使用的一系列辅助工具, 有利于帮助软件人员控制软件过程中各项活动的复杂性, 提高工作效率和软件质量, 工程环境技术包括环境集成、配笠和使用等技术。

(4) 软件构件技术构件是指应用系统中可以明确标识的构成成分, 包括软件需求规约、软件的架构、文档、源代码、测试计划、测试案例和数据等。软件构件技术包括构件的获取、构件模型、描述语言、分类与检索、复合组装等技术。

(5) 软件标准化技术软件标准是对软件生存周期中所有各个阶段的工作 (包括技术性和管理性工作) 作出合理的、统一的规定, 有利于提高软件的管理水平、软件人员之间的通信效率和准确率, 软件标准化技术包括制定、实施和改进一系列标准 (特别是企业标准) 的技术。

3 软件工程化的要点

软件工程化开发是对计算机进行的维护工程, 在开发过程汇总要根据软件工程化开发体系结构进行方法的确认。保证软件工程化开发质量, 是软件开发过程中整体质量提升的要点, 也是工具方法有效结合的实践。管理技术是软件工程化实施开发的重要标准与指导。工具实现自动半自动发展将提升工程效率, 保证软件工程化理论能够应用到软件组织中, 并且对软件工程化开发成果进行总体分析。软件工程化组织开发过程中需要符合标准规则, 这样将保证软件开发质量, 同时能够有效的缩短工程软件开发周期。软件工程在开发的过程中需要对工程化建设指标进行量化分析, 同时能够对软件工程化过程中涉及到的方法与工具进行升。软件工程化整体规划在实施阶段是技术的核心与基础, 制定科学的软件开发规划, 保证软件开发规划能够顺利的实施, 是软件工程化建设发展的重点。软件工程化在开发的过程中需要不断处理存在的问题, 同时要保证各阶段软件开发计划制定的目标, 并且在活动开展的过程中能够进行有计划的实施, 针对软件工程化发展需求对产生的结果进行有计划的检查, 明确其中存在的主要软件工程化形式。软件工程化成功建设能够充分的吸收开发经验, 对不能够解决的问题进行循环解决, 按照计划不断强化循环效果, 逐步的提升软件工程化水平。软件工程化开发的过程中在明确自身实际情况的同时还要充分的借鉴先进的国外经验, 提升软件工程化辅助性效果。软件工程化基本形式和关键技术水平的提升能够提升整体行业的质量。

4 结束语

对软件工程化的发展要不断的进行研究, 随着实践工作持续深入, 能够对软件工程化发展产生全面的认识, 明确软件工程化的基本形式和关键技术。软件工程化在科学技术发展的带动下, 与项目工程实际相联系, 保证软件工程化应用的有效性。

摘要:软件工程化发展是现代科技发展的重要体现。社会信息化程度的不断加深, 对软件质量需要也在进一步的加大。软件在开发与运用阶段会遇到众多的问题, 为了能够有效的解决软件质量问题引发的危机, 需要持续强化软件工程化建设发展。明确软件工程化的基本形式和关键技术将会促进软件行业的迅速发展。

关键词:软件工程化,软件标准,工程环境

参考文献

[1]张桂林, 张晓梅, 丁峰.软件工程化的基本形式和关键技术[J].计算机工程, 2012 (10) :20.

[2]毛新军, 常志明, 王戟, 王怀民.面向Agent的软件工程:现状与挑战[J].计算机研究与发展, 2012 (10) :30.

[3]何雪慧.如何以软件测试推动软件工程化[J].科技经济市场, 2013 (03:15.

形式化的软件开发 篇10

1 城市绿地中的平面形式

1.1 点型绿地

点型绿地指城市中的绿地集中区域, 例如城市公园、湿地公园以及一些小型的城市街心公园等, 其雨水利用形式采用收集回用和渗入地下相结合形式。一般点型绿地较小, 其职能为在城市雨洪管理中可以收集终端雨水径流。在暴雨来临时, 整个点型绿地区域范围是大量的雨水储存设施。对于任何降雨程度的雨水产生的径流, 点型绿地可以对其进行全部储存, 形成雨水径流的最终汇集区, 是城市雨洪管理的终端储水设施。但是, 如果当雨水量超过城市中的点型绿地储水能力时, 就需要通过其他线型绿地将城市中的水排向城郊, 排向城市周边的农田和林业用地中。

1.2 线型绿地

线型绿地指在空间上有一定长度的、呈线型的城市绿地, 包括带状公园、道路绿地以及绿道等[3], 其雨水利用形式采用渗入地下和调控排放相结合形式。这类绿地一般是狭长型的区域来进行生态雨水基础设施的规划, 多设计植草沟、渗透渠或回灌井等增渗设施等线状传输型雨水管理系统, 引入该层进行加快渗透。线型绿地主要是处理小到中雨的雨水量和控制暴雨初期及中期对径流的产生和传输。其方式就需要雨水管理系统与植物和土壤的配合才能达到理想效果, 最终控制径流流速和减缓径流峰值, 并且过滤径流中的块体物, 加强渗透力度[3]。

1.3 面型绿地

面型绿地一般是围合成的城市社区绿地区域, 是绿地系统中的附属绿地, 也是最小和最分散的, 在区域范围内全部都是小块散落的零星绿地, 其雨水利用形式采用收集回用和渗入地下相结合形式。点型绿地与面型绿地的主要区别是, 点型绿地的所有面积都可以收集雨水, 而面型绿地只有少数的绿地面积可以收集雨水。面型绿地的特点是在范围大的区域, 区域内的绿地规模小、尺度小、位置分散, 正是因为这样的特点, 可以对其在源头进行雨水收集。面型绿地中的绿地主要是对其中的建筑、道路和广场等灰色基础设施等不透水面产生的径流, 进行源头收集, 可以规划设计小型的雨水花园、下洼绿地等设施收集雨水和促进雨水下渗[3]。面型绿地的功能具有局限性, 只能收集其区域范围内的雨水径流, 主要服务于降雨初期和小型降雨。

2 城市绿地中的竖向形式

2.1 平地形绿地

从竖向城市绿地类型来说, 平地形绿地是指绿地的基面应在视觉上与水平面相对平行, 坡度变化不明显, 其雨水利用形式主要采用渗入地下的形式。平地形主要是以小块分散的, 主要靠地形的坡度决定排水方向, 城市中的地形坡度变化很小, 基本没有什么特殊的地形。所以遇到大的降水就容易积水, 造成洪涝。

但城市中平地形绿地可以对雨洪就地下渗, 也可以由小型雨水收集设施进行储存, 但是它的承载能力有限。因此, 为了加强渗透性, 这种类型的绿地应该对其土壤和表面的植物进行改变, 来增加雨水径流的滞蓄和入渗效果;也可以采取改变地形, 通过增加微地形来控制排水方向, 影响排水的方向, 增加汇水点, 从而减少径流量, 减缓径流流速, 达到防洪防涝的作用。

2.2 凹地形

凹地形绿地是指低于周围地面适当深度的绿地。城市绿地中一般是人工打造或者当2块凸地形绿地并排在一起时形成的, 是一种生态的渗透型设施, 其雨水利用形式主要采用渗入地下和调控排放相结合的形式。当暴雨来临时, 这样的蓄水池为凹地形, 在城市雨洪管理中可以收集终端雨水径流, 储存并净化雨水。凹地形一般可以形成洼地、池塘、景观水体或调蓄池等调蓄设施、流量控制井和溢流堰等控制设施, 并按照应控制的流量排放到下游, 对雨水进行储存和净化。

2.3 凸地形

凸地形绿地是一种具有动态感和行进感的地形类型, 一般与建筑、植物、水体等其他景观要素营造空间, 其雨水利用形式主要采用调控排放的形式。由于坡度的存在, 不同的凸地形对排水方向有不同的影响。平原城市中, 凸地形绿地多数是人工堆砌而成的, 因此它可以根据排水的需要对坡度进行灵活调整, 作用主要是控制排水的方向。凸地形绿地可以控制周围地区的水势, 当水量超过它的负荷, 雨水引流到附近的凹地形中进行储存处理。因此, 凸地形绿地一般是和凹地形绿地相结合, 才能起到作用。

2.4 坡地

坡地绿地指具有一定坡度的绿地, 其高差比凸地形绿地和凹地形绿地小, 并且连接着凸地形与凹地形, 雨水利用形式主要采用收集回用和调控排放相结合的形式。在暴雨来临时, 一般作为可以收集中段雨水径流, 与洼地、池塘、景观水体或调蓄池相结合。坡地绿地多数是自然形成的。因此它可以根据排水的需要对坡度进行灵活调整, 坡度的设置决定了雨水渗透速率与地表径流速率, 作用主要是控制排水的方向。

3 结语

无论是哪种类型的城市绿地都有一定的局限性, 一般我们所遇到的场地都是复合型的, 在城市绿地设计实践中并不是单独存在的, 是相互连接、相互制约的。各种绿地类型的结合需要与城市的整体布局和规划目标相匹配, 在满足总体规划的前提下将不同的绿地类型按照一定的布局在城市中布置, 如对地形进行改造, 通过增加微地形来控制排水方向, 增加汇水点来减少径流量和减缓径流流速, 达到较好防洪防涝的作用。绝大多数城市绿地都是几种类型的相互组合同时存在的, 因此, 只有不同类型的绿地共同配合, 才能起到城市范围的雨洪管理作用。比如点型绿地、面型绿地也需要线型绿地的连接, 凸地形绿地、凹地形绿地是需要坡地绿地连接的, 往往会组成一个组合。

摘要:低影响开发是一种新兴的解决雨洪问题的管理体系。本文从城市绿地中不同平面类型形态和竖向类型形态的分类, 对每种形态的绿地区域中的雨水利用形式以及做法进行了解析, 这对城市绿地中雨水利用方式有一定的借鉴。

关键词:低影响开发,雨水利用,城市绿地形态

参考文献

[1]赵华, 张峰, 林文卓.浅谈低影响开发在我国的发展现状及其局限性[M].建设科技, 2013 (16) :54-56

[2]张书涵, 陈建刚, 丁跃元.城市雨水利用的基本形式与效益分析[J].水利学报, 2007, 10:399-403

[3]宋珊珊.基于低影响开发的场地规划与雨水花园设计研究[D].北京林业大学, 2015

[4]张书涵, 赵飞, 陈建刚.国家体育馆城市雨水利用技术[J].建设科技, 2008, 7:60-61

[5]周聪慧, 金云峰“.精细化”理念下的城市绿地复合型分类框架构建与规划应用[J].城市发展研究21卷, 2014 (11) :118-124

[6]丁年, 胡爱兵, 任心欣.深圳市低冲击开发模式应用现状及展望[J].给水排水, 2012, 11:141-144

[7]刘士菊.不同绿地系统分类方法下的城市绿地景观格局研究—以武汉市为例[D].华中农业大学, 2006

上一篇:教师党支部活动下一篇:选择性加强结构