版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
Chapter2ModelingtheProcessandLifeCycleShariL.PfleegerJoanneM.Atlee4thEditionContents2.1TheMeaningofProcess2.2SoftwareProcessModels2.3ToolsandTechniquesforProcessModeling2.4PracticalProcessModeling2.5InformationSystemExample2.6RealTimeExample2.7WhatthisChapterMeansforYouChapter2ObjectivesWhatwemeanbya“process”Softwaredevelopmentproducts,processes,andresourcesSeveralmodelsofthesoftwaredevelopmentprocessToolsandtechniquesforprocessmodeling2.1TheMeaningofProcessAprocess:aseriesofstepsinvolvingactivities,constrains,andresourcesthatproduceanintendedouputofsomekindAprocessinvolvesasetoftoolsandtechniques2.1TheMeaningofProcess
ProcessCharacteristicsPrescribesallmajorprocessactivitiesUsesresources,subjecttosetofconstraints(suchasschedule)ProducesintermediateandfinalproductsMaybecomposedofsubprocesseswithhierarchyorlinksEachprocessactivityhasentryandexitcriteriaActivitiesareorganizedinsequence,sotimingisclearEachprocesshasguidingprinciples,includinggoalsofeachactivityConstraintsmayapplytoanactivity,resourceorproduct2.1TheMeaningofProcess
TheImportanceofProcessesImposeconsistencyandstructureonasetofactivitiesGuideustounderstand,control,examine,andimprovetheactivitiesEnableustocaptureourexperiencesandpassthemalong2.2SoftwareProcessModels
ReasonsforModelingaProcessToformacommonunderstandingTofindinconsistencies,redundancies,omissionsTofindandevaluateappropriateactivitiesforreachingprocessgoalsTotailorageneralprocessforaparticularsituationinwhichitwillbeused2.2SoftwareProcessModels
SoftwareLifeCycleWhenaprocessinvolvesbuildingasoftware,theprocessmaybereferredtoassoftwarelifecycleRequirementsanalysisanddefinitionSystem(architecture)designProgram(detailed/procedural)designWritingprograms(coding/implementation)Testing:unit,integration,systemSystemdelivery(deployment)Maintenance2.2SoftwareProcessModels
SoftwareDevelopmentProcessModelsWaterfallmodelVmodelPrototypingmodelOperationalspecificationTransformationalmodelPhaseddevelopment:incrementsanditerationsSpiralmodelAgilemethods2.2SoftwareProcessModels
WaterfallModelOneofthefirstprocessdevelopmentmodelsproposedWorksforwellunderstoodproblemswithminimalornochangesintherequirementsSimpleandeasytoexplaintocustomersItpresentsaveryhigh-levelviewofthedevelopmentprocesssequenceofprocessactivitiesEachmajorphaseismarkedbymilestonesanddeliverables(artifacts)2.2SoftwareProcessModels
WaterfallModel(continued)2.2SoftwareProcessModels
WaterfallModel(continued)ThereisnoiterationinwaterfallmodelMostsoftwaredevelopmentsapplyagreatmanyiterations2.2SoftwareProcessModels
Sidebar2.1DrawbacksofTheWaterfallModelProvidesnoguidancehowtohandlechangestoproductsandactivitiesduringdevelopment(assumesrequirementscanbefrozen)ViewssoftwaredevelopmentasmanufacturingprocessratherthanascreativeprocessThereisnoiterativeactivitiesthatleadtocreatingafinalproductLongwaitbeforeafinalproduct2.2SoftwareProcessModels
WaterfallModelwithPrototypeAprototypeisapartiallydevelopedproductPrototypinghelpsdevelopersassessalternativedesignstrategies(designprototype)usersunderstandwhatthesystemwillbelike(userinterfaceprototype)Protopypingisusefulforverificationandvalidation2.2SoftwareProcessModels
WaterfallModelwithPrototype(continued)Waterfallmodelwithprototyping2.2SoftwareProcessModels
VModelAvariationofthewaterfallmodelUsesunittestingtoverifyproceduraldesignUsesintegrationtestingtoverifyarchitectural(system)designUsesacceptancetestingtovalidatetherequirementsIfproblemsarefoundduringverificationandvalidation,theleftsideoftheVcanbere-executedbeforetestingontherightsideisre-enacted2.2SoftwareProcessModels
VModel(continued)2.2SoftwareProcessModels
PrototypingModelAllowsrepeatedinvestigationoftherequirementsordesignReducesriskanduncertaintyinthedevelopment2.2SoftwareProcessModels
OperationalSpecificiationModelRequirementsareexecuted(examined)andtheirimplicationevaluatedearlyinthedevelopmentprocessFunctionalityandthedesignareallowedtobemerged2.2SoftwareProcessModels
TransformationalModelFewermajordevelopmentstepsAppliesaseriesoftransformationstochangeaspecificationintoadeliverablesystemChangedatarepresentationSelectalgorithmsOptimizeCompileReliesonformalismRequiresformalspecification(toallowtransformations)2.2SoftwareProcessModels
TransformationalModel(continued)2.2SoftwareProcessModels
PhasedDevelopment:IncrementsandIterationsShortercycletimeSystemdeliveredinpiecesenablescustomerstohavesomefunctionalitywhiletherestisbeingdevelopedAllowstwosystemsfunctioninginparalleltheproductionsystem(releasen):currentlybeingusedthedevelopmentsystem(releasen+1):thenextversion2.2SoftwareProcessModels
PhasedDevelopment:IncrementsandIterations
(continued)2.2SoftwareProcessModels
PhasedDevelopment:IncrementsandIterations
(continued)Incrementaldevelopment:startswithsmallfunctionalsubsystemandaddsfunctionalitywitheachnewreleaseIterativedevelopment:startswithfullsystem,thenchangesfunctionalityofeachsubsystemwitheachnewrelease2.2SoftwareProcessModels
PhasedDevelopment:IncrementsandIterations
(continued)PhaseddevelopmentisdesirableforseveralreasonsTrainingcanbeginearly,eventhoughsomefunctionsaremissingMarketscanbecreatedearlyforfunctionalitythathasneverbeforebeenofferedFrequentreleasesallowdeveloperstofixunanticipatedproblemsglobalyandquicklyThedevelopmentteamcanfocusondifferentareasofexpertisewithdifferentreleases2.2SoftwareProcessModels
SpiralModelSuggestedbyBoehm(1988)CombinesdevelopmentactivitieswithriskmanagementtominimizeandcontrolrisksThemodelispresentedasaspiralinwhicheachiterationisrepresentedbyacircuitaroundfourmajoractivitiesPlanDeterminegoals,alternatives,andconstraintsEvaluatealternativesandrisksDevelopandtest2.2SoftwareProcessModels
SpiralModel(continued)2.2SoftwareProcessModels
AgileMethodsEmphasisonflexibilityinproducingsoftwarequicklyandcapablyAgilemanifesto(宣言)ValueindividualsandinteractionsoverprocessandtoolsPrefertoinvesttimeinproducingworkingsoftwareratherthaninproducingcomprehensivedocumentationFocusoncustomercollaborationratherthancontractnegotiationConcentrateonrespondingtochangeratherthanoncreatingaplanandthenfollowingit2.2SoftwareProcessModels
AgileMethods:ExamplesofAgileProcessExtremeprogramming(XP)Crystal:acollectionofapproachesbasedonthenotionthateveryprojectneedsauniquesetofpoliciesandconventionsScrum:30-dayiterations;multipleself-organizingteams;daily“scrum”coordinationAdaptivesoftwaredevelopment(ASD)2.2SoftwareProcessModels
AgileMethods:ExtremeProgrammingEmphasisonfourcharacteristicsofagilityCommunication:continualinterchangebetweencustomersanddevelopersSimplicity:selectthesimplestdesignorimplementationCourage:commitmenttodeliveringfunctionalityearlyandoftenFeedback:loopsbuiltintothevariousactivititesduringthedevelopmentprocess2.2SoftwareProcessModels
AgileMethods:TwelveFacetsofXPTheplanninggame(customerdefinesvalue)SmallreleasesMetaphor(commonvision,commonnames)SimpledesignWritingtestsfirstRefactoringPairprogrammingCollectiveownershipContinuousintegration(smallincrements)Sustainablepace(40hours/week)On-sitecustomerCodingstandards2.2SoftwareProcessModels
Sidebar2.2WhenisExtremeTooExtreme?Extremeprogramming'spracticesareinterdependentAvulnerabilityifoneofthemismodifiedRequirementsexpressedasasetoftestcasesmustbepassedbythesoftwareSystempassesthetestsbutisnotwhatthecustomerispayingforRefactoringissueDifficulttoreworkasystemwithoutdegradingitsarchitecture2.2SoftwareProcessModels
Sidebar2.3CollectionsofProcessModelsDevelopmentprocessisaproblem-solvingactivityCurtis,Krasner,andIscoe(1988)performedafieldstudytodeterminewhichproblem-solvingfactorstocapturedinprocessmodelTheresultssuggestalayeredbehavioralmodelassupplementtothetraditionalmodelProcessmodelshouldnotonlydescribeseriesoftasks,butalsoshoulddetailfactorsthatcontributetoaproject'sinherentuncertaintyandriskDiscussion:SelectingModels-1Foreachofthefollowing,whatlifecyclesmightcontributeusefulelements,andwhy?ProjectAisaddingthreeneweditfunctionsand5newprinteroptionstoanewreleaseofawordprocessingproduct.ProjectBisbuildingafoot-pedaloperatedmouse.Discussion:SelectingModels-2ProjectChastoincorporate3newdivisionsofthecompanythatwererecentlyacquiredintothecorporatenetworkstrategy.Eachofthedivisionshasitsownhomegrownhardwareandsoftware,andallaretobeconvertedtoacommontypeofserverandoperatingsystem.ProjectDneedstoupgradesoftwaretohelpindividualsfiletheirfederaltaxforms.Thenationallegislaturewillbemeetinguntilamonthbeforetheproducthastoship,decidingonlastminutechangestotaxrulesuntilthen.NotationdependsonwhatwewanttocaptureinthemodelThetwomajornotationcategoriesStaticmodel:depictstheprocessDynamicmodel:enactstheprocess2.3ToolsandTechniquesforProcessModelingElementsofaprocessareviewedintermsofseventypesActivitySequenceProcessmodelResourceControlPolicyOrganizationSeveraltemplates,suchasanArtifactDefinitionTemplate2.3ToolsandTechniquesforProcessModeling
StaticModeling:LaiNotation2.3ToolsandTechniquesforProcessModeling
StaticModeling:LaiNotation2.3ToolsandTechniquesforProcessModeling
StaticModeling:LaiNotation(continued)Theprocessofstartingacar2.3ToolsandTechniquesforProcessModeling
StaticModeling:LaiNotation(continued)TransitiondiagramillustratesthetransitionforacarEnablesenactionofprocesstoseewhathappenstoresourcesandartifactsasactivitiesoccurSimulatealternativesandmakechangestoimprovetheprocessExample:systemsdynamicsmodel2.3ToolsandTechniquesforProcessModeling
Dynamic
ModelingIntroducedbyForresterinthe1950'sAbdel-HamidandMadnickappliedittosoftwaredevelopmentOnewaytounderstandsystemdynamicsisbyexploringhowsoftwaredevelopmentprocessaffectsproductivity2.3ToolsandTechniquesforProcessModeling
Dynamic
Modeling:SystemDynamics2.3ToolsandTechniquesforProcessModeling
Dynamic
Modeling:SystemDynamics(continued)PictorialpresentationoffactorsaffectingproductivityArrowsindicatehowchangesinonefactorchangeanother2.3ToolsandTechniquesforProcessModeling
Dynamic
Modeling:SystemDynamics(continued)Asystemdynamicmodelcontainingfourmajorareasaffectingproductivity
2.3ToolsandTechniquesforProcessModeling
Sidebar2.4ProcessProgrammingAprogramtodescribeandenacttheprocessEliminateuncertaintyBasisofanautomatedenvironmenttoproducesoftwareDoesnotcaptureinherentvariabilityofunderlyingdevelopmentprocessImplementationenvironment,skill,experience,understandingthecustomerneedsProvidesonlysequenceoftasksGivesnowarningofimpendingproblems2.4PracticalProcessModeling
MarvelCaseStudiesUsesMarvelprocesslanguage(MPL)Threeconstructs:classes,rules,toolenvelopesThree-partprocessdescriptionrule-basedspecificationofprocessbehaviorobject-orienteddefinitionofmodel’sinformationprocesssetofenvelopestointerfacebetweenMarvelandexternalsoftwaretools2.4PracticalProcessModeling
MarvelCaseStudies(continued)InvolvedtwoAT&TnetworksnetworkcarriedphonecallssignalingnetworkresponsibleforroutingcallsandbalancingthenetworkloadMarvelwasusedtodescribethesignalingfaultresolution2.4PracticalProcessModeling
MarvelCaseStudies(continued)SignalingFaultResolutionProcess2.4PracticalProcessModeling
ExampleofMarvelCommands2.4PracticalProcessModeling
DesirablePropertiesofProcessModelingToolsandTechniquesFacilitateshumanunderstandingandcommunicationSupportsprocessimprovementSupportsprocessmanagementProvidesautomatedguidanceinperformingtheprocessSupportsautomatedprocessexecution2.5InformationSystemExample
PiccadillyTelevisionAdvertisingSystemNeedsasystemthatiseasilymaintainedandchangedRe
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 風力發(fā)電機培訓
- 幾何風大學生職業(yè)生涯規(guī)劃模板
- 保潔儀容儀表服務意識培訓
- 山西省晉城市澤州縣丹河新城水西學校2024-2025學年七年級上學期第一次質(zhì)檢生物試卷(含解析)
- 2024-2025學年江蘇省蘇州市昆山市周莊中學八年級(上)第一次形成性評價數(shù)學試卷(含答案)
- T-XZZL 0033-2024 高粱面(紅面)擦尖傳統(tǒng)美食制作規(guī)程
- 廣東省肇慶市宣卿中學2024-2025學年九年級上學期第一次月考物理試卷
- Windows Server網(wǎng)絡管理項目教程(Windows Server 2022)(微課版)課件項目9 VPN服務器的配置與管理
- 工程結構荷載與可靠度設計原理第一部分小結
- E審通演示培訓專用16
- 人教版英語九年級Unit 13《Were trying to save the earth》全單元教學設計
- 三年級上冊數(shù)學說課稿《5.筆算多位數(shù)乘一位數(shù)(連續(xù)進位)》人教新課標
- 人教版《勞動教育》六上 勞動項目二《晾曬被子》教學設計
- (正式版)QC∕T 1208-2024 燃料電池發(fā)動機用氫氣循環(huán)泵
- (正式版)JC∕T 60022-2024 陶粒窯協(xié)同處置固體廢物技術規(guī)范
- 《中國傳統(tǒng)建筑》課件-中國民居建筑
- 六年級道德與法治期末測試卷加答案(易錯題)
- 《鐵路貨運組織》課件-項目2 整車、零擔貨物運輸過程
- 山東省高等學校教師崗前培訓考試暨教師資格筆試題庫及完整答案(易錯題)
- 新制定《公平競爭審查條例》學習課件
- DZ/T 0452.3-2023 稀土礦石化學分析方法 第3部分:鋰、鈹、鈧、錳、鈷、鎳、銅、鋅、鎵、銣、鈮、鉬、銦、銫、鉭、鎢、鉈、鉛、鉍、釷、鈾及15個稀土元素含量的測定 ICP-MS法(正式版)
評論
0/150
提交評論