高级软件工程第一章_第1页
高级软件工程第一章_第2页
高级软件工程第一章_第3页
高级软件工程第一章_第4页
高级软件工程第一章_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1,Chapter1SoftwareandSoftwareEngineering软件和软件工程,SoftwareEngineering:APractitionersApproach,6theditionbyRogerS.Pressman,2,软件定义,一组配置计算机程序(指令集合)数据结构文档,3,工程的定义,大的、复杂的事情施工的过程一类学科,4,意外法则,50年前没有人会想到软件是商业、科学、工程的必须技术软件可以嵌入到任何系统中软件需要维护且维护量大,5,软件的本质,双重作用产品产品交付载体,6,SoftwaresDualRole,SoftwareisaproductTransforms(转换)information-produces,manages,acquires(获取),modifies,displays,ortransmits(传输)informationDeliverscomputingpotential(潜力)ofhardwareandnetworksSoftwareisavehiclefordeliveringaproductControlsotherprograms(operatingsystem)Effectscommunications(networkingsoftware)Helpsbuildothersoftware(softwaretools&environments),7,软件开发人员面临的问题,软件为什么需要如此长的开发时间?为什么开发成本居高不下?为什么在交付之前无法找到错误?为什么维护需要高昂的时间和人力代价?为什么开发和维护过程难以度量?,8,SoftwareApplications,systemsoftwareapplicationsoftwareengineering/scientificsoftwareembeddedsoftwareproduct-linesoftwarewebapplicationsAIsoftware,9,Hardwarevs.Software,10,Manufacturingvs.Development,Onceahardwareproducthasbeenmanufactured,itisdifficultorimpossibletomodify.Incontrast,softwareproductsareroutinelymodifiedandupgraded.Inhardware,hiringmorepeopleallowsyoutoaccomplishmorework,butthesamedoesnotnecessarilyholdtrueinsoftwareengineering.Unlikehardware,softwarecostsareconcentratedindesignratherthanproduction.,11,Wearvs.Deterioration,Hardwarewearsoutovertime,初期失败率,磨损,失效率,12,Wearvs.Deterioration,Softwaredeterioratesovertime,由于变更的副作用导致失效率提高,13,ComponentBasedvs.CustomBuilt,Hardwareproductstypicallyemploy(使用)manystandardizeddesigncomponents.Mostsoftwarecontinuestobecustombuilt.Thesoftwareindustrydoesseemtobemoving(slowly)towardcomponent-basedconstruction.,14,银弹,在古老的传说里。狼人是不死的。想要杀死狼人有几种方法:1.像杀死吸血鬼那样用木桩钉住狼人的心脏。2.将月光遮住3.用银子做的子弹射穿狼人的心脏或头当然现实中是没有狼人的。但现实中确实有银弹这个东西。而其意义也类似于能杀死狼人的最好办法。现实中的狼人可以是一个棘手的项目,或者一件不可能的事。而“银弹”就是指能解决这些事的方法,或者技术手段。,15,IT银弹,没有银弹(NoSilverBullet)是IBM大型电脑之父佛瑞德布鲁克斯(FredBrooks)在1987年所发表的一篇关于软体工程的经典论文。该论述中强调由于软体的复杂性本质,而使真正的银弹并不存在;所谓的没有银弹是指没有任何一项技术或方法可使软体工程的生产力在十年内提高十倍。真正好的项目,需要便捷的开发技术。但没有一种技术能彻底的舍弃了人的存在。,16,SoftwareComplexity,Ibelievethehardpartofbuildingsoftwaretobethespecification,design,andtestingofthisconceptualconstruct,notthelaborofrepresentingitandtestingthefidelityoftherepresentation.Ifthisistrue,buildingsoftwarewillalwaysbehard.Thereisinherentlynosilverbullet.-FredBrooks,“NoSilverBullet”/computer/homepage/misc/Brooks/,17,LegacySoftware,Itmustbefixedtoeliminateerrors.Itmustbeenhancedtoimplementnewfunctionalandnon-functionalrequirementsSoftwaremustbeadaptedtomeettheneedsofnewcomputingenvironmentsortechnology.Softwaremustbeenhancedtoimplementnewbusinessrequirements.Softwaremustbeextendedtomakeitinteroperable(互操作)withothermoremodernsystemsordatabases.Softwaremustbere-architectedtomakeitviablewithinanetworkenvironment.,Whymustitchange?,18,软件的本质特性,构造性演化性,19,E-TypeSystems,E-TypeSystems:Softwarethathasbeenimplementedinareal-worldcomputingcontextandwillthereforeevolveovertime,20,SoftwareEvolution,TheLawofContinuingChange(1974):E-typesystemsmustbecontinuallyadaptedelsetheybecomeprogressivelylesssatisfactory.持续变更原则:否则将越来愈不适应。,Source:Lehman,M.,etal,“MetricsandLawsofSoftwareEvolutionTheNinetiesView,”Proceedingsofthe4thInternationalSoftwareMetricsSymposium(METRICS97),IEEE,1997,canbedownloadedfrom:/perry/work/papers/feast1.pdf,21,SoftwareEvolution,TheLawofIncreasingComplexity(1974):AsanE-typesystemevolvesitscomplexityincreasesunlessworkisdonetomaintainorreduceit.复杂性增加原则:除非去维护他或降低其复杂性。,Source:Lehman,M.,etal,“MetricsandLawsofSoftwareEvolutionTheNinetiesView,”Proceedingsofthe4thInternationalSoftwareMetricsSymposium(METRICS97),IEEE,1997,canbedownloadedfrom:/perry/work/papers/feast1.pdf,22,SoftwareEvolution,TheLawofSelfRegulation(1974):TheE-typesystemevolutionprocessisself-regulatingwithdistributionofproductandprocessmeasuresclosetonormal.自我调节原则:随产品发布和过程度量接近于标准自我控制。,Source:Lehman,M.,etal,“MetricsandLawsofSoftwareEvolutionTheNinetiesView,”Proceedingsofthe4thInternationalSoftwareMetricsSymposium(METRICS97),IEEE,1997,canbedownloadedfrom:/perry/work/papers/feast1.pdf,23,SoftwareEvolution,TheLawofConservationofOrganizationalStability(1980):TheaverageeffectiveglobalactivityrateinanevolvingE-typesystemisinvariantoverproductlifetime.组织稳定性保护原则:在整个产品生命周期里,平均整体活动率是不变的。,Source:Lehman,M.,etal,“MetricsandLawsofSoftwareEvolutionTheNinetiesView,”Proceedingsofthe4thInternationalSoftwareMetricsSymposium(METRICS97),IEEE,1997,canbedownloadedfrom:/perry/work/papers/feast1.pdf,24,SoftwareEvolution,TheLawofConservationofFamiliarity(1980):AsanE-typesystemevolvesallassociatedwithit,developers,salespersonnel,users,forexample,mustmaintainmasteryofitscontentandbehaviortoachievesatisfactoryevolution.通晓保护原则:所有与之有关的开发者、销售人员、用户等必须保持对它的内容和行为的掌握,以便达到满意的演化。,25,SoftwareEvolution,TheLawofContinuingGrowth(1980):ThefunctionalcontentofE-typesystemsmustbecontinuallyincreasedtomaintainusersatisfactionovertheirlifetime.持续增长原则:必须持续增加功能,保持在生命周期里用户对它的满意度。,26,SoftwareEvolution,TheLawofDeclining(衰退)Quality(1996):ThequalityofE-typesystemswillappeartobedecliningunlesstheyarerigorouslymaintainedandadaptedtooperationalenvironmentchanges.质量衰退原则:除非进行严格的维护和适应操作环境的变更,否则它们将会出现衰退。,27,SoftwareEvolution,TheFeedbackSystemLaw(1996):E-typeevolutionprocessesconstitutemulti-level,multi-loop,multi-agentfeedbacksystemsandmustbetreatedassuchtoachievesignificant(重要的)improvementoveranyreasonablebase.反馈系统原则:演化过程构造了多级别、多循环、多代理的反馈系统,并且在合理的基础上它必须被处理以便达到重要的改进。,28,SoftwareMyths,Affectmanagers,customers(andothernon-technicalstakeholders)andpractitionersArebelievablebecausetheyoftenhaveelementsoftruth,butInvariablyleadtobaddecisions,thereforeInsistonrealityasyounavigateyourwaythroughsoftwareengineering,29,SoftwareMyths,Ifwegetbehindschedule,wecanaddmoreprogrammersandcatchup.Ageneralstatementaboutobjectivesissufficienttobeginbuildingprograms.Changeinprojectrequirementscanbeeasilyaccommodatedbecausesoftwareisflexible.,30,SoftwareMyths,Oncewewriteaworkingprogram,weredone.UntilIgettheprogramrunning,Ihavenowayofassessingitsquality.Theonlydeliverableworkproductforasuccessfulprojectistheworkingprogram.Softwareengineeringwillmakeuscreatetoomuchdocumentationandwillslowusdown.,31,ManagementMyths,“Wealreadyhaveabookofstandardsandproceduresforbuildingsoftware.Itdoesprovidemypeoplewitheverythingtheyneedtoknow”“Ifmyprojectisbehindtheschedule,Ialwayscan

温馨提示

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

评论

0/150

提交评论