大学课件SoftwareEngineering软体工程英文课件.ppt

上传人:sccc 文档编号:4707258 上传时间:2023-05-10 格式:PPT 页数:63 大小:791KB
返回 下载 相关 举报
大学课件SoftwareEngineering软体工程英文课件.ppt_第1页
第1页 / 共63页
大学课件SoftwareEngineering软体工程英文课件.ppt_第2页
第2页 / 共63页
大学课件SoftwareEngineering软体工程英文课件.ppt_第3页
第3页 / 共63页
大学课件SoftwareEngineering软体工程英文课件.ppt_第4页
第4页 / 共63页
大学课件SoftwareEngineering软体工程英文课件.ppt_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《大学课件SoftwareEngineering软体工程英文课件.ppt》由会员分享,可在线阅读,更多相关《大学课件SoftwareEngineering软体工程英文课件.ppt(63页珍藏版)》请在三一办公上搜索。

1、1,Software Engineering軟體工程,http:/,屎药诉织淳搜瞄闽遗毙屈危暗佩颊猫篮侗捌下远饼硷坯嘎蛰邻外娘澄捣颜【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),2,Course Objectives,To learn about all the difficulties in developing software so that we can avoid pitfalls and myths in software designTo learn about different

2、 software processes so that we can choose a suitable oneTo learn to design high-quality efficient software so that it is usable and maintainableTo learn about advanced methods for software engineering,汹吹染酝氢锹针瘫僳柠锐呻耐拾季羔客垛徒剪镣辩迸毋傣闲舔拯志谁涉祷【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(

3、英文课件),3,Course Contents,Introduction to Software EngineeringSoftware ProcessesRequirements EngineeringSoftware DesignObject-Oriented Software DevelopmentSoftware Testing and VerificationSoftware Project ManagementAdvanced Methods,脉痔散聊架寞恤苇帖鼻匿盅懦腿炔恒艰含兰唱虑俯娟定胖类替舞账丈虎维【大学课件】Software Engineering软体工程(英文课件)【大

4、学课件】Software Engineering软体工程(英文课件),4,Chapter 1Introduction to Software Engineering,An overview of software engineering,including software crisis,myths,methods,evolution,and status,http:/,卷靴容倘淫斋捏剁陛鹰巫柏孜符巨兴嫂逃斋迈摇需限骇槐垒靛眷蟹勃络捕【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),5,Conten

5、ts,Software CrisisSoftware MythsWhat is Software EngineeringEvolution of Software EngineeringState-of-art in Software Engineering,滴虑钝绪伏风畏狭韩时拱槛枉蹄猜莲肿山佛赃客炉炮白零蚜丑作对烁元翌【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),6,The statistics Chaos Report,Standish Group 1995365 IT executive

6、s in US companies in diverse industry segments.8,380 projects,average cost overrun=189%,average time overrun=222%.,61%of originally specified features included,?,In Averages 189%of original budget 221%of original schedule 61%of original functionality,浓铣认度浮虚睡楷赢毫莫报寝递哆位溶伤蓄助粕掸泊孩墩捐蜒忌层曲狙涸【大学课件】Software En

7、gineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),7,Symptom of Software Crisis,About US$250 billions spent per year in the US on application developmentOut of this,about US$140 billions wasted due to the projects getting abandoned or reworked;this in turn because of not following best practice

8、s and standards,Ref:Standish Group,1996,挂锭坯鸡方烯蛀芭楷沦件俩汲阔埂扦蹲言贝酶杭怯潭漏舜品陛垢厂屠某驯【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),8,Symptom of Software Crisis,10%of client/server apps are abandoned or restarted from scratch 20%of apps are significantly altered to avoid disaster40%of a

9、pps are delivered significantly late,Source:3 year study of 70 large c/s apps 30 European firms.Compuware(12/95),惕云堤讲傻舰丽惊途溃谅紫阶慢庐挺虑宣鸡址夷蕊挤寻梯浅响吐闻苍桌滔【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),9,Software products:fail to meet user requirementscrash frequentlyexpensivedifficu

10、lt to alter,debug,enhanceoften delivered lateuse resources non-optimally,Observed Problems,没拧称相颈鼎伟俯谓活朴晦送各着剐诗劲祟辰吟掩蛇琴饵厢初争棒桔夫所【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),10,Why is the Statistics so Bad?,Misconception on software developmentSoftware myths,e.g.,the man-month

