1、1,4.6 Web建模,问题 如何表示Web应用系统的体系结构 如何表示Web应用系统中一些特有的概念 如:HTTP,HTML,Form, Frameset, ASP, JSP, Session等 Web应用系统与传统的分布式应用有两个比较明显的区别 连接的持久性方面 客户机形式的区别:客户机的OS, browser,2,Web建模 仍然从用例分析开始,也可采用storyboard 由于连接是无状态的,如需要存储状态信息,则使用session(或cookies), 并在模型图中表示 Web页面,包括HTML,JSP,ASP,Servlet页面。在建模时,Web页面作为对象处理。 Web类衍型:
2、window,frameset,frame,client page,Server page,client Script和Server Script WAE(Web application extension for UML)Web建模扩展: 在Rose, UML中有实现。,3,6.4.1 STORYBOARD介绍: MPR管理流程,步骤 1: 创建MPR 创建工艺文档MPR 创建工艺文档系列更改MPR 创建工艺文档MPR(特) 编制MPR 步骤 2: MPR发布流程 校对 审核 查看 修改 步骤 3: 修订MPR 修订,4,流程步骤1:创建MPR,目标 基于MBOM中的零部件创建工艺文档MPR
3、 若有系列更改EO,则在工艺文档MPR上创建工艺文档系列更改MPR 创建工艺文档MPR(特) 编制MPR,5,流程步骤1 :创建MPR 活动 1:创建MPR - 创建工艺文档系列更改MPR,创建工艺文档系列更改MPR 基于MBOM零部件创建工艺文档系列更改MPR,该零件的相关文档中必须已有工艺文档MPR 填写有效性,系统自动生成属性 修改原工艺文档MPR有效性,保证有效性互斥 MPR编辑页面进行编辑工作,或保存后在编制活动中进行 MBOM的零组件上关联MPR文档(编制中),6,流程步骤1 :创建MPR 活动 2:编制MPR,编制MPR 接收“编制”任务,进入编制页面 编辑MPR,完成后“重新读
4、取MBOM信息” 在任务页面添加“校对者”和“审核者” MPR文档状态“校对中,7,MPR管理流程,步骤 1: 创建MPR 创建工艺文档MPR 创建工艺文档系列更改MPR 创建工艺文档MPR(特) 编制MPR 步骤 2: MPR发布流程 校对 审核 查看 修改 步骤 3: 修订MPR 修订,创建MPR,MPR发布流程,修订MPR,1.,2.,3.,输出,开始,8,流程步骤2:MPR发布流程,目标 工艺员校对和审核MPR 车间查看员查看MPR 若流程中任一环节 编制MPR驳回,则工艺员修改MPR,9,流程步骤2 :MPR发布流程 活动 1:校对MPR,校对MPR 接收“校对”任务,查看MPR内容
5、,填写校对意见,选择“通过”或“驳回” 若“编制”活动中未添加“审核者”,则该步骤可继续操作 任务通过后,MPR状态“审核中”,10,流程步骤2 :MPR发布流程 活动 2:审核MPR,审核MPR 接收“审核”任务,查看MPR内容,填写校对意见,选择“通过”或“驳回” 任务通过后,MPR状态“审核中” 根据MPR的“制造部门”属性,发送“查看”任务给车间查看员(1k/2k/8k/9k/12k),11,流程步骤2 :MPR发布流程 活动 3:查看MPR,查看MPR 接收“查看”任务,查看MPR内容,填写校对意见,选择“通过”或“驳回” 任务通过后,MPR状态“已发布”,12,流程步骤2 :MPR
6、发布流程 活动 4:修改MPR,修改MPR 流程中校对、审核、查看任一环节被“驳回后”,编制者收到“修改”任务,并修改MPR文档 工艺员重启发布流程,13,MPR管理流程,步骤 1: 创建MPR 创建工艺文档MPR 创建工艺文档系列更改MPR 创建工艺文档MPR(特) 编制MPR 步骤 2: MPR发布流程 校对 审核 查看 修改 步骤 3: 修订MPR 修订,14,流程步骤3 :修订MPR 活动 1:修订MPR,修订MPR 工艺员对已发布的MPR文档执行“修订” 维护新旧版本文档的有效性 完成后,MPR文档版本递增 工艺员重启流程,15,6.4.2 WAE中的建模符号,服务器页 用定义在类上
7、衍型Server Page表示客户机页 用定义在类上衍型Client Page表示,16,WAE中的建模符号,Build单向关联,表述服务器页与客户页之间的关系 一个服务器页可以创建多个客户机页,但一个客户机页只能有一个服务器页创建。,Build,17,WAE中的建模符号,Link关联 表述两个客户页之间或一个客户机页到一个服务器页的超链接。,Server Page ServerPage,Link,Link,18,WAE中的建模符号,表单,19,WAE中的建模符号,Submit关联,Build,Submit,20,Orders类对应的文件,该例中服务器页Orders是一个JSP页面,在运行时会
8、生成Orders_Client客户机页。 该客户机页是一个HTML页面,其中包含了一个Form. 用户通过这个Form输入一些数据,然后提交给服务器页。,21,WAE中的建模符号,框架集frameset 一个框架集中有多个框架,利用框架,可以把一个浏览器分成多个子区域。,Book,Content,22,WAE中的建模符号,Include关联Menu类生成的代码:,Include,Include,23,WAE中的建模符号,Session与JavaBean的建模如Login.jsp 页面使用JavaBean中的ValidateLoginBeanServlet的建模,Use Bean,HelloWo
9、rldServlet() doGet(),Use Bean,6.4.3WAE中的建模举例,导航建模 首先,WEB设计者为每个主要用户接口视图勾画草图。这是些每个导航节点的相关元素的粗略图。这种草图技术经常被WEB设计者使用。 用合适的UML扩展来支持草图技术 在设计了不同的UI视图后,故事情节串连场景便可以开发,故事情节串连场景显示了用户接口视图的顺序。即客户从一个视图导航到另一个视图的顺序。,24,25,导航建模举例,26,27,用时序图表示对象间的调用流,28,6.4.4 UML评论与问题研究,阅读并讨论7.3节 UML的积极作用: 统一 表达能力丰富 语言, 集成 UML起不到的作用 语
10、言而不是建模方法 也不能作为一种形式化需求描述语言,29,UML评论与问题研究,UML中的缺点与问题 混淆“模型”与“语言”两个概念 元元模型与元模型: 元语言理论的忌讳:元语言中的符号不能出现在目标语言中 体系结构层次上的混乱 形式化问题。半形式化 类图和对象图并存问题。对象图必要吗? 协作图问题。类图一定是静态的吗?全局性动态模型? 无道理的复杂性,30,五、UML最新进展,邵p210 UML2.0.doc,31,作业2,1.给出ATM机的用例图,典型的用例描述 2.设计并综合运用各种UML图描述所要求的交互场景 设计文档要求包括以下内容: 1).用UML图描述所使用的设计中各角色之间的交
11、互关系,并说明其中的各个角色及交互关系在你的具体设计中分别体现为哪个设计元素 (可以用多个交互片断表示,但要合理衔接起来) 2).说明你的设计中包含了哪些特别的设计考虑并简要解释其作用,32,问题描述:在某公司月末的一次工资发放过程中,对各个员工所对应的对象执行工资计算操作(假设工资计算所需要的各种参数都已读取在相应对象中),并将工资数额发送到该员工工资卡所对应的银行系统中同时自动发送一份email通知该员工,最后计算当月工资总额。 1.所有的员工对象按照公司组织结构(公司、部门、项目组、员工四个级别)组织在一起,员工在最底层,公司和部门经理除管理多个下级组织实体外还直接管理几名副经理,而项目组经理则直接管理员工。 2.公司经理、部门经理、项目经理和员工四类对象在许多方面都有所不同,工资计算方法也不同。 3.每个员工银行卡对应的银行可能不同,这些银行都提供在线工资发放接口,但所使用的通信协议和数据格式都不同(需要考虑到以后由于新员工的到来还可能增加新的银行接口要求)。,