接口控制类模型描述用户接口与系统其他层之间的通信,接口控制类位于系统结构的商业上下文服务层,接口控制类模型用类图和包图描述。首先简要介绍接口控制类模型的设计方法,然后设计子系统的接口控制类与接口类的类图,最后设计系统及子系统的接口控制类的包图。
1、设计方法
接口控制类承担用户接口与应用程序的其他层之间通信的大多数工作,接口控制类比较简单,对于每一个需要与应用程序的其他层进行通信的用户接口,都应该有一个相应的接口控制类,对应的一个接口类即定义一个接口控制类。接口控制类通常是临时的,不用保存在外部存储器中,其生命周期在交互完成时结束。为使类之间的交互简捷、明了,接口控制类只与接口类、用例控制类有关系,接口控制类之间不应该有关系,接口类依赖接口控制类,而接口控制类又依赖用例控制类。接口控制类的操作和属性可以在设计序列图时定义,也可以在实现阶段设计程序代码时定义。
2、类图
前一篇文章“软件工程之系统建模篇【设计接口类模型】”已经定义了发文办理接口类,这里我们依然以前一篇文章的发文办理流程来定义接口控制类,我们分别对接口类定义接口控制类,但是不直接与应用程序的其他层通信的类,则不需要定义接口控制类。由于接口控制类之间不存在关系,类图应该反映接口控制类和接口类之间的关系。发文办理接口控制类包括:UICSFileList、UICDraftSFile、UICAuditSFileList、UICAuditSFile、UICCheckSFileList、UICCheckSFile、UICSignSFileList、UICSignSFile、UICEnreSFileList、UICEnreSFile、UICSendSFile,下图为发文办理接口控制类和接口类的类图,在图中区别有两个类型的类,接口控制类的名称用斜体字显示。
3、包图
我们将系统实例的接口控制类从系统层划分为8个包,分别为发文办理接口控制类包UICSFilePack、收文办理接口控制类包UICRFilePack、会议管理接口控制类包UICMeetingPack、档案管理接口控制类包UICArchivePack、公告管理接口控制类包UICNoticePack、个人助理接口控制类包UICAssistantPack、系统管理接口控制类包UICSSystemPack、用户登录接口控制类UICLogin。
我们将发文办理子系统的接口控制类,进一步划分为6个包:草拟发文接口控制类包UICDraftSFilePack、审核发文接口控制类包UICAuditSFilePack、复核发文接口控制类包UICCheckSFilePack、签发发文接口控制类包UICSignSFilePack、分发发文接口控制类包UICEnreSFilePack和送发文至档案室接口控制类包UICSendSFilePack。
至此发文办理流程中的每一个用户接口,都对应一个接口控制类,下一章我们将介绍设计用例控制类模型。