版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1WelcometoSoftwareEngineering2PrefaceWhat’sthiscourse?Software+
PhilosophySoftwareprocess–softwarelifecycleMethodsofsoftwaredevelopmentManagementofsoftwaredevelopmentObjectives:
understanding,development,managementofsoftware:--moremethodologythantechnologyTextbook/reference:
1.SoftwareEngineering:apractitioner’sapproachRogerS.Pressman(English,Chinese)McGraw-Hill2.軟件工程實踐教程趙池龍,姜義平,張建電子工業(yè)出版社
3.軟件工程應用實踐教程吳潔明,袁山龍清華大學出版社4.
UML系統(tǒng)分析與應用案例龔振燕人民郵電出版社5.系統(tǒng)分析師UML務實手冊邱鬱惠機械工業(yè)出版社6.PracticalSoftwareEngineering:ACaseStudyApproachL.A.Maciaszek7.從軟件實踐到軟件工程
蔡智明電子工業(yè)出版社3PolicyoffinalmarkingfortheSE10%Participation20%Assignment70%Finalexam5OutlineofthecourseOverviewofSoftwareEngineering
SoftwareProcess:Softwarelifecycle,Processmodel,CMMSystemEngineering,informationengineering
/productengineering,
Feasibilitystudy4.RequirementsEngineering,SystemModeling,FunctionModeling,BehaviorModeling,DataModeling,Datadictionary5.SoftwareDesignPrinciples,ModularDesign,DesignMethods6Object-OrientedMethod:Modelingofscenario,Modelingofsemanticclasses,Modelingofattributes,Modelingofrelationships,ModelingofbehaviorsSoftwareTesting:Testingprinciples,Testcasedesign,TestingstepsManagingSoftwareProject:Peoplemanagement,Projectplanning,Riskmanagement,Softwareconfigurationmanagement
AdvancedTopics:Softwarereuse,CASE,ReverseEngineering/Re-engineering,Formalmethod,etc.
7Philosophies:MethodologyofthinkingThinkingmore,higher,largerandfurtherInvestigation,planningandRMMMbeforedoingSpecification,step-by-stepandkeepingconsistencyCombiningofdifferentareas/approachesBalancingamongalotoffactorsThinkingasanotherroleAnypointcouldbetheseatodiveNevergiveuporgiveupimmediatelyifbelieveyourselfCaptureopportunitiesandcreateopportunitiesReuseyourresources:knowledge,technical,socialPractice-basedandDomain-oriented9WhatisSoftwareEngineering?Firstdefinition:theestablishmentanduseofsoundengineeringprincipleinordertoobtaineconomically
softwarethatisreliableandworksefficientlyonrealmachine
method,lowcost,highqualityIEEE:TheapplicationofengineeringtosoftwareThescience&artofbuildinglargesoftware10ThegoalsofSEToproducesoftwarethatiscorrect.Toproducesoftwarewithaminimumofeffort.ToproducesoftwareatlowestpossiblecostToproducesoftwareinleastpossibletimeToproducesoftwarewithaminimumofmaintenance
Art:
bestbalanceamongthegoals--Myths(神話)?…SEuseful?
11WhatisSoftware?--differentviewsofsoftwareindifferentlevelsSoftware=Programincomputerlanguage
-fromProgramming
???
Software=Program+DataStructure
-fromalgorithmdesignSoftware=Program+Documentation(softwareofsoftware)(requirements,design,programming,testing,maintenance…)
-fromSE13Ch.2SoftwareProcessThelevelsofSE:Quality:ourfocusProcess:howtodoMethod:howtothinkTool:supportandcontrolof*
*method,processandquality
14SoftwareEngineeringALayeredSESoftwareEngineeringa“quality”focusprocessmodelmethodstools15Softwareprocess:softwarelifecycleThecollectionofmajoractivitiesthattakeplaceduringthelifetimeofasoftwaresysteme.g:requirements,design,coding,testing,maintenance17ProcessmodelWaterfallmodel:Linear(線性的)ModelPrototyping:iterative(迭代的)
Rapidapplicationdevelopment(RAD)IncrementaldevelopmentSpiralmodelComponentsbasedmodel:OOprocess,ReuseTool,CASEbasedmodel=>softwareautomationRationalUnifiedProcess:use-case,components-basedarchitecture,iterative+incrementalMicrosoftSolutionFramework.ProcessModel:analysis/design/develop/testing+spiral
Art:combinationoftheaboveprocesses(-登山的故事)--?Processmodeluseful?18AgiledevelopmentXP(eXtremeProgramming)pairprogramming,feedback(change),smallteamScrumMVC(Model-View-Controller)19TheWaterfallModel21EvolutionaryModel:Prototyping22IterativeModelsPrototypingRAD23TheRADModel25TheIncrementalModel26AnEvolutionary(Spiral)Model29inceptionTheUnifiedProcess(UP)30CapabilityMaturityModel/Integration
(CMM/CMMI):
togaugetheprocessofimprovingthesoftwareprocessInitiallevel:withoutprocedure,plan,control,…Repeatablelevel:controloverschedules,costs,…,earliersuccessescanberepeated.Definedlevel:standard,documentedprocessisinplace.Managedlevel:everythingisundercontrolwithquantitativedata.Optimizinglevel:attentionhasshiftedfromproducttoprocess.Thedatagatheredisusedtoimproveprocess.ProductandProcess--eggandchicken?ProductisfromProcess,ProcessisforProduct…Whichoneismoreimportant?31Ch.3SystemEngineeringWhatissystem?Asetorarrangementofthingssorelatedastoformaunityororganicwhole.由相互作用和依賴的若干部分組成的具有特定功能的有機整體,而系統(tǒng)本身又從屬一個更大的系統(tǒng)—錢學森Systemengineering
-veryhot(buzz)word,verymisty(woozy)meaningBasicproblem:Whatismysystem?Overallobjectives:hardware,software,people,database,process,methodContext:youcan’tseetheforestfortrees-BusinessProcess,BPR:BusinessProcessReengineeringInformationengineering
(businessprocess)
+productengineering:32BusinessProcessEngineering
33ProductEngineering34Systemengineering:FeasibilitystudyIdentificationofneedFeasibilitystudy:economic,technical,social,risk…Economicanalysis:costs,benefits,risk…Technicalanalysis:functions,performance,method,tool,people,risk…
Systemengineering:ContractstudyFunctions,Time,Cost,Responsibility,…??Systemengineering:ModelingSystemmodeling–Modeling是系統(tǒng)本質(zhì)的描述,以某種形式(文字,符號,圖表,公式,實物…)表示對系統(tǒng)的認識,模型不是系統(tǒng)本身,是系統(tǒng)的模擬和抽象Decisionmodeling–SelectionModelingSystemspecification–Proposal,Contract--?SystemEngineering&RequirementsEngineering
?--?Whoisbestpeopleforsystemengineer?35ACase:Party1:Univ.vs.Party2:TVBranch.MakingContractofasoftwaredevelopment1.Function:2.Funding:3.Time:……36Ch.4RequirementsEngineeringObjectives:
DiscoveryforrequirementsRefinementforrequirementsModelingforrequirementsSpecificationforrequirementsPeople:developer(systemanalyst,systemengineer)+customer+…Possibleprocedure:communication,problemanalysisandevaluation,modeling,specification,review37Focus:What>HowWhatarerequirementsofthesystem?Howtodo…coding?CommunicationCommonprocess:studyofsystemspecificationprojectplan,investigation,visiting,meeting,…
Helpfulquestions:Whoisbehindtherequestforthiswork?Whowillusethesolution?Canyoushowmetheenvironment?andmeta-questions:questionofquestion,softwareofsoftware,processofprocess(CMM),programofprogram,formofform,dataofdata,knowledgeofknowledge…FacilitatedApplicationSpecificationTechniques–FASTteam+FASTmeeting38RequirementsGatheringFacilitatedApplicationSpecificationTechniquesSoftwareEngineeringGroupCustomerGroup39ThelevelsofrequirementsBusinessrequirementsUserrequirementsFunctionrequirements40ProblemAnalysisPrinciplesUnderstandingtheproblems,informationdomain(concepts,flow,structure)-BusinessmodelingDefiningData:concepts,entity,class…EliminateambiguityFunctions:dataflowbehaviorsofsoftware:controlflow,statetransitionModelinglayeredpartitions(top-down)Multipleviewsofmodel:modelofdata,functions,behaviorsUsingprototype:closed-ended(throwawayprototyping),open-ended(evolutionaryprototyping)Recordingtheorigin&reasonsofeveryrequirement:--Traceability:controlchange;trace
requirement41TheAnalysisModelDataModelBehavioralModelFunctionalModel42Modeling:-StructureofModelingDatamodelingObjects(entity):attributes,relationshipsEntity-RelationshipDiagram(ERD)Datadictionary:Indexing-alphabetic;chapter,pageFunctionModeling:Data-flowdiagram(DFD)BehaviorModeling:State-transitiondiagram(STD),CFDSA-StructuredAnalysis:Notations:ERD+DFD+(CFD+STD)StepwiseRefinement:
layeredpartitions(top-down)Processspecification+(ControlSpecification):naturallanguage,structuredlanguage,table…Modelingtools:PowerDesigner,Visio,RationalRose,Eclipse…SoftwareRequirementsSpecification:Numbering-layerSpecificationReview43DataObjectsandAttributesAdataobjectcontainsasetofattributesthatactasanaspect,quality,character-istic,ordescriptoroftheobjectobject:automobileattributes:makemodelbodytypepriceoptionscode44ERDNotation(0,m)(1,1)objectobjectrelationship12Onecommonform:(0,m)(1,1)object1object2relationshipAnothercommonform:attribute45TheERD:AnExample(1,1)(1,m)placesCustomerrequestforservicegenerates(1,n)(1,1)workorderworktasksmaterialsconsistsoflists(1,1)(1,w)(1,1)(1,i)selectedfromstandardtasktable(1,w)(1,1)46TheFlowModelEverycomputer-basedsystemisaninformationtransformcomputerbasedsysteminputoutput47FlowModelingNotationexternalentityprocessdataflowdatastore48ExternalEntityAproducerorconsumerofdataExamples:aperson,adevice,asensorAnotherexample:computer-basedsystemDatamustalwaysoriginatesomewhereandmustalwaysbesenttosomething49ProcessAdatatransformer(changesinputtooutput)Examples:computetaxes,determinearea,formatreport,displaygraphDatamustalwaysbeprocessedinsomewaytoachievesystemfunction50DataFlowDataflowsthroughasystem,putetriangleareabaseheightareaControlFlow51Input“base,height”Area=base*height/2Output“Area”52DataStoresDataisoftenstoredforlateruse.look-upsensordatasensor#reportrequiredsensor#,type,location,agesensordatasensornumbertype,location,age53Level0:DFDExampleuserprocessingrequestvideosourceNTSCvideosignaldigitalvideoprocessorrequestedvideosignalmonitor54TheDataFlowHierarchyPabxyp1p2p3p4p5abcdefglevel0level155ProcessSpecification(PSPEC)PSPECnarrativepseudocode(PDL)equationstablesdiagramsand/orchartsbubble56MapsintoDFDs:ALookAheadanalysismodeldesignmodel57BehavioralModelingOutsideworldApplicationeventsbehavior58BuildingaDataDictionary59DataDictionaryNotation60DataDictionaryExample61WritingtheSoftwareSpecificationEveryoneknewexactlywhathadtobedoneuntilsomeonewroteitdown!62SpecificationGuidelinesusealayeredformatthatprovidesincreasingdetailasthe"layers"deepen
useconsistentgraphicalnotationandapplytextualtermsconsistently
besuretodefineallacronyms(縮寫詞)
besuretoincludeatableofcontents;ideally,includeanindexand/oraglossary
writeinasimple,unambiguousstyle
alwaysputyourselfinthereader'sposition,"WouldIbeabletounderstandthisifIwasn'tfamiliarwiththesystem?"63SpecificationGuidelines
Watchoutforvaguetermssome,sometimes,often,usually,ordinarily,mostly,...
Whenlistsaregiven,butnotcompleted,besureallitemsareunderstoodetc.,andsoforth,andsoon,suchas
Besurestatedrangesdon'tcontainunstatedassumptionse.g.,Validcodesrangefrom10to100.
Integer?Real?Hex?
Theparametersareinitialized?.
Whenastructureisdescribedinwords,drawapicture64Ch.5Object-OrientedMethodOOprocessmodel–
reuseObjectsandClassesObject:Data(attributes)+theirOperations(methods,services)Class:
-Anentitythatcapturesthecommonpropertiesofagroupofobjects;-Anobjectisaninstanceofaclass;-Anabstractionofobjects/subclassesMessage:sender,receiver,operation,parameter65Encapsulation:data+operations-enclosedbythe“wall”ofclasses/objectsinformationhiding:inaccessibletoothersifIdon’tlike.Inheritance–
reuseSubclass/objectinheritssuperclass(attributes,operations)Newattributes/operationsmaybeaddedtosubclassPolymorphismDifferentoperationshavesamenameOperation(function)overloading66Encapsulation/HidingTheobjectencapsulatesbothdataandthelogicalproceduresrequiredtomanipulatethedataAchieves
“informationhiding”method#1datamethod#2method#4method#5method#6method#367Classstud{private:intnum;charname[10];
…public:voiddisplay(){cout<<“num:”<<num<<ednl;cout<<“name:”<<name<<ednl;
…
}68Classstudent:publicstud{private:intage;charaddr[10];
…public:voiddisplay-1(){cout<<“age:”<<age<<ednl;cout<<“address:”<<addr<<ednl;
…
};Studentstudent1
Classteacher{Mesg:
……student1.display-1
……}69Classfindmax{voidmax(int,int);voidmax(int,int,int);voidmax(int,int,int,int);}voidmax(int,int){……}voidmax(int,int,int){…..}voidmax(int,int,int,int){……}USE:Max(3,5)Max(6,4,9)Max(18,6,9,4)
70OOA–
systemengineering/requirementsengineeringObjectives/tasks:UnderstandingrequirementsSpecifyingclasses(attributes+operations)Specifyingclass-hierarchySpecifyingOOrelationshipsObject-behaviormodelingDozensofOOAmethods:Coad&Yourdon,Rambaugh(OMT),Booch,Jocobson(OOSE)…RationalUnifiedProcess,UMLOOmodelingnotations-UML:UnifiedModelingLanguageOOlevels:applications,domain,enterpriseConformtobasicprinciplesofSE/RE71OOModelingUsecase,scenario:userrequirementsscenario-softwarefunctions,instanceofuse-caseUse-case-interactionbetweenan“actor”andthesystemSpecifyingclasses(attributes+operations):
CRC(ClassResponsibilityCollaborator)StaticmodelingSpecifyingclass-hierarchy:Gen-spec,Whole-partSpecifyingOOrelationships:is-a,has-a,part-of,member–of,works-for,employ,dependency,play…Dynamicmodeling(Internal+External)Object-behaviormodeling:State-transition,event-trace(objectinteractions,sequenceofmessages)
scenarios(usecases)+behaviors
operationsReview:bottom-up,top-down--Modelingofrealworld!OOmodelingtools:PowerDesigner,StarUML,Visio,RationalRose,Eclipse,NetBeans,…72Scenario-BasedModeling“[Use-cases]aresimplyanaidtodefiningwhatexistsoutsidethesystem(actors)andwhatshouldbeperformedbythesystem(use-cases).”IvarJacobsonascenariothatdescribesathreadofusage,asequenceofUseCaseinsystemactors
representrolespeopleordevicesplayasthesystemfunctionsusers
canplayanumberofdifferentrolesforagivenscenario73Use-CaseDiagram(inUML)74Use-CaseDiagram75Use-CasesAcollectionofuserscenariosthatdescribethethreadofusageofasystemEachscenarioisdescribedfromthepoint-of-viewofan“actor”—apersonordevicethatinteractswiththesoftwareinsomewayEachscenarioanswersthefollowingquestions:Whoistheprimaryactor,thesecondaryactor(s)?Whataretheactor’sgoals?Whatpreconditionsshouldexistbeforethestorybegins?Whatmaintasksorfunctionsareperformedbytheactor?Whatextensionsmightbeconsideredasthestoryisdescribed?Whatvariationsintheactor’sinteractionarepossible?Whatsysteminformationwilltheactoracquire,produce,orchange?Willtheactorhavetoinformthesystemaboutchangesintheexternalenvironment?Whatinformationdoestheactordesirefromthesystem?Doestheactorwishtobeinformedaboutunexpectedchanges?76ClassModelingIdentifyanalysisclassesbyexaminingtheproblemstatementIdentifytheattributesofeachclassIdentifyoperationsthatmanipulatetheattributes77WhatisaClass?externalentitiesthingsoccurrencesrolesorganizationalunitsplacesstructuresclassnameattributes:operations:78AnalysisClassesExternalentities(e.g.,othersystems,devices,people)thatproduceorconsumeinformationtobeusedbyacomputer-basedsystem.Things(e.g,reports,displays,letters,signals)thatarepartoftheinformationdomainfortheproblem.Occurrencesorevents(e.g.,apropertytransferorthecompletionofaseriesofrobotmovements)thatoccurwithinthecontextofsystemoperation.Roles(e.g.,manager,engineer,salesperson)playedbypeoplewhointeractwiththesystem.Organizationalunits(e.g.,division,group,team)thatarerelevanttoanapplication.Places(e.g.,manufacturingfloororloadingdock)thatestablishthecontextoftheproblemandtheoverallfunctionofthesystem.Structures(e.g.,sensors,four-wheeledvehicles,orcomputers)thatdefineaclassofobjectsorrelatedclassesofobjects.79ClassDiagram(inUML)FromtheSafeHomesystem…80ClassTypesEntityclasses,alsocalledmodelorbusinessclasses,areextracteddirectlyfromthestatementoftheproblem(e.g.,FloorPlanandSensor).Boundaryclasses
areusedtocreatetheinterface(e.g.,interactivescreenorprintedreports)thattheuserseesandinteractswithasthesoftwareisused.Controllerclasses
managea“unitofwork”fromstarttofinish.Thatis,controllerclassescanbedesignedtomanage(e.g.maincontroller,communicationbetweensetsofobjects)81ClassesHierarchyobject-orientedthinkingbeginswiththedefinitionofaclass,oftendefinedas:templategeneralizeddescription“blueprint”(藍圖)...describingacollectionofsimilaritemsameta-class(alsocalledasuperclass)establishesahierarchyofclassesonceaclassofitemsisdefined,aspecificinstanceoftheclasscanbeidentified82ClassHierarchyChairTableDesk”Chable"instancesofChairPieceOfFurniture(superclass)subclassesofthe83Gen-specHierarchy(inUML)ClientCompanyIndividual84ClassRelationship(inUML)85Composite(組合)Aggregate(聚合)Class(inUML)86Associations(關聯(lián))andDependenciesTwoanalysisclassesareoftenrelatedtooneanotherinsomefashionInUMLtheserelationshipsarecalledassociationsAssociationscanberefinedbyindicatingmultiplicity(多元,階元)Inmanyinstances,aclient-serverrelationshipexistsbetweentwoanalysisclasses.Insuchcases,aclient-classdependsontheserver-classinsomewayandadependencyrelationshipisestablished87Associations-Multiplicity(inUML)88Dependencies(inUML)89AnalysisPackages(inUML)90AnalysisPackagesVariouselementsoftheanalysismodel(e.g.,use-cases,analysisclasses)arecategorizedinamannerthatpackagesthemasagroupingThe+signprecedingtheanalysisclassnameineachpackageindicatesthattheclasseshavepublicvisibilityandarethereforeaccessiblefromotherpackages.Othersymbolscanprecedeanelementwithinapackage.A-signindicatesthatanelementishiddenfromallotherpackagesanda#symbolindicatesthatanelementisaccessibleonlytopackagescontainedwithinagivenpackage.91BehavioralModeling(Internal+Externalbehavior)Thebehavioralmodelindicateshowsoftwarewillrespondtoexternalevents.Tocreatethemodel,theanalystmustperformthefollowingsteps:Evaluatealluse-casestofullyunderstandthesequenceofinteractionwithinthesystem.Identifyeventsthatdrivetheinteractionsequenceandunderstandhowtheseeventsrelatetospecificobjects.Createasequenceforeachuse-case--ExternalbehaviorBuildastatediagramfortheclasses--InternalbehaviorReviewthebehavioralmodeltoverifyaccuracyandconsistency.92TheStatesofaSystemstate—asetofobservablecircum-stancesthatcharacterizesthebehaviorofasystematagiventimestatetransition—themovementfromonestatetoanotherevent—anoccurrencethatcausesthesystemtoexhibitsomepredictableformofbehavioraction—processthatoccursasaconsequenceofmakingatransition93BehavioralModelingmakealistofthedifferentstatesofasystem(Howdoesthesystembehave?)indicatehowthesystemmakesatransitionfromonestatetoanother(Howdoesthesystemchangestate?)indicateeventindicateaction94BehavioralModelingInthecontextofbehavioralmodeling,twodifferentcharacterizationsofstatesmustbeconsidered:thestateofeachclassasthesystemperformsitsfunctionandthestateofthesystemasobservedfromtheoutsideasthesystemperformsitsfunctiondrawastatediagram/asequencediagram95StateTransitionDiagram:Notationstatenewstateeventcausingtransitionactionthatoccurs96StateDiagramfortheControlPanelClass
(inUML)97StateDiagram(inUML)98SequenceDiagram
(objectinteractions,sequenceofmessages)IndicateshoweventscauseflowtransitionsfromobjecttoobjectAversionoftheuse-caseScenarios(usecases)+Behaviors(StateDiagram+SequenceDiagram)
operations99SequenceDiagram(inUML)100ActivityDiagram(inUML)Supplementstheuse-casebyprovidingadiagrammaticrepresentationofproceduralflow101SwimlaneDiagrams(inUML)Allowsthemodelertorepresenttheflowofactivitiesdescribedbytheuse-caseandatthesametimeindicatewhichactor(iftherearemultipleactorsinvolvedinaspecificuse-case)oranalysisclasshasresponsibilityfortheactiondescribedbyanactivityrectangle102103CRCModeling
-anotherwayofOOmodelingAnalysisclasseshave“responsibilities”Responsibilities
aretheattributesandoperationsencapsulatedbytheclassAnalysisclassescollaboratewithoneanother
Collaborators
arethoseclassesthatarerequiredtoprovideaclasswiththeinformationneededtocompletearesponsibility.Ingeneral,acollaborationimplieseitherarequestforinformationorarequestforsomeaction.104CRCModeling105
OOAtoOODOOAtoOOD:differentlevelsofclassabstractionOOAmodelingtoOODmodelingGenericcomponentsofOOD:Subsystemsdesign(architecturedesign):
Interface-Application-DataBase(ClassBase)-Mechanism-OS&HWObjectsdesign:
attributes
datastructure;scenarios(usecases)+behaviors
operations:procedureHCIdesign:reuseGUIMessagedesign:typeofmesg,mesgmodel,…Taskmanagementandconcurrency:event-driven,clock-driven,threadcontrol…Datamanagement:classlibrary,warehouse…Resourcemanagement:memory,disk,I/O…106Ch.6SoftwareDesignObjectives:architecturedesigncomponentdesigninterfacedesigndatadesignPeople:softwareengineerDesignprocess:StepwiseRefinement;OO:bottom-up+Top-DownDesignPrinciplesHierarchicalarchitecture:
C(p1+p2)>C(p1)+C(p2)
E(p1+p2)>E(p1)+E(p2)107Modularity:independentmoduledesignAbstraction:don’tcareaboutdetails,morereuseInformationhiding:inaccessibletoothermodulesSimpleinterface:reducethecauseoferrorsCohesion:highcohesion
(informationhiding,onemoduleperformsonetask,DIY…aboutgo-to?)Coupling:lowcoupling
(globaldata?contentinterconnection(go-to)?platformcoupling?
…)Fan-in&Fan-outcontrol:around5Sizeofamodule:around50-70linesofsourcecodeTraceabledesign:trackingrequirements-satisfiedorpartlysatisfiedornot?
Reuse:reuseexistingcomponents;buildnewcomponentsReview108AnalysisModel->DesignModel109ModularDesign110Modularity:Trade-offsWhatisthe"right"numberofmodulesforaspecificsoftwaredesign?optimalnumberofmodulescostofsoftwarenumberofmodulesmoduleintegrationcostmoduledevelopmentcost111SizingModules:TwoViews112需求跟蹤能力矩陣系統(tǒng)名稱:庫存管理系統(tǒng)
日期:2001/05/09
責任人:黃川用戶需求功能需求設計元素模塊測試用例
開發(fā)文檔管理文檔用戶文檔UR-104Stock_input,Contract_check,Contract_history
DFD-12,DD-08,DD-104,DD-105,ER-12IPO-104/105/106/107/201Stock_input(),Contract_check(),Contract_state(),
Contract_history()Test14Test15Test16
需求說明書概要設計詳細設計測試方案模塊開發(fā)卷宗開發(fā)計劃風險控制
用戶手冊培訓手冊聯(lián)機幫助UR-105Stock_query,Stock_count,Stock_historyDFD-10,DD-08,DD-9,DD-10,ER-12,IPO-10/11/13/107/20Query_log()Stock_query()Stock_count()Stock_history()Test11Test12Test13Test14需求說明書概要設計詳細設計測試方案模塊開發(fā)卷宗開發(fā)計劃風險控制
用戶手冊培訓手冊聯(lián)機幫助
113ArchitecturalDesignStylesData-centeredarchitecturesDataflowarchitecturesCallandreturnarchitecturesObject-orientedarchitecturesLayeredarchitectures(Threetier)client/server(B/S)architectureBus-basedsoftwarearchitecture(HierarchicalMessageBus,CORBA,DCOM,EJB)114Data-CenteredArchitecture115DataFlowArchitecture116CallandReturnArchitecture117LayeredArchitecture118Threetierdistributed(middleware)client/serverarchitecture
119Bus-basedsoftwarearchitecture-open,reuse
HMBBUS120OMG-CORBAArchitecture121AnArchitecturalDesignMethod"fourbedrooms,threebaths,lotsofglass..."architecturaldesign122DerivingArchitecture-ProcessorientedProgramArchitecture123PartitioningtheArchitecture“horizontal”and“vertical”partitioningarerequired124StructuredDesign(DFD-based)objective:toderiveaprogramarchitecturethatispartitionedapproach:theDFDismappedintoaprogramarchitecturethePSPECandSTDareusedtoindicatethecontentofeachmodulenotation:structurechart125SDDesignMethods-FlowCharacteristics:
Transformflow;Transactionflow
TransformflowTransactionflow126SDDesignMethodsMapping:softwarestructureTransformmapping:ReviewDFDSpecifytransform-center,incomingandoutgoingboundariesMap:maincontroller,incoming-dataprocess,transform-flowprocess,outgoing-dataprocessRefinelevelbylevel…Review–
Modularity!127TransformMappingApproachworkingfromtheboundaryoutward,mapDFDtransformsintocorrespondingmodulesaddcontrolmodulesasrequiredrefinetheresultantprogramstructureusingeffectivemodularityconceptsisolateincomingandoutgoingflowboundaries;128FirstLevelFactoringmainprogramcontrollerinputcontrollerprocessingcontrolleroutputcontroller129Factoring130TransformMapping131TransactionmappingReviewDFD
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 重慶大學課程設計仿真圖
- 二零二五年度橘子種植基地承包與農(nóng)產(chǎn)品出口協(xié)議3篇
- 二零二五年度美發(fā)店設備更新?lián)Q代及技術升級合同4篇
- 2025年度新型節(jié)能門窗安裝承攬合同范本3篇
- 2025年項目咨詢管理合作協(xié)議范本詳解3篇
- 二零二五年度酒店客房門鎖更換與升級服務合同4篇
- 2025年校車照管員崗位責任與風險防控合同2篇
- 二零二五年度民用航空運輸合同服務質(zhì)量提升方案4篇
- 二零二五年度模板木枋行業(yè)創(chuàng)新發(fā)展基金合作合同4篇
- 2025年度高校教學樓租賃合同及智能化教學系統(tǒng)建設3篇
- 軌道工程-第三章-有砟軌道
- 泌尿:膀胱腫瘤病人的護理查房王雪-課件
- 標點符號的研究報告
- 服務器報價表
- 2025年高考化學試題分析及復習策略講座
- 2024-2029年中國制漿系統(tǒng)行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報告
- 大門封條模板
- ppr管件注塑工藝
- 液化氣站其他危險和有害因素辨識及分析
- 高中語文教學課例《勸學》課程思政核心素養(yǎng)教學設計及總結反思
- 中國農(nóng)業(yè)銀行小微企業(yè)信貸業(yè)務貸后管理辦法規(guī)定
評論
0/150
提交評論