基于控制用例的软件可信性需求提取方法

文档序号:6426563阅读:155来源:国知局
专利名称:基于控制用例的软件可信性需求提取方法
技术领域
本发明涉及一种提取软件系统可信性需求的方法,尤其涉及一种基于控制用例的软件可信性需求提取方法。
背景技术
软件系统越来越多的应用于许多社会关键领域,同时软件系统及其运行环境也变得越来越复杂。一方面,由于软件的复杂性,保证软件本身的正确性变得越来越困难,软件系统在部署之后可能存在着许多内在的缺陷;另一方面,开放动态的运行环境也给软件系统带来越来越多的外在威胁,比如环境的变换、恶意的攻击、用户的操作错误。不管是内在的缺陷还是外在的威胁,它们都将影响软件系统并使得其行为偏离用户的期望,从而可能导致软件系统给环境带来许多非用户期望的影响,比如数据泄漏、人员伤亡。在这种情况下,软件系统的可信性成为人们当前日益关注的问题。开发一个可信的软件系统,首先需要捕获软件系统的需求。软件系统的需求将在系统开发人员和用户之间建立起一个沟通的桥梁。一般来说,软件系统的需求分析首先需要捕获用户期望软件系统提供什么样的服务,也就软件系统应该具有什么样的功能,这部分需求为软件系统的功能性需求,其决定软件系统的行为以及相应的性能。然而,仅仅依据功能性需求构建的软件系统往往是不可信的。这是因为软件系统所面临的外在威胁(系统外部发生的事件,比如恶意攻击)和内在威胁(系统内部发生的事件,比如某个组件的失效)都有可能影响软件系统,使得软件系统所提供的服务不可靠并给环境带来用户不期望的后果,从而影响用户对软件系统的信任,降低软件系统的可信性。因此,在功能性需求之外,构建一个可信的软件系统还需要在需求分析过程中捕获软件系统应该怎么做来确保其所提供服务的可靠性,避免给环境带来用户不期望的后果,从而提高自身的可信性。该部分的需求构成了软件系统的可信性需求。从某种意义上而言,用户需要软件系统实现的目标驱动了软件系统的功能性需求,而软件系统所可能面临的内在或者外在威胁驱动了软件系统的可信性需求。因此,对功能性需求的捕获需要从用户的角度出发,去描述用户期望的软件系统的行为以及相应的性能,而对可信性需求的捕获则需要从系统本身的角度出发,去描述当系统面临或者感知到一个或者多个威胁时它应该怎么做。当前,用例技术已被广泛应用于软件系统的需求分析。用例从用户的角度出发,描述用户期望的软件系统的行为。因此它用来分析软件系统的功能需求是有效的。但是,由于软件系统的可信性需求本质上不是由用户的期望而是由软件系统可能遭遇到的内在或者外在的威胁所驱动的,可信性需求所应描述的某些软件的行为可能对用户来说也是不可见的,因此用例技术并不能有效的用来分析软件系统的可信性需求及提高软件系统的可信性
发明内容
本发明的目的在于提供一种基于控制用例的软件可信性需求提取方法,以弥补用例技术的不足。为了实现本发明的目的,本发明提供了基于控制用例的软件可信性需求提取方法。以用例模型所表示的软件系统功能性需求为基础,该方法使用控制用例来表示软件系统的可信性需求,其需求提取的过程包括以下步骤识别威胁和系统行为偏差;评估风险; 基于控制用例确定应对措施;其中,所述控制用例包括前馈控制用例和反馈控制用例;所述前馈控制用例描述软件系统在面临一个或者多个外在的威胁时软件系统应该采取的应对措施;所述反馈控制用例描述软件系统在面临或者感知一个软件系统本身的行为偏差时应采取的应对措施。为了弥补由于不能识别所有威胁所带来的影响,本发明所提出的控制用例包括前馈控制用例和反馈控制两种。前馈控制用例描述软件系统在面临或者感知到一个或者多个威胁时系统应该采取的应对措施,而反馈控制则描述软件系统在感知到本身的行为偏差时系统应该采取的应对措施。反馈控制用例描述了软件系统应该采取的容错性措施,以弥补 在现实中由于不能识别所有威胁所带来的问题。本发明通过控制用例来描述软件系统在功能性行为之外应该采取的应对措施,借此可以提高软件系统所提供服务的可靠性,降低软件系统可能给环境带来非期望结果的可能性,从而提高软件系统的可信性。


