软件工程课件 09关键系统规格说明_第1页
软件工程课件 09关键系统规格说明_第2页
软件工程课件 09关键系统规格说明_第3页
软件工程课件 09关键系统规格说明_第4页
软件工程课件 09关键系统规格说明_第5页
已阅读5页,还剩46页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关键系统规格说明关键系统规格说明Critical Systems Specification关键系统规格说明关键系统规格说明l开发一个系统可获性,可靠性,安全性和保密性的规格说明的过程和技术(Processes and techniques for developing a specification for system availability, reliability, safety and security)Objectivesl说明如何通过分析关键系统所面临的风险来识别出系统的可信度需求。l说明如何从系统的风险分析中获得安全需求。l解释保密性需求的来历。l描述用作可靠性规格说明的测量

2、尺度。Topics coveredl基于风险驱动的规格说明l安全性规格说明l保密性规格说明l软件可靠性规格说明可信度需求可信度需求l用功能需求来定义差错检查、恢复工具和对系统失效的防范措施。l用非功能需求来定义系统所需要的可获性和可靠性。l用排它需求来定义千万不能发生的状态和条件。基于风险驱动的规格说明基于风险驱动的规格说明l关键系统的规格说明应该是由风险驱动的( risk-driven )。l该方法已经在安全和保密性至关重要的系统上广泛使用。l规格说明过程的目标应该在于了解系统所面临的风险以及说明降低这些风险的需要做的事情。风险分析的步骤风险分析的步骤l风险识别(Risk identific

3、ation)l识别出可能发生的潜在风险。l风险分析和分类(Risk analysis and classification)l评估每个风险的严重程度l风险分解(Risk decomposition)l找出风险的潜在根源l降低风险评估(Risk reduction assessment)l说明在系统设计阶段如何消除和降低每一个风险。基于风险的规格说明基于风险的规格说明风险识别风险识别l识别出关键系统所面临的风险。l在安全性关键的系统中,风险就是那些能够导致意外的危险。l在保密性关键的系统中,风险就是那些对系统的潜在攻击。l在风险识别中,需要识别出风险的类型及风险在这些分类中的地位l服务失效;l电

4、气上的风险;l胰岛素泵的风险胰岛素泵的风险l胰岛素过量(服务失效)。l胰岛素剂量不足(服务失效)。l由于电池耗尽引起的电源故障(电气的)l与其它医疗设备的电气接口(电气的)。l传感器和致动器的接触很差(物理的)。l在体内的机器部件脱落(物理的)。l由于引入机器而导致感染(生物的)。l对原料或胰岛素的过敏反应(生物的)。风险分析和分类风险分析和分类l包含对发生一个风险的可能性以及对将要发生的一个意外或事故的潜在后果的理解l把风险分类为:l不可接受的(Intolerable)。必须不能让它发生或不能让它引起一个意外。l在实际许可下尽可能低的(ALARP)。在给定成本和进度的限制下,必须使风险的可能

5、性降到最小。l可以接受的(Acceptable)。风险的后果是可以接受的,并且不需要付出额外的成本来降低危险的可能性。风险级别风险级别风险的社会接受度风险的社会接受度l一个风险的接受度是被社会和政治的因素所左右的。l在大多数社会而言,随着时间的推移,上面的三角形区域中的两条边界会逐渐向上靠,也就是说,社会越来越不愿意接收风险l例如,虽说清除污染的成本可能会小于预防成本,但这可能不为社会所接受。l风险评估是主观的l风险被认定为类似于“大概的”,“可能的”等等。这取决于由谁来进行评估。风险评估风险评估l评估风险的可能性和严重程度。l通常不可能很精确,因此用一些相对值表达,例如“不太可能的”、“很少

6、的”、“很高的”等等。l目标是排除那些最有可能发生的或者是后果严重的风险。胰岛素泵的风险评估胰岛素泵的风险评估Identified hazardHazardprobabilityHazardseverityEstimatedriskAcceptability1. Insulin overdoseMediumHighHighIntolerable2. Insulin underdoseMediumLowLowAcceptable3. Power failureHighLowLowAcceptable4. Machine incorrectly fittedHighHighHighIntolera