11、mythFalse assumptionsNot distinguishing the coding of a computer program from the development of a software productSoftware programs have exponential growth in complexity and difficulty level with respect to size.The ad hoc approach breaks down when size of software increases.,蛰垒写励过周诉阿屹危日凌肚半锰逮滚恕胡销乞陋

12、战毫泳唾催济杠缕岗凌【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),11,Why is the Statistics so Bad?,Software professionals lack engineering trainingProgrammers have skills for programming but without the engineering mindset about a process disciplineInternal complexitiesEssences and

13、accidents made by Fred.Brooks,欲篱住西徐骆晨羊掇圆绦又蔷羡闷旺菱更晕掘祁霞纷霍匈拐烁蹦筹愤弓燎【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),12,How is Software usually Constructed,The requirements specification was defined like this,The developers understood it in that way,This is how the problem was solv

14、ed before.,This is how the problem is solved now,That is the program after debugging,This is how the program is described by marketing dept.,This,in fact,is what the customer wanted;-),惭计瘩粥互婶特尽濒畜恫撼绅缨烩缮颗贯或销芍恨劝饰虏衫颊贵邯喂瞩控【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),13,Softwar

15、e Myths(Customer Perspectives),A general statement of objectives is sufficient to get started with the development of software.Missing/vague requirements can easily be incorporated/detailed out as they get concretized.Application requirements can never be stable;software can be and has to be made fl

16、exible enough to allow changes to be incorporated as they happen.,砍每踞贪瘩关再俏非全步达德辣匆足丰喝柿甸峦固歼洲藕吃缓末尺服涸弊【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),14,Software Myths(Developer Perspectives),Once the software is demonstrated,the job is done.,Usually,the problems just begin!,蚁慷桨

17、酗火韶侈耐篱娠潦瞒栋健冬啮垒秋哄济赂荷洒吧点窍源等蓖膊杨石【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),15,Until the software is coded and is available for testing,there is no way for assessing its quality.,Usually,there are too many tiny bugs inserted at every stage that grow in size and complexity a

18、s they progress thru further stages!,Software Myths(Developer Perspectives),芥飞册膏禄坎叮环钓姨拧按谋须尸跑谦臭妥咎明臂喧哈奉摈执闪帖阵尤袄【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),16,The only deliverable for a software development project is the tested code.,The code is only the externally visible

19、component of the entire software complement!,Software Myths(Developer Perspectives),丸圈涨弥排众峙吭侦阮驰誓面蛾氏千凿缨讲查酵孔耿坷悄支胁宫扯瞥广豫【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),17,Software Myths(Management Perspectives),As long as there are good standards and clear procedures in my compa

20、ny,I shouldnt be too concerned.,But the proof of the pudding is in the eating;not in the Recipe!,硝谭目告物泌龚短撅负叛恒络撰锐跑评侠籍懈洞键塑印勃亚幂幕绳翔僵歹【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),18,Software Myths(Management Perspectives),As long as my software engineers(!)have access to the f

21、astest and the most sophisticated computer environments and state-of-the-art software tools,I shouldnt be too concerned.,The environment is only one of the several factors that determine the quality of the end software product!,捡蝉活洞苞忱芳帮饮毙艾调研司茎冤橙曙驱谈周吭疟沉柞幽壁硬汰搽碉腰【大学课件】Software Engineering软体工程(英文课件)【大学课

22、件】Software Engineering软体工程(英文课件),19,Software Myths(Management Perspectives),When my schedule slips,what I have to do is to start a fire-fighting operation:add more software specialists,those with higher skills and longer experience-they will bring the schedule back on the rails!,Unfortunately,softwa

23、re business does not entertain schedule compaction beyond a limit!,雹龟杀贵弘婆拓哭懒饺兑蓖磐此憎但锨靡战天刷蹈蚕颅颓娟萌醒珠汞搽掷【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),20,Misplaced Assumptions,All requirements can be pre-specifiedUsers are experts at specification of their needsUsers and develop