图1为一可信软件系统的前馈-反馈控制模型示意图;图2为本发明优选实施例的流程示意图;图3为根据图2所示优选实施例所建立的在线购物系统的用例-控制用例模型的示意图;图4列出了图3用来可视化表示控制用例、控制用例与用例之间关系的图标元素;图5为本发明优选实施例中识别威胁以及系统行为偏差的流程示意图。
具体实施例方式下面结合附图和具体实施方式
对本发明做进一步详细说明。图1为一可信软件系统的前馈-反馈控制模型示意图。在该可信的软件系统1 (下文简称为为软件系统ι或系统1)中,被控对象是可信的软件系统1的核心系统4,核心系统4从用户的角度出发提供用户期望的所有服务,它展现软件系统的行为和性能。前馈控制器2实现一组主动的策略来应对已经识别的可能发生的威胁,而反馈控制器3则实现一组容错策略来应对系统行为可能发生的偏差。可信的软件系统1通过前馈控制器2和反馈控制器3分别提供的前馈和反馈控制作用,保证其所提供服务的可靠性,进而实现并提高软件系统的可信性。基于图1所示的前馈-反馈的控制模型,图2示意了本发明所提出的可信软件系统需求获取的流程,图3则为本发明的一个具体应用,为了详细的描述本发明,下面将同时结合图2和图3对本本发明进行详细描述,本发明包括以下步骤
步骤Sl 基于用例提取 软件系统的功能性需求。从用户的角度出发,功能性需求捕获用户所期望的服务,以及为实现该软件系统1应具有的行为和相应的性能,它塑造了软件的核心系统4。在该步骤中,用例用来表示软件系统的功能性需求。由于基于用例获取软件系统的功能性需求已为公知技术,在此不再赘述。步骤S2 以用例所表示的功能性需求为基础,基于控制用例提取软件系统的可信性需求。从系统本身的角度出发,可信性需求捕获软件系统1可能面临的威胁、软件系统1 本身行为可能出现的偏差,以及当软件系统1感知到这些威胁或者偏差时,其应该采取的应对措施,它塑造了控制模型中的前馈控制器2和反馈控制器3。在步骤S2中,两种控制用例(前馈控制用例和反馈控制用例)用来表示软件系统的可信性需求。前馈控制用例描述软件系统在面临或者感知到一个或者多个威胁时系统应该采取的行为,而反馈控制描述软件系统在感知到本身的行为偏差时系统应该采取的行为。这里行为偏差可以是用例所描述的软件行为的偏差、也可以是控制用例所描述的软件行为的偏差。图4列出了用来可视化表示控制用例、控制用例与用例之间关系的图标元素。 图3为应用这些图标所建立的在线购物系统的用例_控制用例模型的一个片段。在图3所示的在线购物系统10中,用例包括用户5发起的行为登录1_1和查询商品1_2 ;前馈控制用例包括多重身份验证1_5、服务请求规模监控1_3 ;反馈控制用例包括响应时间监控1_4 ;外在威胁包括暴力破解密码6_1、拒绝服务攻击6_2 ;系统本身的行为偏差包括响应时间延迟7。在图3所示的在线购物系统10的用例_控制用例示意图中,前馈控制用例1_3、 1_4和反馈控制用例1_5都处于在线购物系统10边界的内部。由于在线购物系统10对自身行为偏差的识别往往处于系统内部,因此不同于外在威胁,在线购物系统10的行为偏差处于系统边界的内部。从控制用例到用例的《control》关系表示控制用例所描述的系统应对措施将作用于控制用例所指向的用例之上,以应对威胁对用例的影响,或者应对用例本身产生的行为偏差。一个控制用例可以指向多个用例。一个控制用例还可以通过《control》关系作用于另一个控制用例。当一个前馈控制用例通过《control》关系作用于一个前馈控制用例或者一个反馈控制用例时,《control》关系表示控制用例所定义的应对措施将叠加于其作用对象所定义的应对措施之上,以应对潜在的威胁对其作用对象所定义的应对措施的影响。当一个反馈控制用例通过《control》关系作用于一个前馈控制用例或者一个反馈控制用例时,《control》关系表示控制用例所定义的措施将应对其作用对象所定义的应对措施可能出现的行为偏差。每一个前馈控制用例将至少和一个外在威胁通过《trigger》关系联系起来,以表明外在威胁触发了前馈控制用例所描述的系统的响应性行为措施,或者前馈控制用例描述的措施是用来应对其所联系的外在威胁。每一个反馈控制用例将和一个系统的行为偏差通过《trigger》联系起来,以表明系统的行为偏差触发了反馈控制用例所描述的系统的响应性行为。每一个系统的行为偏差将通过《produce》关系和产生该偏差的用例或者控制用例联系起来。一个用例可以和多个系统的行为偏差联系起来。下述两表依次为表1和表2,二者分别给出了在步骤2中可以用来记录前馈和反馈控制用例的文本模板。
权利要求
1.一种基于控制用例的软件可信性需求提取方法,其特征在于,包括以下步骤 识别威胁和系统行为偏差;评估风险;基于控制用例确定应对措施;判断对策引入是否会导致新的威胁或系统行为偏差的出现,当出现新的威胁或系统行为偏差,再次执行识别威胁和系统行为偏差的步骤;其中,所述控制用例包括前馈控制用例和反馈控制用例;所述前馈控制用例描述软件系统在面临一个或者多个外在的威胁时软件系统应该采取的应对措施;所述反馈控制用例描述软件系统在面临或者感知一个软件系统本身的行为偏差时应采取的应对措施。
2.根据权利要求1所述的基于控制用例的软件可信性需求提取方法,其特征在于,在识别威胁和系统行为偏差步骤中,利用偏差分析法HAZOP来识别威胁和系统行为偏差。
全文摘要
本发明提供一种基于控制用例的软件可信性需求提取方法。以用例所表示的软件系统功能性需求为基础,该方法使用控制用例来表示软件系统的可信性需求,其包括以下步骤识别威胁和系统行为偏差;评估风险;确定应对措施。本发明指导需求分析人员在软件系统需求提取阶段有效的捕获和组织软件系统的可信性需求,以此来降低软件系统部署之后可能给环境带来非期望结果的可能性,从而提高软件系统的可信性。
文档编号G06F21/22GK102253886SQ20111016457
公开日2011年11月23日 申请日期2011年6月17日 优先权日2011年6月17日
发明者刘春 , 张伟, 王越, 金芝 申请人:北京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1