




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Delivering
theSystem系统的交付10.1training培训
用户与操作员职能Table10.1.Userandoperatorfunctions.Userfunctions用户职能Operatorfunctions操作员职能Manipulatingdatafiles处理数据文件Grantinguseraccess授予用户访问权Simulatingactivities模拟活动Grantingfileaccess授予文件访问权Analyzingdata分析数据Performingbackups执行备份Communicatingdata交流数据Installingnewdevices安装新设备Drawinggraphsandcharts绘制图表Installingnewsoftware安装新软件Recoveringdamagedfiles恢复损坏的文件Typesoftraining培训类型Usertraining用户培训Operatortraining操作员培训Specialtrainingneeds特别培训需求infrequentvs.frequentusers偶尔与经常用户newusersvs.brush-up新用户与温习用户Trainingaids培训援助Documents文档Iconsandon-linehelp图标和在线帮助Demonstrationsandclasses演示与分类Expertusers专家用户10.2Documentation文档Considertheaudience考虑读者Usermanual用户手册systempurposeorobjectives系统目的或宗旨systemcapabilitiesandfunctions系统的性能与功能systemfeatures,characteristics,advantages系统特点、特征和优点Operatormanual操作员手册Generalsystemguide系统概况Tutorialsandautomatedoverviews指南与自动的系统纵览Programmerguide程序员指南Userhelpandtroubleshooting
用户帮助和故障诊断failuremessagesreferenceguide
出错信息参考指南Onlinehelp
在线帮助Quickreferenceguides快速参考指南failuremessagesreferenceguide
出错信息指南thenameofcodecomponentexecutingwhenthefailureoccurred出错时正在执行的代码组件名thesourcecodelinenumberinthecomponentthatwasexecuting组件中正在执行的源代码行号thefailureseverityanditsimpactonthesystem
出错严重等级和它对系统的影响thecontentsofanyrelevantsystemmemoryordatapointers,suchasregistersorstackpointers
相关系统内存或数据指针的内容,如寄存器或堆栈指针thenatureofthefailure,orafailuremessagenumber(forcross-referencewiththefailuremessagereferenceguide)
出错属性或出错信息编号(以便交叉引用失效参考指南)Examplefailuremessages>.5(2,4)Error:“0.5”isnotafunction>3xSyntaxerror:name(“x”)usedillegallyatthispoint:3xFAILURE345A1:STACKOVERFLOWOCCURREDIN:COMPONENTDEFRECDATLINE:12300SEVERITY:WARNINGREGISTERCONTENTS:00000000110010101100101011110000PRESSFUNCTIONKEY12TOCONTINUETable10.3.BASICfailuremessages.NumberMessage23LinebufferoverflowAnattempthasbeenmadetoinputalinethathastoomanycharacters.24Devicetime-outThedeviceyouhavespecifiedisnotavailableatthistime.25DevicefaultAnincorrectdevicedesignationhasbeenentered.26FORwithoutNEXTAFORstatementwasencounteredwithoutamatchingNEXTstatement.27OutofpaperTheprinterdeviceisoutofpaper.28UnprintableerrorAfailuremessageisnotavailablefortheconditionthatexists.29WHILEwithoutWENDAWHILEstatementwasencounteredwithoutamatchingWENDstatement.30WENDwithoutWHILEAWENDstatementwasencounteredwithoutamatchingWHILEstatement.31-40UnprintableerrorAfailuremessageisnotavailablefortheconditionthatexists.Maintainingthe
System
系统的维护SOFTWAREENGINEERING
软件和硬件的维护是完全不同的软件和硬件系统最大的差别在于软件系统在构建时包含了变化,除了最简单的情况外,软件系统是演化的。11.1Thechangingsystem
变化的系统Softwaresystemareevolutionary.软件系统是演化的Acustomermakesadecisiontodosomethingadifferentway.顾客以不同的方式做某件事Thenatureofthesystemitselfchanges.系统自身的属性发生了改变TypesofSystems,intermsofthewayitisrelatedtotheenvironmentinwhichitoperates系统类型,用系统和系统运行的环境来描述S-systemsP-systemsE-systemsS-systemsFormallydefined,derivablefromaspecification
形式化定义、源自说明描述Staticsystem,nochangerequired
静态系统,无改变需要Examples:mathematicaloperationsP-systemsThesystemisbasedonapracticalabstractionoftheproblemratherthenonacompletelydefinedspecification
系统基于问题的一个可行的抽象,而不是一个完全定义好的说明Abstractionandsolutionmaychange抽象与解决方案可能变化Examples:patternrecognitionsystems模式识别系统E-systemsEmbeddedintherealworldandchangesastheworlddoes嵌入真实世界中并随着真实世界的改变而改变Theproblemcannotbespecifiedcompletely问题不能被完全说明Thesuccessdependsonthecustomerevaluation成功取决于客户评价Examples:bankingsystems,ERPsystemsS-系统解决的问题与真实世界有关,如果真实世界变化了,就是一个全新的问题,必须重新指明。P-系统中所有都可能发生变化,实现也相应的受影响。但变化产生的系统不能被视为对新问题的新的解决方案。事实上只是旧解决方案的一个修正,为了找出对现存问题的更合适的解决方法。E-系统是持续发生变化的系统,其成功完全依赖于顾客对系统性能的评估。系统要解决的问题不可能被完全指明,问题只能在实际的运行条件下,由它的行为来检验。Changesduringthesystemlifecycle
在系统生命周期中的变化Achangeatanystageofdevelopmentcanalsoaffecttheresultsofpreviousaswellassubsequentstages.在开发中任意环节的改变,都可能影响前面的结果和后面的环节。根据系统的分类来研究系统,可以看到变化可能会发生在什么地方。
软件开发中变动的例子Table11.1.Examplesofchangeduringsoftwaredevelopment.ActivityfromwhichinitialchangeresultsArtifactsrequiringconsequentchangeRequirementsanalysisRequirementsspecificationSystemdesignArchitecturaldesignspecificationTechnicaldesignspecificationProgramdesignProgramdesignspecificationProgramimplementationProgramcodeProgramdocumentationUnittestingTestplansTestscriptsSystemtestingTestplansTestscriptsSystemdeliveryUserdocumentationTrainingaidsOperatordocumentationSystemguideProgrammerguideTrainingclassesThesystemlifespan系统生命期DevelopmentTimevs.MaintenanceTime开发时间与维护时间Typicaldevelopmentprojecttakesbetween1and2years,but......requiresanadditional5to6yearsofmaintenancetime!典型的开发项目耗时1-2年,但需要5-6年的维护时间。80-20RuleTwentypercentoftheeffortisindevelopmentandeightypercentisinmaintenance.工作量的20%是开发,而80%是维护。Systemevolutionvs.decline系统演化和系统衰退的比较Isthecostofmaintenancetoohigh维护的成本太高吗?Isthesystemreliabilityunacceptable
系统的可靠性可以接受吗?Canthesystemnolongeradapttofurtherchange,andwithinareasonableamountoftime
在一个合理的时间内,系统不能再适应进一步的变化了吗?Issystemperformancestillbeyondprescribedconstraints
系统性能仍旧超出预先规定的约束条件吗?Aresystemfunctionsoflimitedusefulness
系统功能的作用有限吗?Canothersystemsdothesamejobbetter,fasterorcheaper
其他的系统能更好、更快、更廉价地做同样的工作?Isthecostofmaintainingthehardwaregreatenoughtojustifyreplacingitwithcheaper,newerhardware
维护硬件的成本高得足以用更便宜、更新的硬件来取代吗?Lawsofsoftwareevolution软件演化法则Continuingchange(连续的变化):程序持续地被改动,或者变得越来越无用。变动或衰退过程一直持续着,直到用一个重新创建的版本来代替原系统更划算为止。Increasingcomplexity(递增的复杂性):当一个演化的程序被持续改动时,它的结构恶化了。因此它的复杂性增加,除非进行一些维护或减少它。Fundamentallawofprogramevolution(程序演化的基本法则):程序演化服从于一种动力,这种动力产生了编程过程,从而产生了全局项目和系统属性的度量,它自身由某种统计确定的趋势和恒定性来调节。Conservationoforganizationalstability(组织稳定性的守恒):在一个程序的活动周期中,编程项目的总体活动统计上是不变的。Conservationoffamiliarity(熟悉程度的守恒):在一个程序的活动周期中,因程序演化连续发布版本的发布内容(改动、增加、删减)统计上是不变的。第一条法则:大型系统从来都不是完整的,它们不断地演化。第二条法则:当系统演化时,它们会变得更加复杂,除非采取行动减少这种复杂性。第三条法则:软件系统显示出我们能度量和预测的规则的行为和趋势。第四条法则:在组织属性中没有程度比较大或范围很广的波动。第五条法则:经过一段时间以后发布的版本的效果在整个系统功能中并不会有什么差别。11.2thenaturemaintenance
维护的本质Corrective(改正性维护):maintainingcontroloverday-to-dayfunctions
维持控制日常功能Adaptive(适应性维护):maintainingcontroloversystemmodifications维持控制系统修改Perfective(完善性维护):perfectingexistingfunctions完善现有的功能Preventive(预防性维护):preventingsystemperformancefromdegradingtounacceptablelevels防止系统性能下降到不可接受Whoperformsmaintenance
由谁进行维护Often,aseparategroupofanalysts,programmers,anddesignersisdesignatedasthemaintenanceteam.通常,人们会指派一个单独的维护小组,这个小组包括分析员、程序员和设计人员。Maintenanceteamresponsibilities
维护小组的职责understandingthesystem理解系统locatinginformationinsystemdocumentation定位系统文档中的信息keepingsystemdocumentationup-to-date保持系统文档更新extendingexistingfunctionstomodateneworchangingrequirements扩展现有功能以容纳新的或变动的需求addingnewfunctionstothesystem给系统增加新的功能findingthesourceofsystemfailuresorproblems找出系统故障或问题的根源locatingandcorrectingfaults定位和纠正故障answeringquestionsaboutthewaythesystemworks回答有关系统运行方式的问题restructuringdesignandcodecomponents重构设计和代码组件rewritingdesignandcodecomponents重新编写设计和代码组件deletingdesignandcodecomponentsthatarenolongeruseful删除不再有用的设计和代码组件managingchangestothesystemastheyaremade进行系统改动Useofmaintenancetime
维护时间的分配Perfective完善性维护:50%Adaptive适应性维护:25%Corrective改正性维护:21%Preventive预防性维护:4%11.3Maintenanceproblems
与维护有关的问题Staffproblems人员问题Limitedunderstanding理解的局限性Managementpriorities管理的优先级Morale士气Technicalproblems技术问题Artifactsandparadigms工件和范例Testingdifficulties测试问题Factorsaffectingmaintenanceeffort
影响维护成果的因素Applicationtype应用类型Systemnovelty系统新奇度Turnoverandmaintenancestaffability
人员变化和维护人员能力Systemlifespan系统生命期Dependenceonachangingenvironment
对变化的环境的依赖Hardwarecharacteristics硬件特性Designquality设计质量Codequality代码质量Documentationquality文档质量Testingquality测试质量Modeligmaintenanceeffortd对维护工作量建模BeladyandLehman公式
M=p+Kc-d其中:M是一个系统花费的所有维护工作量
p表示分析、评价、设计、编码以及测试的总工作量
K是个常量,通过与实际工作量比较而定
c是由于缺乏结构化和文档引起的复杂度
d表示维护小组对软件的熟悉程度,d削弱了cOII计算维护工作量公式Size=ASLOC(AA+SU+0.4DM+0.3CM+0.3IM)/100ASLOC:要改动的代码行数AA:评估和修改评分SU:加权因子项CM:要修改的代码的百分比DM:要修改的设计的百分比IM:要集成的外部代码的百分比OII软件理解的评分Table11.2.OIIratingforsoftwareunderstanding.VerylowLowNominalHighVeryhighStructure结构Verylowcohesion,highcoupling,spaghetticodeModeratelylowcohesion,highcouplingReasonablywell-structured;someweakareasHighcohesion,lowcouplingStrongmodularity,information-hidingindataandcontrolstructuresApplicationClarity应用程序清晰度NomatchbetweenprogramandapplicationworldviewsSomecorrelationbetweenprogramandapplicationModeratecorrelationbetweenprogramandapplicationGoodcorrelationbetweenprogramandapplicationClearmatchbetweenprogramandapplicationworldviewsSelf-Descriptiveness自描述Obscurecode;documentationmissing,obscureorobsoleteSomecodecommentaryandheaders;someusefuldocumentationModeratelevelofcodecommentary,headers,documentationGoodcodecommentaryandheaders;usefuldocumentation;someweakareasSelf-descriptivecode;documentationup-to-date,well-organized,withdesignrationaleSU增值SUincrement5040302010OII评估和修改的评分Table11.3.OIIratingsforassessmentandassimilationeffort.AssessmentandassimilationincrementLevelofassessmentandassimilationeffort0None2Basiccomponentsearchanddocumentation4Somecomponenttestandevaluationdocumentation6Considerablecomponenttestandevaluationdocumentation8Extensivecomponenttestandevaluationdocumentation11.4Measuringmaintenancecharacteristics
度量维护特性Externalviewofmaintainability
可维护性的外部属性Internalattributesaffectingmaintainability
影响可维护性的内部属性Externalviewofmaintainability
可维护性的外部属性Necessarydata(用平均修复时间度量所)必须的数据timeatwhichproblemisreported问题报告的时间timelostduetoadministrativedelay
由于行政管理延迟浪费的时间timerequiredtoanalyzeproblem分析问题需要的时间timerequiredtospecifywhichchangesaretobemade
确定进行哪种改动需要的时间timeneededtomakethechange进行改动需要的时间timeneededtotestthechange测试变动需要的时间timeneededtodocumentthechange
记录变动需要的时间Desirabledata:可能有用的数据ratiooftotalchangeimplementationtimetototalnumberofchangesimplemented
实现改动的总时间与实现的改动的总数目之比numberofunresolvedproblems未解决问题的数目timespentonunresolvedproblems
花在未解决问题上的时间percentageofchangesthatintroducenewfaults
引入新故障的改动的百分比numberofcomponentsmodifiedtoimplementachange实现一个改动而修改的组件数Internalattributesaffectingmaintainability
影响可维护性的内部属性
cyclomaticnumber环路数Scoreboard::drawscore(intn){while(numdigits-->0}{score[numdigits]->erase();}//buildnewscoreinloop,eachtimeupdatepositionnumdigits=0;//ifscoreis0,justdisplay“0”if(n==0){deletescore[numdigits];score[numdigits]=newDisplayable(digits[0]);score[numdigits]->move(Point((700-numdigits*18),40));score[numdigits]->draw();numdigits++;}while(n){intrem=n%10;deletescore[numdigits];score[numdigits]=newDisplayable(digits[rem]);score[numdigits]->move(Point(700-numdigits*18),40));score[numdigits]->draw();n/=10;numdigits++;}}环路数=代码中判定语句数+1环路数计算的例子环路数=划分平面数线性无关路径=e–n+2Fogindex可读性度量指标F=0.4×单词数句子数+3个以上音节的词的百分比11.5MaintenanceTechniquesandTools
维护技术和工具ConfigurationManagement配置管理ConfigurationControlBoard配置管理委员会
ChangeControl变动控制ImpactAnalysis后果分析Evaluationofthemanyrisksassociatedwiththechange,includingestimatesofeffectsonresources,effortandschedule对与变动有关的多项风险的评估,包括对资源、工作量和进度影响的评估AutomatedMaintenanceTools自动维护工具Changecontrolissues变动控制Synchronization同步:Whenwasthechangemade?变动是何时进行的?Identification标识:Whomadethechange?由谁进行改动的?Naming命名:Whatcomponentsofthesystemwerechanged?系统的那个组件被改动了?Authentication鉴定:Wasthechangemadecorrectly?改动正确地进行了吗?Authorization授权:Whoauthorizedthatthechangebemade?是谁批准进行的改动?Routing发送:Whowasnotifiedofthechange?改动通知了那些人?Cancellation取消:Whocancanceltherequestforchange?谁能取消变动的请求?Delegation委托:Whoisresponsibleforthechange?谁对改动负责?Valuation评价:Whatisthepriorityofthechange?改动的级别是什么?Impactanalysis后果分析Workproduct(工作产品):anydevelopmentartifactwhosechangeissignificant
改动起来有重要影响的开发工件Horizontaltraceability(水
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025汽车销售预售合同范文
- 河南省商丘市2023−2024学年高一下册期末联考数学试卷(B卷)附解析
- 广东省广州市2024~2025学年 高二下册第一次月考数学试卷附解析
- 福建省福州市2023−2024学年高二下册期末考试数学试卷附解析
- 安全生产法学新安全生产法心得体会
- 社区公共卫生基础知识点归纳
- 英语(武汉卷)2025年中考考前押题最后一卷
- 饮料制造企业经营管理方案
- 2025至2030年中国有线电视光纤收发器行业投资前景及策略咨询报告
- 2025至2030年中国中高档毛料男西服行业投资前景及策略咨询报告
- 火字旁教学讲解课件
- 租车公司疫情防控应急预案
- 2023-2025年初中学业水平考试体育与健康考试体育中考理论考试题库
- 补缴社保转移需法律文书(社保法律文书怎么写有效)-靓文网
- SMT失效模式分析PFMEA
- 融媒体中心安全播出管理相关各项制度
- 2023年萧县幼儿园教师招聘笔试《幼儿保教知识与能力》模拟试题及答案解析
- JJF 1105-2018触针式表面粗糙度测量仪校准规范
- GB/T 29602-2013固体饮料
- 建筑工程招标控制价编制说明审
- GB/T 12469-1990焊接质量保证钢熔化焊接头的要求和缺陷分级
评论
0/150
提交评论