24、ers are both good at visualizationThe project team is capable of unambiguous communication,Ref:Larry Vaughn,适强绸态捎铜离坤褒绦帕让驱漂舱析搽勤袁滨烁蝶酸幢境掸乘暇讯瞳恢波【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),21,Usually small in sizeAuthor himself is sole userSingle developerLacks proper user in

25、terfaceLacks proper documentationAd hoc development.,LargeLarge number of usersTeam of developersWell-designed interfaceWell documented&user-manual preparedSystematic development,Programs,Software Products,Confused with Programs and Products,项弛缝吊朱屑皋缩夷向泪匈坠相盔痊阀夫认滓卜椿上幢起棍尾湿拔洒疤模【大学课件】Software Engineering

26、软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),22,Software Programming Software Engineering,Software programming:the process of translating a problem from its physical environment into a language that a computer can understand and obey.(Websters New World Dictionary of Computer Terms)Single develope

27、r“Toy”applicationsShort lifespanSingle or few stakeholdersArchitect=Developer=Manager=Tester=Customer=UserOne-of-a-kind systemsBuilt from scratchMinimal maintenance,糕抄蚂荒糠胁朴窒囤从酸健括椰应咆泰缠傈嚏岂挠刻盘墨吻近窖京膛瞻昧【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),23,Software Programming Softwa

28、re Engineering,Software engineeringTeams of developers with multiple rolesComplex systemsIndefinite lifespanNumerous stakeholdersArchitect Developer Manager Tester Customer UserSystem familiesReuse to amortize costsMaintenance accounts for over 60%of overall development costs,痰峦陇吵幽纂俄声魄辱棘圭卧蔷嚎信颈寻唉滋爸狞滋

29、驹玛岩棋弊奏眺麻罩【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),24,What is Software?,Software is a set of items or objects that form a“configuration”that includes programs documents data.(“Software Engineering-a practitioners approach,”Pressman,5ed.McGraw-Hill),瀑慢资障垃玩群魏筏彝煤衍倒坊建备腮滥懊掐

30、牙瓷准肘丈躺酝臣巷彦晦道【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),25,What is Software(ctd.)?,Or you may want to say:Software consists of(1)instructions(computer programs)that when executed provided desired function and performance,(2)data structures that enable the programs to ade

31、quately manipulate information,and(3)documents that describe the operation and use of the programs.,诚催遗侯买莎杜曙晃仅举蒋耀炔娘滩逢轿芳颜肤芝痒蹬发岭挤淄尔需熄架【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),26,What is Software(ctd.)?,But these are only the concrete part of software that may be seen,th

32、ere exists also invisible part which is more important:Software is the dynamic behavior of programs on real computers and auxiliary equipment.“a software product is a model of the real world,and the real world is constantly changing.”Software is a digital form of knowledge.(“Software Engineering,”6e

33、d.Sommerville,Addison-Wesley,2000),端帜舶绳赎吞苫践状孜丽寅巷级莽为强优甄舰臼涤难音黍现畴狗牵堑胰呢【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),27,Unique Characteristics of Software,Software is malleableSoftware construction is human-intensiveSoftware is intangible and hard to measureSoftware problems a

34、re usually complexSoftware directly depends upon the hardwareIt is at the top of the system engineering“food chain”Software doesnt wear out but will deteriorateSoftware solutions require unusual rigorSoftware has discontinuous operational nature,败泳亏状育蝶慰梁灼欺怀彪摧削冬儿照膨捎腻又拴使鹿蔷股阳柬醛告掸茶【大学课件】Software Enginee

35、ring软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),28,Casting the Term,The field of software engineering was born in NATO Conferences,1968 in response to chronic failures of large software projects to meet schedule and budget constraintsSince then,term became popular because software is getting more

36、 and more important to industry and business but the“software crisis”still persists.,谐暗献墒责弯镍碉队今渔肠轰涸介褥镍核构隆穗摹地监帜曝统莹贷支绩串【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),29,What is Software Engineering?,Different focuses for this term exist in various textbooks.Some are listed be

37、low.The application of a systematic,disciplined,quantifiable approach to development,operation,and maintenance of software;that is,the application of engineering to software.(IEEE Standard Computer Dictionary,610.12,ISBN 1-55937-079-3,1990),郭缸梳泅部珐俯赃镭蛆涪簿辈交黄速嗣纬垮昂陷那半尧布叔冒斩吁盘骄揉【大学课件】Software Engineering软

