信 息 学 院
《多媒体软件设计》实验报告
注:每学期至少有一次设计性实验。每学期结束请任课教师按时按量统一交到教学秘书处。
应用4+1视图法及UML设计软件体系架构及设计模式实践
一 实验目的
通过对实际案例进行软件设计来掌握软件体系架构模式的选择应用以及典型4+1视图软件架构设计方法的应用,并能熟练掌握如何利用Rational Rose软件进行软件架构设计。
二 实验内容
(1) 根据“信用卡申请件处理外包业务处理平台设计”需求选定软件体系结构模式
(2) 利用UML软件进行4+1视图架构设计,包括逻辑视图、开发视图、进程视图、物理视图和场景视图。’
A 逻辑视图描述系统的功能需求,系统分解成一系列的功能抽象,采用时序图、协作图、类图等来表示;
B 开发视图描述软件在开发环境下的静态组织。开发视图关注程序包,应用的统一框架,引用的类库、SDK和中间件,以及工程和包的划分规则等,规范、约束开发环境的结构;
C 进程试图侧重系统的运行特性,关注非功能性的需求(性能,可用性)。服务于系统集成人员,方便后续性能测试。强调并发性、分布性、集成性、鲁棒性(容错)、可扩充性、吞吐量等。定义逻辑视图中的各个类的具体操作是在哪一个进程和线程中被执行,可以组件图为基础表示;
D 物理试图主要描述硬件配置。服务于系统工程人员,解决系统的拓扑结构、系统安装、通信等问题。主要考虑如何把软件映射到硬件上,也要考虑系统性能、规模、可靠性等。可以与进程视图一起映射;
E 场景用于刻画构件之间的相互关系,将四个视图有机地联系起来。
可以描述一个特定的视图内的构件关系,也可以描述不同视图间的
构件关系。通常用Use Case图来描述。
(3) 设计模式的实践,从创建者模式、结构型模式和行为模式三大类模式进
行对象设计,每种类型的模式至少应用一种,并用应用了设计模式后的类设计修订逻辑视图中的类图。
三 SOA架构模式及流程分析(湛滨瑜)
3.1 SOA架构介绍 SOA是英文Service-Oriented Architecture,即面向服务架构的缩写。
面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。
这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。
对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵活,以适应不断变化的环境,比如经常改变的政策、业务级别、业务重点、合作伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性质。我们称能够灵活地适应环境变化的业务为按需(On demand)业务,在按需业务中,一旦需要,就可以对完成或执行任务的方式进行必要的更改。
SOA三大基本特征
1、独立的功能实体
在Internet这样松散的使用环境中,任何访问请求都有可能出错,因此任何企图通过Internet进行控制的结构都会面临严重的稳定性问题。 SOA非常强调架构中提供服务的功能实体的完全独立自主的能力。传统的组件技术,如.NET Remoting,EJB,COM或者CORBA,都需要有一个宿主 (Host或者Server)来存放和管理这些功能实体;当这些宿主运行结束时这些组件的寿命也随之结束。这样当宿主本身或者其它功能部分出现问 题的时候,在该宿主上运行的其它应用服务就会受到影响。
SOA架构中非常强调实体自我管理和恢复能力。常见的用来进行自我恢复的技术,比如事务处理(Transaction),消息队列(Message Queue) ,冗余部署(Redundant Deployment)和集群系统(Cluster)在SOA中都起到至关重要的作用。
2、大数据量低频率访问
对于.NET Remoting,EJB或者XML-RPC这些传统的分布式计算模型而言,他们的服务提供都是通过函数调用的方式进行的,一个功能的完成 往往需要通过客户端和服务器来回很多次函数调用才能完成。在Intranet的环境下,这些调用给系统的响应速度和稳定性带来的影响都可以忽 略不计,但是在Internet环境下这些因素往往是决定整个系统是否能正常工作的一个关键决定因素。因此SOA系统推荐采用大数据量的方式一次 性进行信息交换。
3、基于文本的消息传递
由于Internet中大量异构系统的存在决定了SOA系统必须采用基于文本而非二进制的消息传递方式。在COM、CORBA这些传统的组件模型中, 从服务器端传往客户端的是一个二进制编码的对象,在客户端通过调用这个对象的方法来完成某些功能;但是在Internet环境下,不同语言, 不同平台对数据、甚至是一些基本数据类型定义不同,给不同的服务之间传递对象带来的很大困难。由于基于文本的消息本身是不包含任何处 理逻辑和数据类型的,因此服务间只传递文本,对数据的处理依赖于接收端的方式可以帮忙绕过兼容性这个的大泥坑。
3.2信用卡申请件外包处理流程分析
信用卡申请件外包处理的主要流程为:
第一阶段:
信用卡申请人准备个人档案资料并接件提交,将所有接受的档案文件通过拆件、然后再分类整理后,给申请人的档案资料帖上条形码标识。在影像处理过程中,通过电子扫描设备将档案条形码扫人,经过对档案文件的质量检测和影像的切分后将数据信息传输给外包中心做数据处理。
第二阶段:
外包中心接受到影像处理阶段传递的数据信息后,通过任务分配环节将传递过来的数据信息录入,两次录入完成后,进入一个重要的复核环节。如果复核匹配失败,则进入第三人复核阶段,如果第三人复核成功,在确保数据录入的准确无误后进入影像匹配阶段。如果第三人复核失败,则将问题交由专门的人员来处理解决。通过影像匹配环节将数据归档处理。供工作人员查询使用。同时将数据回传递给银行信用卡数据中心。
第三阶段:
银行信用卡数据中心,接受到数据,并保存。
四 4+1视图(张献忠)和设计模式(李金栓)
4.1 4+1视图介绍
软件架构用来处理软件高层次结构的设计和实施。它以精心选择的形式将若干结构元素进行装配,从而满足系统主要功能和性能需求,并满足其他非功能性需求,如可靠性、可伸缩性、可移植性和可用性。Perry 和 Wolfe 使用一个精确的公式来表达,该公式由 Boehm 做了进一步修改:
软件架构 = {元素,形式,关系/约束}
软件架构涉及到抽象、分解和组合、风格和美学。我们用由多个视图或视角组成的模型来描述它。为了最终处理大型的、富有挑战性的架构,该模型包含五个主要的视图
逻辑视图(Logical View),设计的对象模型(使用面向对象的设计方法时)。
过程视图(Process View),捕捉设计的并发和同步特征。
物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性。
开发视图(Development View),描述了在开发环境中软件的静态组织结构。
架构的描述,即所做的各种决定,可以围绕着这四个视图来组织,然后由一些用例 (use cases)或场景(scenarios)来说明,从而形成了第五个视图。正如将看到的,实际上软件架构部分从这些场景演进而来,我们在每个视图上均独立地应用 Perry & Wolf 的公式,即定义一个所使用的元素集合(组件、容器、连接符),捕获工作形式和模式,并且捕获关系及约束,将架构与某些需求连接起来。每种视图使用自身所特有的表示法-蓝图(blueprint)来描述,并且架构师可以对每种视图选用特定的架构风格(architectural style),从而允许系统中多种风格并存。
我们将轮流的观察这五种视图,展现各个视图的目标:即视图的所关注的问题,相应的架构蓝图的标记方式,描述和管理蓝图的工具。并以非常简单的形式从 PABX 的设计中,从我们在Alcatel 商业系统(Alcatel Business System)上所做的工作中,以及从航空运输控制系统(Air Traffic Control system)中引出一些例子―旨在描述一下视图的特定及其标记的方式,而不是定义这些系统的架构。
"4+1"视图模型具有相当的"普遍性",因此可以使用其他的标注方法和工具,也可以采用其他的设计方法,特别是对于逻辑和过程的分解。但文中指出的这些方法都已经成功的在实践中运用过。
4.2设计模式介绍
4.3创建者模式
4.4结构型模式
4.5行为模式
五 逻辑试图(罗创) 逻辑试图介绍
5.1用例图
5.2时序图
5.3状态图
5.4类图(李金栓)
5.5。。。
六 开发视图(罗创)
七 进程视图
八 物理视图(李金栓)
九 场景视图
多媒体实验报告一姓名方子乙学号20xx00300336班级20xx级软件6班一实验目的1熟悉和掌握使用WindowsMCI进行编程…
班级姓名学号多媒体技术及应用实验报告U20xx12862Huffman编码一实验内容1了解BMP图像的格式实现BMP图片格式的数据…
多媒体技术班级网络姓名李耿卓学号12023120xx0050多媒体中的多媒体通信技术1交互性交互性是多媒体通信系统区别于其他通信系…
多媒体实验报告实验一数字音频实验一实验时间20xx年3月29日一实验目的1了解不同数字音频指标对所生成声音文件音质的影响2掌握音频…
北京邮电大学多媒体通信专业综合实验多媒体通信专业综合实验报告题目窄带话音调频发送与接收系统班级组员学号北京邮电大学多媒体通信专业综…
姓名:学号:指导教师:20xx年x月x日一、技术介绍3D打印是一种通过材料逐层添加制造三维物体的变革性、数字化增材制造技术,它将信…
汇编语言实验报告第六章磁盘文件存取实验设计性实验班级05611102姓名肖枫学号1120xx1431实验日期20xx914下午第六…
3DMAX设计报告设计题目办公室专业计算机科学与技术班级BU计算机091姓名金晓兰学号0911503106指导教师唐拥政完成时间2…
河南城建学院3dsMax课程设计实习报告设计题目写字楼漫游动画系别工商管理系专业市场营销指导老师田慧薛冰同组人员浮依史鑫麻迎花苗小…
厦门城市职业学院实践报告评审表1本表按专业班级填报由学部自行汇总存档备查厦门城市职业学院实践报告实践类型实验实训学部工程学部二09…