软件开发概念和设计中英文对照外文翻译文献.docx

上传人:b****7 文档编号:11240026 上传时间:2023-02-26 格式:DOCX 页数:11 大小:23.55KB
下载 相关 举报
软件开发概念和设计中英文对照外文翻译文献.docx_第1页
第1页 / 共11页
软件开发概念和设计中英文对照外文翻译文献.docx_第2页
第2页 / 共11页
软件开发概念和设计中英文对照外文翻译文献.docx_第3页
第3页 / 共11页
软件开发概念和设计中英文对照外文翻译文献.docx_第4页
第4页 / 共11页
软件开发概念和设计中英文对照外文翻译文献.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

软件开发概念和设计中英文对照外文翻译文献.docx

《软件开发概念和设计中英文对照外文翻译文献.docx》由会员分享,可在线阅读,更多相关《软件开发概念和设计中英文对照外文翻译文献.docx(11页珍藏版)》请在冰豆网上搜索。

软件开发概念和设计中英文对照外文翻译文献.docx

软件开发概念和设计中英文对照外文翻译文献

 

中英文对照外文翻译

 

外文资料原文

SoftwareDevelopmentConceptsandDesignMethodologies

Duringthe1960s,mainframesandhigherlevelprogramminglanguageswereappliedtomanyproblemsincludinghumanresourcesystems,reservationsystems,andmanufacturingsystems.Computersandsoftwarewereseenasthecureallformanybusinessissuesweresometimesappliedblindly.Systemssometimesfailedtosolvetheproblemforwhichtheyweredesignedformanyreasonsincluding:

•Inabilitytosufficientlyunderstandcomplexproblems

•Notsufficientlytakingintoaccountend-userneeds,theorganizationalenvironment,andperformancetradeoffs

•Inabilitytoaccuratelyestimatedevelopmenttimeandoperationalcosts

•Lackofframeworkforconsistentandregularcustomercommunications

Atthistime,theconceptofstructuredprogramming,top-downdesign,stepwiserefinement,andmodularityemerged.Structuredprogrammingisstillthemostdominantapproachtosoftwareengineeringandisstillevolving.Thesefailuresledtotheconceptof"softwareengineering"basedupontheideathatanengineering-likedisciplinecouldbeappliedtosoftwaredesignanddevelopment.

Softwaredesignisaprocesswherethesoftwaredesignerappliestechniquesandprinciplestoproduceaconceptualmodelthatdescribesanddefinesasolutiontoaproblem.Inthebeginning,thisdesignprocesshasnotbeenwellstructuredandthemodeldoesnotalwaysaccuratelyrepresenttheproblemofsoftwaredevelopment.However,designmethodologieshavebeenevolvingtoaccommodatechangesintechnologycoupledwithourincreasedunderstandingofdevelopmentprocesses.

Whereasearlydesignmethodsaddressedspecificaspectsofthedevelopmentprocess,currentmethodsattempttoaddresstheentirescopeofsoftwaredevelopment.Softwaredesignmethodsareoftenclassifiedinreferencetotheperiodinwhichtheywereintroducedandtheproblemsatthattime.Drivenbycodingandtestingproblems,toolsandmethodsweredeveloped.Earlymethodsfocusedonmodularityandtop-downdevelopment,andinformationhidingthroughabstraction.Thisledtothedevelopmentofstructuredlanguages,structuredanalysis,anddataflowanalysis.

Inthelastdecadeorso,theexpenseinvolvedinautomationhasshiftedfromhardwaretopeople.Therefore,thesoftwareengineeringcommunityhasbeenfocusedonobjectoriented(O-O)designandtheconceptofre-usablecodeinordertoreducethehumancostcomponent.InefficientdesignsanddevelopmentmethodologieshavebeenaddressedwithComputerAidedSoftwareEngineering(CASE)tools,andfourthgenerationdesignlanguages.Thishasbeendoneinanattemptreplacethetraditionalwaterfalllifecycleprocessmodelunderwhichmostexistingsoftwarehasbeendeveloped.

一、SoftwareDesignFundamentals

Softwaredesignmethodsallaimtoprovidethesoftwaredesignerwithasystemblueprint.Thisblueprintusuallyhasthreeaspects:

data,architectural,andprocedural.

•Datadesignreferstothedata'sorganization,relationships,accessandprocessingmethods.

•Architecturaldesigndefinesthecomponentsofthesystemandtheirrelationships.

•Proceduraldesignbuildsonthedataandarchitecturaldesignphasestodescribetheprocessingdetailsofthesystem.

Eventhoughtherearenumerousdesignmethodologies,theirbasicconceptsareverysimilar-Allsoftwaredesignmethodspartitiontheproblemandsoftwareintosmallerpiecesinordertoreducecomplexity.Theyallstrivetoidentifydatastructuresandfunctions,andprovidemeasurementsforsoftwarequality.Someofthecommonprinciplesinsoftwaredesigninclude:

stepwiserefinement,softwarearchitecture,programstructure,datastructure,softwareprocedures,modularity,abstraction,andinformationhiding.

二、ModernDesignMethodologies

Conventionalsoftwaredevelopmentpracticescangenerallybemappedontothetraditionallife-cyclephasesofanalysis,functionalspecification,design,implementation,testing,andmaintenance.Thisthoughtprocessisinadequatefortoday'scomplexinformationsystems.Asthedemandforsoftwareisgrowingmuchfasterthanthenumberofdevelopers,adheringtoconventionaltechniquessuchasthewaterfallmethodrequirestoomuchtime,toomanypeople,andisdifficulttomanage.Hence,manynewsoftwaredevelopmenttechnologieshavearisen.Newlydevelopedpracticesandmodelsdonotattempttoseparatephasesofsoftwaredevelopment,suchasspecificationandimplementation,butinsteadfocusontheconceptofprogramtransformationthroughstepwiserefinementanditeration.