7、ble5. Machine breaks in patientLowHighMediumALARP6. Machine causes infectionMediumMediumMediumALARP7. Electrical interferenceLowHighMediumALARP8. Allergic reactionLowLowLowAcceptable风险分解(风险分解(decomposition)l在一个特定的系统里,找出风险的主要原因(root causes)l技术大多来源于安全性关键的系统,并可以是:l归纳法(Inductive),自下而上的技术。从提出的一个系统失效开始,评估

8、由该失效可能导致的危险。l演绎法(Deductive),自上而下的技术。以一个危险为起点,推断出可能引起它原因是什么。失误失误-树(树(Fault-tree)分析)分析l一种自上而下的演绎法技术。l把风险或危险放在树的根上,再找出可以导致该危险的系统状态。l在合适的地方加入and 或 or条件。 l目标应该是使引起系统失效的单一原因(single causes)的数量降至最低。胰岛素泵的失误胰岛素泵的失误-树树降低风险的评估降低风险的评估l这个过程的目标是识别出可信度需求,即说明应该如何管理风险以及确保不会发生意外和事故。l降低风险的策略(strategies)l风险规避(Risk avoid

9、ance);l风险检测与排除(Risk detection and removal);l危害限制(Damage limitation)。策略应用(策略应用(Strategy use)l通常在关键系统上要综合使用降低风险的策略。l在一个化工厂的控制系统中,它含有检测和校正反应器过压的传感器。l然而,它也含有一个单独的保护系统,以便在检测到危险高压后打开某个安全阀(relief valve)。胰岛素泵的软件风险胰岛素泵的软件风险l算术误差(Arithmetic error)l一个计算导致一个变量值上溢(overflow)和下溢(underflow);l可能包含一个对每类算术误差的例外句柄(exce

10、ption handler)。l算法误差(Algorithmic error)l把将要分发的剂量与前次剂量或与安全最小剂量进行比较。如果剂量太高则要降低它。胰岛素泵的安全需求胰岛素泵的安全需求lSR1:每次注射剂量不能超过系统用户的指定最大量。lSR2:每天注射的累计剂量不能超过系统用户的指定最大量。lSR3:系统应该含有一个硬件诊断设施,每小时至少执行4次。lSR4:系统应该含有一个可以针对所有已经识别的例外的处理程序。lSR5:当发现任何硬件和软件的异常以及收到诊断信息的时候,发出声音警报。lSR6:在系统警报时,胰岛素注射应该中止,直到用户消除警报和进行系统复位为止。安全性规格说明安全性

11、规格说明l一个系统的安全性需求应该分别进行说明。l这些需求应该建立在对风险和对可能发生的危险的分析基础上。l安全性需求通常被应用于一个系统的整体而不是个别的子系统。在系统工程术语中,一个系统的安全性是一种自然特性(emergent property)。国际电工委员会标准国际电工委员会标准(IEC 61508) l是一项专门为保护系统而设计的安全管理国际标准,它并不适用于所有的安全性关键的系统。l它结合了一个安全生命周期模型,涵盖了从范围定义到系统退役的所有安全管理的方面。控制系统的安全需求控制系统的安全需求Ian Sommerville 2000Dependable systems speci

12、fication Slide 26安全生命周期安全生命周期安全性需求安全性需求l功能安全性需求(Functional safety requirements)l这些需求定义了保护系统的安全功能,即定义了系统应该提供什么样的保护。l安全完整性需求(Safety integrity requirements)l这些需求定义了保护系统的可获性和可靠性。它们以预期的用法为基础并且采用从一至四个安全完整性级别进行分类。保密性规格说明保密性规格说明l与安全性规格说明有些相似l对保密性需求进行定量规格说明是不可能的;l需求常常用“不应该”而不是用“应该”来描述。l差别l对一个保密性管理的生命周期还没有定义完

13、备的观念。它没有标准;l只有一般性的威胁而没有系统特定的危险;l具有成熟的保密技术(加密,等等)。然而,当把这些技术转化到一般性的用途上的时候就会出现问题;l单独的供应商(微软)的主导地位意味着大量的系统可能会受到保密性失效的影响。保密性规格说明过程保密性规格说明过程保密性规格说明步骤保密性规格说明步骤l财产识别和估值l识别出财产(数据和程序)和它们所需要的保护程度。保护程度依赖于财产的价值,因此一个密码文件要比一组公共网页更有价值。l威胁分析和风险评估l要识别出可能发生的保密性威胁,并要估计到与每个这种威胁有关的风险。l威胁分配l把已经识别的威胁与财产联系起来,这样就可以就每个已经识别的财产

14、列出一张与威胁关联的表格。Stages in security specificationl技术分析l对获得的保密技术及其是否可用在识别出的威胁上进行评估。l保密性需求规格说明l要对保密性需求进行规格说明。在规格说明中适当的地方,要明确解释保密技术用在保护系统免受各种不同威胁的作用。保密性需求的种类保密性需求的种类lIdentification requirements. 识别需求。lAuthentication requirements. 鉴定需求。lAuthorization requirements. 授权需求。lImmunity requirements. 免疫需求(抗病毒性)。lIn

15、tegrity requirements. 完整性需求。lIntrusion detection requirements. 侵入检测需求。lNon-repudiation requirements. 非否定需求。lPrivacy requirements. 隐匿需求。lSecurity auditing requirements. 保密审计需求。lSystem maintenance security requirements. 系统维护保密性需求。LIBSYS 保密性需求保密性需求SEC1: All system users shall be identified using their

16、library card number and personalpassword.SEC2: Users privileges shall be assigned according to the class of user (student, staff,library staff).SEC3: Before execution of any command, LIBSYS shall check that the user hassufficient privileges to access and execute that command.SEC4: When a user orders

17、 a document, the order request shall be logged. The log datamaintained shall include the time of order, the user s identification and the articlesordered.SEC5: All system data shall be backed up once per day and backups stored off-site in asecure storage area.SEC6: Users shall not be permitted to ha

18、ve more than 1 simultaneous login to LIBSYS.系统可靠性规格说明系统可靠性规格说明l硬件可靠性(Hardware reliability )l硬件组件失败的可能性有多大以及修复该组件需要多长时间?l软件可靠性(Software reliability )l一个软件组件产生不正确的输出的情况是怎样的。软件和硬件失效的区别在于软件是没有损耗的。即使是在产生不正确的结果之后它也能继续运行。l操纵员可靠性(Operator reliability )l一个系统操作员出差错(make an error)的情况是怎样的?功能可靠性需求举例功能可靠性需求举例l需要定

19、义出操作员全部输入值的预定范围,系统应该对所有落在该预定范围的操作员输入值进行检查。l在系统初始化的时候,它应该对所有磁盘上的坏块进行检查。l系统必须用N版本编程方法来实现减速控制系统。l系统必须才用Ada安全子集来实现,并用静态分析方法进行检查。l系统可靠性所需要达到的水平必须能够定量表达出来。l可靠性是动态的系统特性,与源代码有关的可靠性规格说明是没有意义的。l每1000行的失误数目不大于N个;l它只对软件交付后的过程分析有用。那时你可以试着对你的开发技术有多好做出评价。l需要选择合适的可靠性标尺来说明整个系统的可靠性。非功能可靠性规格说明非功能可靠性规格说明l可靠性标尺是系统可靠性的测量

20、单位。l系统可靠性测量是通过计算操作失效次数来实现的。并且在适当的地方,还要把测量与加在系统上的要求和系统已经运行了多长的时间联系起来。l评估关键系统的可靠性需要一个长期的测量计划。可靠性标尺可靠性标尺(metrics)可靠性标尺可靠性标尺(metrics)l请求失效率POFOD(Probability of failure on demand)l当发出一个服务请求时系统失效的可能性。例如,0.001的响应失效率意味着1000次服务请求中有一次可能会失效l失效发生率ROCOF(Rate of failure occurrence)l出现未预期行为的发生概率。例如,2/100的失效发生率的意思是

21、指在每100个操作时间单位里可能会失效2次。有时也把它称为失效强度。l失效平均时间MTTF(Mean time to failure)l观察到系统失效的平均时间。例如一个500MTTF的意思是在每500个时间单位里可能有一次失效。l修复平均时间MTTR(Mean time to repair)l从一个系统失效到它恢复服务的平均时间l可获率AVAIL(Availability)l在一个给定时间内系统可以获得使用的概率。例如,一个0.998的可获率意味着在每1000个时间单位里系统可以获得998个。请求请求失效率(失效率(POFOD)l这是系统在接到服务请求时失效的几率。这对于服务请求不连续和比较

22、稀少的情况来说是有用的。l适合于保护系统,其中的服务请求偶尔发生并且如果不交付服务可能会产生严重后果。l相应于许多具有例外管理组件的安全性关键系统l一个化工厂里的紧急关闭系统。失效发生率(失效发生率(ROCOF)l反映系统失效的发生比率。l失效发生率等于0.002 意味着在每1000个操作时间单位里可能有2次失效。例如1000小时的运行失效2次。l相对于操作系统或事务处理系统而言,其中系统要频繁处理大量的类同的请求l信用卡处理系统,航线预定系统。失效平均时间失效平均时间(MTTF)l是观察到系统失效的相隔时间度量。对稳定的系统来说,它是失效发生率的倒数。l失效平均时间等于500意味着失效相隔的

23、平均时间是500个时间单位。l对应于长时交易系统,即系统处理要很长时间。失效平均时间应该大于交易时间l计算机辅助设计系统,其一个设计者要用好几个小时进行设计工作,还有文字处理器系统。可获率(可获率(AVAIL)l系统可以获得使用所占的时间比率值。l计入修复和重新启动系统的时间。l可获率等于0.998意味着在1000个时间单位里有998个是可获得的。l对应于不中断的、连续运行的系统 l电话交换系统、铁路信号灯系统。非功能需求规格说明非功能需求规格说明l可靠性测量没有考虑到失效的后果。l瞬时失误可能没有什么实际后果,但除此之外的其它失误却可能导致数据损失或毁坏,甚至使系统不服务。l有必要区别不同的

24、失效类型并对每种类型采取不同的测量标准。一定要构建好可靠性规格说明。失效后果失效后果l在对可靠性进行规格说明的时候,不仅要考虑系统失效的数目,而且要考虑这些失效的后果。l很显然,失效的后果远比能够修正和恢复的那部分损害要大得多。l因此,在某些情况下要针对不同的失效类型定义不同的可靠性规格说明。失效分类(失效分类(Failure classification)Failure classDescriptionTransientOccurs only with certain inputsPermanentOccurs with all inputsRecoverableSystem can rec

25、over without operator interventionUnrecoverableOperator intervention needed to recover from failureNon-corruptingFailure does not corrupt system state or dataCorruptingFailure corrupts system state or datal对每个子系统,分析可能发生的系统失效结果。l通过系统失效分析,把失效划分成适当的类型。l对分出的每种失效类型,采用合适的测量标准来测定可靠性。可以用不同的标准针对不同的可靠性需求。l识别功

26、能可靠性需求以降低严重失效的发生机会。可靠性规格说明步骤可靠性规格说明步骤银行自动出纳系统银行自动出纳系统l每台在网络上的机器每天使用300次。l银行有1000台机器。l软件发行版本的生命期是2年。l每台机器处理约200, 000 交易。l每天总数约有300, 000 个数据库交易。一个一个ATM的可靠性规格说明例子的可靠性规格说明例子Failure classExampleReliability metricPermanent,non-corrupting.The system fails to operate with any card that isinput. Software must be restarted to correct failure.ROCOF1 occurrence

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论