Software Development Life Cycle (SDLC).ppt_第1页
Software Development Life Cycle (SDLC).ppt_第2页
Software Development Life Cycle (SDLC).ppt_第3页
Software Development Life Cycle (SDLC).ppt_第4页
Software Development Life Cycle (SDLC).ppt_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

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

文档简介

softwaredevelopmentlifecycle sdlc you vegottobeverycarefulifyoudon tknowwhereyou regoing becauseyoumightnotgetthere yogiberra capabilitymaturitymodel cmm abench markformeasuringthematurityofanorganization ssoftwareprocesscmmdefines5levelsofprocessmaturitybasedoncertainkeyprocessareas kpa cmmlevels level5 optimizing 1 processchangemanagement technologychangemanagement defectpreventionlevel4 managed 5 softwarequalitymanagement quantitativeprocessmanagementlevel3 defined 10 peerreviews intergroupcoordination softwareproductengineering integratedsoftwaremanagement trainingprogram organizationprocessdefinition organizationprocessfocus level2 repeatable 15 softwareconfigurationmanagement softwarequalityassurance softwareprojecttrackingandoversight softwareprojectplanning requirementsmanagementlevel1 initial 70 sdlcmodel aframeworkthatdescribestheactivitiesperformedateachstageofasoftwaredevelopmentproject waterfallmodel requirements definesneededinformation function behavior performanceandinterfaces design datastructures softwarearchitecture interfacerepresentations algorithmicdetails implementation sourcecode database userdocumentation testing waterfallstrengths easytounderstand easytouseprovidesstructuretoinexperiencedstaffmilestonesarewellunderstoodsetsrequirementsstabilitygoodformanagementcontrol plan staff track workswellwhenqualityismoreimportantthancostorschedule waterfalldeficiencies allrequirementsmustbeknownupfrontdeliverablescreatedforeachphaseareconsideredfrozen inhibitsflexibilitycangiveafalseimpressionofprogressdoesnotreflectproblem solvingnatureofsoftwaredevelopment iterationsofphasesintegrationisonebigbangattheendlittleopportunityforcustomertopreviewthesystem untilitmaybetoolate whentousethewaterfallmodel requirementsareverywellknownproductdefinitionisstabletechnologyisunderstoodnewversionofanexistingproductportinganexistingproducttoanewplatform highriskfornewsystemsbecauseofspecificationanddesignproblems lowriskforwell understooddevelopmentsusingfamiliartechnology v shapedsdlcmodel avariantofthewaterfallthatemphasizestheverificationandvalidationoftheproduct testingoftheproductisplannedinparallelwithacorrespondingphaseofdevelopment v shapedsteps projectandrequirementsplanning allocateresourcesproductrequirementsandspecificationanalysis completespecificationofthesoftwaresystemarchitectureorhigh leveldesign defineshowsoftwarefunctionsfulfillthedesigndetaileddesign developalgorithmsforeacharchitecturalcomponent production operationandmaintenance provideforenhancementandcorrectionssystemandacceptancetesting checktheentiresoftwaresysteminitsenvironmentintegrationandtesting checkthatmodulesinterconnectcorrectlyunittesting checkthateachmoduleactsasexpectedcoding transformalgorithmsintosoftware v shapedstrengths emphasizeplanningforverificationandvalidationoftheproductinearlystagesofproductdevelopmenteachdeliverablemustbetestableprojectmanagementcantrackprogressbymilestoneseasytouse v shapedweaknesses doesnoteasilyhandleconcurrenteventsdoesnothandleiterationsorphasesdoesnoteasilyhandledynamicchangesinrequirementsdoesnotcontainriskanalysisactivities whentousethev shapedmodel excellentchoiceforsystemsrequiringhighreliability hospitalpatientcontrolapplicationsallrequirementsareknownup frontwhenitcanbemodifiedtohandlechangingrequirementsbeyondanalysisphasesolutionandtechnologyareknown protoyping basicsteps identifybasicrequirementsincludinginputandoutputinfodetails e g security generallyignoreddevelopinitialprototypeuifirstreviewcustomers end usersreviewandgivefeedbackreviseandenhancetheprototype specsnegotiationaboutscopeofcontractmaybenecessary dimensionsofprototyping horizontalprototypebroadviewofentiresystem sub systemfocusisonuserinteractionmorethanlow levelsystemfunctionality e g databsaeaccess usefulfor confirmationofuirequirementsandsystemscopedemonstrationversionofthesystemtoobtainbuy infrombusiness customersdeveloppreliminaryestimatesofdevelopmenttime cost effort dimensionsofprototyping verticalprototypemorecompleteelaborationofasinglesub systemorfunctionusefulfor obtainingdetailedrequirementsforagivenfunctionrefiningdatabasedesignobtaininginfoonsysteminterfaceneedsclarifyingcomplexrequirementsbydrillingdowntoactualsystemfunctionality typesofprototyping throwaway rapid close endedprototypingcreationofamodelthatwillbediscardedratherthanbecomingpartofthefinaldeliveredsoftwareafterpreliminaryrequirementsgathering usedtovisuallyshowtheuserswhattheirrequirementsmaylooklikewhenimplementedfocusisonquicklydevelopingthemodelnotongoodprogrammingpracticescanwizardofozthings fidelityofprotype low fidelitypaper pencilmimicsthefunctionality butdoesnotlooklikeit fidelityofprotype mediumtohigh fidelityguibuilder clickdummy prototype lookslikethesystem butdoesnotprovidethefunctionalityorprovidefunctionality buthaveitbegeneralandnotlinkedtospecificdata throwawayprototypingsteps writepreliminaryrequirementsdesigntheprototypeuserexperiences usestheprototype specifiesnewrequirementsrepeatifnecessarywritethefinalrequirementsdeveloptherealproducts evolutionaryprototyping akabreadboardprototypinggoalistobuildaveryrobustprototypeinastructuredmannerandconstantlyrefineittheevolutionaryprototypeformstheheartofthenewsystemandisaddedtoandrefinedallowthedevelopmentteamtoaddfeaturesormakechangesthatwerenotconceivedintheinitialrequirements evolutionaryprototypingmodel developersbuildaprototypeduringtherequirementsphaseprototypeisevaluatedbyendusersusersgivecorrectivefeedbackdevelopersfurtherrefinetheprototypewhentheuserissatisfied theprototypecodeisbroughtuptothestandardsneededforafinalproduct epsteps apreliminaryprojectplanisdevelopedanpartialhigh levelpapermodeliscreatedthemodelissourceforapartialrequirementsspecificationaprototypeisbuiltwithbasicandcriticalattributesthedesignerbuildsthedatabaseuserinterfacealgorithmicfunctionsthedesignerdemonstratestheprototype theuserevaluatesforproblemsandsuggestsimprovements thisloopcontinuesuntiltheuserissatisfied epstrengths customerscan see thesystemrequirementsastheyarebeinggathereddeveloperslearnfromcustomersamoreaccurateendproductunexpectedrequirementsaccommodatedallowsforflexibledesignanddevelopmentsteady visiblesignsofprogressproducedinteractionwiththeprototypestimulatesawarenessofadditionalneededfunctionality incrementalprototyping finalproductbuiltasseparateprototypesattheend theprototypesaremergedintoafinaldesign extremeprototyping oftenusedforwebapplicationsdevelopmentbrokendowninto3phases eachbasedonthepreceding1staticprototypeconsistingofhtmlpagesscreenareprogrammedandfullyfunctionalusingasimulatedserviceslayerfullyfunctionaluiisdevelopedwithlittleregardtotheservices otherthantheircontractservicesareimplemented prototypingadvantages reducedtimeandcostcanimprovethequalityofrequirementsandspecificationsprovidedtodevelopersearlydeterminationofwhattheuserreallywantscanresultinfasterandlessexpensivesoftwareimproved increaseduserinvolvementusercanseeandinteractwiththeprototype allowingthemtoprovidebetter morecompletefeedbackandspecsmisunderstandings miscommunicationsrevealedfinalproductmorelikelytosatisfytheirdesiredlook feel performance disadvantagesofprototyping1 insufficientanalysisfocusonlimitedprototypecandistractdevelopersfromanalyzingcompleteprojectmayoverlookbettersolutionsconversionoflimitedprototypesintopoorlyengineeredfinalprojectsthatarehardtomaintainlimitedfunctionalitymaynotscalewellifusedasthebasisofafinaldeliverablemaynotbenoticedifdeveloperstoofocusedonbuildingprototypeasamodel disadvantagesofprototyping2 userconfusionofprototypeandfinishedsystemuserscanthinkthataprototype intendedtobethrownaway isactuallyafinalsystemthatneedstobepolishedunawareofthescopeofprogrammingneededtogiveprototyperobustfunctionalityuserscanbecomeattachedtofeaturesincludedinprototypeforconsiderationandthenremovedfromfinalspecification disadvantagesofprototyping3 developerattachmenttoprototypeifspendagreatdealoftime efforttoproduce maybecomeattachedmighttrytoattempttoconvertalimitedprototypeintoafinalsystembadiftheprototypedoesnothaveanappropriateunderlyingarchitecture disadvantagesofprototyping4 excessivedevelopmenttimeoftheprototypeprototypingsupposedtobedonequicklyifdeveloperslosesightofthis cantrytobuildaprototypethatistoocomplexforthrowawayprototypes thebenefitsrealizedfromtheprototype preciserequirements maynotoffsetthetimespentindevelopingtheprototype expectedproductivityreduceduserscanbestuckindebatesoverprototypedetailsandholdupdevelopmentprocess disadvantagesofprototyping5 expenseofimplementingprototypingstartupcostsofprototypingmaybehighexpensivetochangedevelopmentmethodologiesinplace re training re tooling slowdevelopmentifpropertrainingnotinplacehighexpectationsforproductivityunrealisticifinsufficientrecognitionofthelearningcurvelowerproductivitycanresultifoverlooktheneedtodevelopcorporateandprojectspecificunderlyingstructuretosupportthetechnology bestusesofprototyping mostbeneficialforsystemsthatwillhavemanyinteractionswithendusersthegreatertheinteractionbetweenthecomputerandtheuser thegreaterthebenefitofbuildingaquicksystemfortheusertoplaywithespeciallygoodfordesigninggoodhuman computerinterfaces spiralsdlcmodel addsriskanalysis and4glradprototypingtothewaterfallmodeleachcycleinvolvesthesamesequenceofstepsasthewaterfallprocessmodel spiralquadrant determineobjectives alternativesandconstraints objectives functionality performance hardware softwareinterface criticalsuccessfactors etc alternatives build reuse buy sub contract etc constraints cost schedule interface etc spiralquadrant evaluatealternatives identifyandresolverisks studyalternativesrelativetoobjectivesandconstraintsidentifyrisks lackofexperience newtechnology tightschedules poorprocess etc resolverisks evaluateifmoneycouldbelostbycontinuingsystemdevelopment spiralquadrant developnext levelproduct typicalactivites createadesignreviewdesigndevelopcodeinspectcodetestproduct spiralquadrant plannextphase typicalactivitiesdevelopprojectplandevelopconfigurationmanagementplandevelopatestplandevelopaninstallationplan spiralmodelstrengths providesearlyindicationofinsurmountablerisks withoutmuchcostusersseethesystemearlybecauseofrapidprototypingtoolscriticalhigh riskfunctionsaredevelopedfirstthedesigndoesnothavetobeperfectuserscanbecloselytiedtoalllifecyclestepsearlyandfrequentfeedbackfromuserscumulativecostsassessedfrequently spiralmodelweaknesses timespentforevaluatingriskstoolargeforsmallorlow riskprojectstimespentplanning resettingobjectives doingriskanalysisandprototypingmaybeexcessivethemodeliscomplexriskassessmentexpertiseisrequiredspiralmaycontinueindefinitelydevelopersmustbereassignedduringnon developmentphaseactivitiesmaybehardtodefineobjective verifiablemilestonesthatindicatereadinesstoproceedthroughthenextiteration whentousespiralmodel whencreationofaprototypeisappropriatewhencostsandriskevaluationisimportantformediumtohigh riskprojectslong termprojectcommitmentunwisebecauseofpotentialchangestoeconomicprioritiesusersareunsureoftheirneedsrequirementsarecomplexnewproductlinesignificantchangesareexpected researchandexploration roleplayinggameforse s housekeeping individualassignment postmortem peerreviewfinalpresentations demosjuly26 28 25minutesper 8minutepresentation 10minutedemo 7minutesquestionscourseevaluationsthisthursday 4 05pm theriseandfallofwaterfall agilesoftwaredevelopmentlifecycles agilesdlc s speeduporbypassoneormorelifecyclephasesusuallylessformalandreducedscopeusedfortime criticalapplicationsusedinorganizationsthatemploydisciplinedmethods someagilemethods rapidapplicationdevelopment rad incrementalsdlcscrumextremeprogramming xp adaptivesoftwaredevelopment asd featuredrivendevelopment fdd crystalcleardynamicsoftwaredevelopmentmethod dsdm rationalunifyprocess rup agilevswaterfallpropaganda rapidapplicationdevelopment rad model rapidapplicationmodel rad requirementsplanningphase aworkshoputilizingstructureddiscussionofbusinessproblems userdescriptionphase automatedtoolscaptureinformationfromusersconstructionphase productivitytools suchascodegenerators screengenerators etc insideatime box dountildone cutoverphase installationofthesystem useracceptancetestingandusertraining requirementsplanningphase combineselementsofthesystemplanningandsystemsanalysisphasesofthesystemdevelopmentlifecycle sdlc users managers anditstaffmembersdiscussandagreeonbusinessneeds projectscope constraints andsystemrequirements itendswhentheteamagreesonthekeyissuesandobtainsmanagementauthorizationtocontinue userdesignphase usersinteractwithsystemsanalystsanddevelopmodelsandprototypesthatrepresentallsystemprocesses inputs andoutputs typicallyuseacombinationofjointapplicationdevelopment jad techniquesandcasetoolstotranslateuserneedsintoworkingmodels acontinuousinteractiveprocessthatallowsuserstounderstand modify andeventuallyapproveaworkingmodelofthesystemthatmeetstheirneeds jadtechniques http en wikipedia org wiki joint application designcasetoolshttp en wikipedia org wiki computer aided software engineering constructionphase focusesonprogramandapplicationdevelopmenttasksimilartothesdlc however userscontinuetoparticipateandcanstillsuggestchangesorimprovementsasactualscreensorreportsaredeveloped itstasksareprogrammingandapplicationdevelopment coding unit integration andsystemtesting cutoverphase resemblesthefinaltasksinthesdlcimplementationphase comparedwithtraditionalmethods theentireprocessiscompressed asaresult thenewsystemisbuilt delivered andplacedinoperationmuchsooner tasksaredataconversion full scaletesting systemchangeover usertraining radstrengths reducedcycletimeandimprovedproductivitywithfewerpeoplemeanslowercoststime boxapproachmitigatescostandscheduleriskcustomerinvolvedthroughoutthecompletecycleminimizesriskofnotachievingcustomersatisfactionandbusinessneedsfocusmovesfromdocumentationtocode wysiwyg usesmodelingconceptstocaptureinformationaboutbusiness data andprocesses radweaknesses accelerateddevelopmentprocessmustgivequickresponsestotheuserriskofneverachievingclosurehardtousewithlegacysystemsrequiresasystemthatcanbemodularizeddevelopersandcustomersmustbecommittedtorapid fireactivitiesinanabbreviatedtimeframe whentouserad reasonablywell knownrequirementsuserinvolvedthroughoutthelifecycleprojectcanbetime boxedfunctionalitydeliveredinincrementshighperformancenotrequiredlowtechnicalriskssystemcanbemodularized incrementalsdlcmodel constructapartialimplementationofatotalsystemthenslowlyaddincreasedfunctionalitytheincrementalmodelprioritizesrequirementsofthesystemandthenimplementsthemingroups eachsubsequentreleaseofthesystemaddsfunctiontothepreviousrelease untilalldesignedfunctionalityhasbeenimplemented incrementalmodelstrengths develophigh riskormajorfunctionsfirsteachreleasedeliversanoperationalproductcustomercanrespondtoeachbuilduses divideandconquer breakdownoftaskslowersinitialdeliverycostinitialproductdeliveryisfastercustomersgetimportantfunctionalityearlyriskofchangingrequirementsisreduced incrementalmodelweaknesses requiresgoodplanninganddesignrequiresearlydefinitionofacompleteandfullyfunctionalsystemtoallowforthedefinitionofincrementswell definedmoduleinterfacesarerequired somewillbedevelopedlongbeforeothers totalcostofthecompletesystemisnotlower whentousetheincrementalmodel risk funding schedule programcomplexity orneedforearlyrealizationofbenefits mostoftherequirementsareknownup frontbutareexpectedtoevolveovertimeaneedtogetbasicfunctionalitytothemarketearlyonprojectswhichhavelengthydevelopmentschedulesonaprojectwithnewtechnology scrum scrum scrumin13seconds scrumadvantages agilescrumhelpsthecompanyinsavingtimeandmoney scrummethodologyenablesprojectswherethebusinessrequirementsdocumentationishardtoquantifytobesuccessfullydeveloped fastmoving cuttingedgedevelopmentscanbequicklycodedandtestedusingthismethod asamistakecanbeeasilyrectified scrumadvantages itisalightlycontrolledmethodwhichinsistsonfrequentupdatingoftheprogress

温馨提示

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

评论

0/150

提交评论