1、Object-OrientedTechnology

Object-Oriented(O-O)softwaredesigntechnologyisfundamentallydifferentfromthetraditionalmethodsdescribedabove.Withtraditionalmethods,eachmoduleisrecognizedamajorstepintheoverallprocessandtheprocessgoesfromonesteptothenext.Ontheotherhand,O-Odesignisstructuredaroundamodelofobjectsandthefunctionstheyperform.

O-OprogrammingcanbetracedtothesimulationlanguageSIMULA,ahighlevellanguagedevelopedinthelate60'sthatintroducedobjectclassesasamethodtoencapsulatedata.Later,inthe1970s,Smalltalkwasintroducedasacompletegraphicuserinterface(GUI)environmentforO-Oprogramming.Even30yearslater,SmalltalkisstillthestandardagainstwhichallotherO-Olanguagesaremeasured.O-OsoftwaredevelopmentmethodologieshavebecomepopularinthelastdecadeasO-Oconceptshavematured.Atthesametime,thesoftwareindustry'sfocushasshiftedfromcodingandstructuredprocessestosavinglaborcosts,andtimethroughdesignandflexibility.Flexibilityhasbecomepivotalbecausesystemshavebecomelarger,morecomplex,andmorevolatilewithrapidlychangingrequirements.

WithO-O,thereisnorealseparationbetweenanalysisanddesign.Duringanalysis,systemobjectsareidentifiedalongwiththeircharacteristicsandrelationships.Theseobjectsaremaintainedthroughdesignandcodingasdetailisaddedtothedesign.Thisprovidesacommonlanguagethroughouteachstageindevelopment.O-OisbestappliedwithspecificallydesignedO-Odevelopmenttools,butitisimportanttorememberthatasamethodologyisitnotspecifictoanyprogramminglanguage.Manydifferentprogramminglanguagescanbeusedtoimplement0-0technologyanddesignmethodologies.

Insteadofproceduresandfunctionspassingdatabackandforth,inobjectorienteddesign,thesystemisviewedasacollectionofobjectswithmessagespassedfromobjecttoobject.Eachobjecthasitsownsetofassociatedoperations.Object-orienteddesignisbasedontheideaofinformationhidingandmodularizationofbothdataandprocessing.Itisbestusedwhenneitherdatastructurenorprocessingoperationsarewelldefinedaheadoftime.Thisisquiteusefulintoday'sbusinessenvironmentwhererequirementsarealwayschangingandnotverywelldefined.Thus,ithasbecomequitepopular!

Theconceptofobjectsperformingservicesisanaturalwayofthinkingforbothdevelopersandcustomers.Thisfacilitatesunderstandingtheproblemdomainandamorenaturaldesign.Inaddition,therearemanybenefitsofobject-orienteddevelopment.Theseinclude:

•Inheritancecapitalizesonthecommonaltyofattributesandservicesallowingcodeandobjectstobere-used.

.Informationhidingmakessystemsmorestablebylocalizingchangestoobjectsandtherebymakingthemreusable.

.Theobject-orienteddevelopmentprocessisconsistentfromanalysis,throughdesign,tocoding.

MoreinformationonObjectOrientedProgrammingprinciplescanbefoundinChapter4-OrganizationofProgrammingLanguagesandProgrammingConcepts.

2、Prototyping

Prototypingwasinventedbecauseendusersparticipatinginthedevelopmentphasefounditdifficulttounderstandrequirementspecificationsandconceptualmodels.However,whenitfirstbeganbeingusedinthe1980s,mostconventionallifecycledevelopersconsidereditexpensiveandtimeconsuming.

Sincethattime,usersanddevelopershaveusedprototypessuccessfullyasacommunicationstooltodemonstratesystemrequirements.Afterseveralprototypeiterations,developershaveabetterunderstandingofuserrequirementsandusershaveabetterideaofhowthesystemwilleventuallywork,look,andfeel.Prototypinghasproventobeaneffectivewayofunderstandingtheusers'needsandproblemsandeliminatingcostlyreworklaterinthedevelopmentprocessduetomisunderstandingsinrequirements.Prototypingisparticularlyusefulforuserinterfacedevelopmentbecauseitissometimesimpossibletorepresentthelookandfeelofauserinterfaceinaneffectivewayusingwordsanddiagrams.Thisisespeciallycriticalintoday'sdevelopmentenvironmentwhereuserinterfacedevelopmentconsumesanincreasingportionofoverallsystemdevelopmentcosts.

(1)ThrowAwayPrototyping

Therearetwovarietiesofprototyping,Throw-awayprototypingandEvolutionaryprototyping.Throw-awayprototypingisdesignedtovalidateorderivethesystemrequirements.Itmayalsobeusedtoevaluateperformancecapabilitiesanddeterminedesignfeasibility.Oncethedesiredinformationhasbeenobtainedandtheprototype'sobjectivehasbeenfulfilled,theprototypeisthrownawayandconventionalsoftwaredesigncontinues.Throwawayprototypingare:

•Usedtoreducerequirementsriskandfacilitateunderstandinguserrequirements.

•Notconsideredasafinalsystem,andisdiscardedafterusebecause:

♦Manysystemcharacteristicsareleftout

♦Theprototypeiswrittenquicklyprimarilyforthepurposeofdemonstrationandthereforemaynotbeoptimallystructuredandconsequentlydifficulttomaintain

Withthrowawayprototyping,someanalyststhinkofaprototypeasadesignorspecificationslanguagetobeu

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

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1