软件工程课件 08系统模型

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

系统模型Systemmodels系统模型(Systemmodels)是对经过需求分析的系统的抽象描述(Abstractdescriptionsofsystemswhoserequirementsarebeinganalysed)目标(Objectives)解释为什么系统上下文(context)建模是需求工程过程的一部分。描述行为建模(behaviouralmodelling)、数据建模(datamodelling)和对象建模(objectmodelling)。介绍统一建模语言(UML-theUnifiedModellingLanguage)中使用的一些术语。说明CASE工作平台(workbenches)是如何支持系统建模的。课题(Topicscovered)上下文模型(Contextmodels)行为模型(Behaviouralmodels)数据模型(Datamodels)对象模型(Objectmodels)CASE工作平台(workbenches)系统建模(Systemmodelling)系统建模帮助分析员了解系统的功能,同时模型被用于与客户进行交流。不同的模型用不同的观点(perspectives)表示系统外部观点反映系统的上下文和环境;行为观点反映系统的行为;结构观点反映系统或数据的体系结构。模型种类(Modeltypes)数据处理模型(Dataprocessingmodel)表示在不同的阶段数据是如何处理的。合成模型(Compositionmodel)表示实体是如何由其它实体组成的。体系结构模型(Architecturalmodel)把主要的子系统显示出来。类模型(Classificationmodel)说明实体的具有的共同特征。激励/响应模型(Stimulus/responsemodel)表明系统对事件的反应。上下文模型(Contextmodels)上下文模型用于表示一个系统的操作环境——它们表明了在系统边界以外还存在的东西。社会和机构的利害关系可以影响系统边界的定位。体系结构模型表明了一个系统与其它系统的关系。一个ATM系统的上下文Auto-tellersystemSecuritysystemMaintenancesystemAccountdatabaseUsagedatabaseBranchaccountingsystemBranchcountersystem过程模型(Processmodels)过程模型表示总过程以及由系统支持的那一部分过程。数据流模型可以用来表示过程以及从一个过程到另一个过程的信息流。设备采购过程行为模型(Behaviouralmodels)行为模型用于描述一个系统的全部行为。有两类描述行为的模型:数据处理模型,它表示数据在系统中移动的时候是如何被处理的;状态机模型(Statemachinemodels),它表示系统对事件的反应。这些模型表现了系统的不同侧面。因此在描述系统行为的时候,这两种模型都要用到。数据处理模型(Data-processingmodels)数据流程图(Dataflowdiagrams)用于对系统的数据处理进行建模。它们表示数据流过一个系统的处理步骤。数据流程图是许多分析方法中的本质部分(Intrinsicpart)。表示符号简单和直观,顾客容易理解。显示了端对端(end-to-end)的数据处理过程。订单处理数据流程图数据流程图(Dataflowdiagrams)数据流程图(DFD)以功能的观点对系统进行建模,每个数据转换表示为一个函数。对一个数据的相关过程进行跟踪和归档有助于拓展对一个系统的全面了解。数据流程图也可用于表示一个系统与其环境中的其它系统进行的数据交换。InsulinpumpDFD胰岛素泵的数据流程图状态机模型(Statemachinemodels)这些模型对来自于系统外部和内部的事件的系统响应行为进行建模。它们表示系统对激励的反应,所以常被用于实时系统建模。状态机模型把系统状态表示为一个节点,而把事件表示为连接这些节点的弧线。当一个事件发生的时候,系统从一个状态移动到另一个状态。状态图(Statecharts)是UML的一个组成部分。状态机(Statecharts)允许把一个状态机模型分解为子模型(参见下页)。在每个状态的“DO”符号之下,包含有对一个行动的简单描述。可以用描述状态和激励的表格进行补充。微波炉模型(Microwaveovenmodel)Microwaveovenstatedescription微波炉状态描述StateDescriptionWaitingTheoveniswaitingforinput.Thedisplayshowsthecurrenttime.HalfpowerTheovenpowerissetto300watts.ThedisplayshowsÔHalfpowerÕ.FullpowerTheovenpowerissetto600watts.ThedisplayshowsÔFullpowerÕ.SettimeThecookingtimeissettotheuserÕsinputvalue.Thedisplayshowsthecookingtimeselectedandisupdatedasthetimeisset.DisabledOvenoperationisdisabledforsafety.Interiorovenlightison.DisplayshowsÔNotreadyÕ.EnabledOvenoperationisenabled.Interiorovenlightisoff.DisplayshowsÔReadytocookÕ.OperationOveninoperation.Interiorovenlightison.Displayshowsthetimercountdown.Oncompletionofcooking,thebuzzerissoundedfor5seconds.Ovenlightison.DisplayshowsÔCookingcompleteÕwhilebuzzerissounding.微波炉的激励(Microwaveovenstimuli)StimulusDescriptionHalfpowerTheuserhaspressedthehalfpowerbuttonFullpowerTheuserhaspressedthefullpowerbuttonTimerTheuserhaspressedoneofthetimerbuttonsNumberTheuserhaspressedanumerickeyDooropenTheovendoorswitchisnotclosedDoorclosedTheovendoorswitchisclosedStartTheuserhaspressedthestartbuttonCancelTheuserhaspressedthecancelbutton微波炉的操作(Microwaveovenoperation)语义数据模型(Semanticdatamodels)用于描述系统处理数据的逻辑结构。实体-关系-属性模型设置在系统中的实体,并表明这些实体与实体属性之间的关系。在数据库设计中广泛使用。用关系数据库很容易实现。在UML中没有提供特别的表示法,但可以用对象和关联(associations)来表示。图书馆的语义模型(Librarysemanticmodel)数据字典(Datadictionaries)数据字典是在系统模型中所有使用过的名称列表。还包括对实体,关系和属性的描述。优点(Advantages)支持命名管理和避免重复;把与分析,设计和实现相联系的机构信息保存了下来。许多CASE工作平台支持数据词典。数据字典的条目(Datadictionaryentries)NameDescriptionTypeDateArticleDetailsofthepublishedarticlethatmaybeorderedbypeopleusingLIBSYS.Entity30.12.2002authorsThenamesoftheauthorsofthearticlewhomaybedueashareofthefee.Attribute30.12.2002BuyerThepersonororganisationthatordersacopyofthearticle.Entity30.12.2002fee-payable-toA1:1relationshipbetweenArticleandtheCopyrightAgencywhoshouldbepaidthecopyrightfee.Relation29.12.2002Address(Buyer)Theaddressofthebuyer.Thisisusedtoanypaperbillinginformationthatisrequired.Attribute31.12.2002对象模型(Objectmodels)对象模型用对象类和它们的关联关系来描述系统。一个对象类是对一系列具有相同属性和服务(操作)的对象的一种抽象,其中服务是由每个对象提供的。可能生成的各种对象模型是:继承模型(Inheritancemodels);聚合模型(Aggregationmodels);互动模型(Interactionmodels)。对象模型(Objectmodels)是反映实体的自然方式,这些实体是在现实世界中存在的并由系统操纵的。使用这种方法的时候,实体越抽象,建模就越困难。识别对象类被被认为是一个困难的过程,需要对应用领域的深刻了解。代表领域实体的对象类可以在系统中复用。继承模型(Inheritancemodels)把领域对象类安排到一个层次结构(hierarchy)中。处在最高层次的类具有所有类的共同特性。对象类从一个或多个上级类(super-classes)中继承它们的属性和服务。必要时,可以再对它们作特别声明。由于要避免在不同分支上的重复,所以类的层次设计是一个困难的过程。对象模型和统一建模语言(UML)UML由惯用面向对象分析和设计方法的开发人员所提倡。已经成为一个有效的面向对象建模标准。表示法(Notation)用长方形表示对象类,在它的上部标注名称,中部标注属性,下部标注操作;对象类之间的关系(称为关联)用对象之间的连线来表示;继承(Inheritance)亦称为泛化(generalisation),在层次中是由下向上的(upwards)而不是由上到下的(downwards)。图书馆的类图CataloguenumberAcquisitiondateCostTypeStatusNumberofcopiesLibraryitemAcquire()Catalogue()Dispose()Issue()Return()AuthorEditionPublicationdateISBNBookYearIssueMagazineDirectorDateofreleaseDistributorFilmVersionPlatformComputerprogramTitlePublisherPublisheditemTitleMediumRecordeditem用户类的层次结构NameAddressPhoneRegistration#LibraryuserRegister()De-register()AffiliationReaderItemsonloanMax.loansBorrowerDepartmentDepartmentphoneStaffMajorsubjectHomeaddressStudent多重继承(Multipleinheritance)一个系统不但支持对象

1 / 45
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功