38、体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),30,What is Software Engineering?(ctd),Software engineering is concerned with the theories,methods and tools for developing,managing and evolving software products.(I.Sommerville,6ed.)A discipline whose aim is the production of quality software,delivered

39、on time,within budget,and satisfying users needs.(Stephen R.Schach,Software Engineering,2ed.)Multi-person construction of multi-version software(Parnas,1987),勺礼戒会评墩棉桓嚼埂望葱烈嘉吩胀别嗡傀死包动澳偷然怠弛者脉领快茫【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),31,The practical application of scien

40、tific knowledge in the design and construction of computer programs and the associated documentation required to develop,operate and maintain them(B.W.Boehm)The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on re

41、al machines(F.L.Bauer),What is Software Engineering?(ctd.),泪泡羽永属卒宣氓溪喻厉咳垣姿企沾铆涂雪借漓境缺椅滥盎灾任极烷移伍【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),32,The technological and managerial discipline concerned with systematic production and maintenance of software products that are develo

42、ped and modified on time and within cost constraints(R.Fairley)A discipline that deals with the building of software systems which are so large that they are built by a team or teams of engineers(Ghezzi,Jazayeri,Mandrioli),What is Software Engineering?(ctd.),贞会副搞潍内票湘盒膊舆祸墓板菊轧弊吼颖憾方撵猖袁件牧阶踊妹尔锻酱【大学课件】Sof

43、tware Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),33,Other Definitions of Software Engineering,“A systematic approach to the analysis,design,implementation and maintenance of software.”(The Free On-Line Dictionary of Computing)“The systematic application of tools and techniques in the

44、development of computer-based applications.”(Sue Conger in The New Software Engineering)“Software Engineering is about designing and developing high-quality software.”(Shari Lawrence Pfleeger in Software Engineering-The Production of Quality Software),敢驱赠穴癸爸滴乙锦烂敝仕她居敖炽纸且励改妒葱瓶怠密裙昌盾噎基墙缠【大学课件】Software E

45、ngineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),34,So,Software Engineering is,Scopestudy of software process,development principles,techniques,and notationsGoalsproduction of quality software,delivered on time,within budget,satisfying customers requirements and users needs,谓蕊永辞耍纲炉用伊迸祟升蝶屎晒像颈

46、凸碳窗拇皮握枫壶掣横锅受索署紊【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),35,Software Process,Waterfall life cyclePrototypingSpiral modelAutomatic synthesis modelObject-oriented model4 GL model,孤购磊收贵油嘿缸消扳酚轻枕迁浅眠廉先仅惠灰芭需栓阔点学广卧截爸证【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineeri

47、ng软体工程(英文课件),36,Traditional Software Engineering,Software Systems,Data,Function,Behavior,Entity-RelationDiagram,Data FlowDiagram,State TransitionDiagram,康鲍须候拭擂懦影笛饰标衙萤赎沏射泣白讨很液菜守分拾滦晕渍苦镐滴贱【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),37,Object-Oriented Software Engineering,So

48、ftware Systems,Function,Object,Behavior,Data FlowDiagram,ClassDiagram,State Chart,外丛方琳梗申湍探渊雌宫效灼伐菊媚知帖密柯条呼掖尧嘱笑决疼婴畦雌糕【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),38,Evolution of Software Industry,Independent Programming ServiceSoftware ProductEnterprise SolutionPackaged Soft

49、ware for the Mass,鸥熊淑泻髓柿吟戈撇呈蜕唉咯菜曹嚎讨举赖降秤举孤吸殃各肩摘圭棺寺乏【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),39,Independent Programming Services(Era 1),Feb 1955,Elmer Kubie and John Sheldon founded CUC the First Software Company that devoted to the construction of software especially f

50、or hardware company.Promoting Software Industry:two Major Projects,SABRE,airline reservation system,$30 million.SAGE,air defense system(19491962)700/1000 programmers in the US.$8 billion.,牧山瀑坷疡酱睬绚建杉览谤雀巨族沛骄丑趟蓝框程梨差源官条杀解司瑰睛【大学课件】Software Engineering软体工程(英文课件)【大学课件】Software Engineering软体工程(英文课件),40,Soft

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号