免费智能真题库 > 历年试卷 > 软件设计师 > 2010年下半年 软件设计师 下午试卷 案例
  第3题      
  知识点:   类图   电子邮件   功能描述   基本功能   建模   面向对象方法   审核   信用卡   支付宝   注册

 
某网上药店允许顾客凭借医生开具的处方,通过网络在该药店购买处方上的药品。 该网上药店的基本功能描述如下:
(1)注册。顾客在买药之前,必须先在网上药店注册注册过程中需填写顾客资料以及付款方式(信用卡或者支付宝账户)。此外顾客必须与药店签订一份授权协议书,授 权药店可以向其医生确认处方的真伪。
(2)登录。已经注册的顾客可以登录到网上药房购买药品。如果是没有注册的顾客, 系统将拒绝其登录。
(3)录入及提交处方。登录成功后,顾客按照“处方录入界面”显示的信息,填写开具处方的医生的信息以及处方上的药品信息。填写完成后,提交该处方。
(4)验证处方。对于已经提交的处方(系统将其状态设置为“处方已提交”),其验证过程为:
①核实医生信息。如果医生信息不正确,该处方的状态被设置为“医生信息无效”, 并取消这个处方的购买请求;如果医生信息是正确的,系统给该医生发送处方确认请求, 并将处方状态修改为“审核中”。
②如果医生回复处方无效,系统取消处方,并将处方状态设置为“无效处方”。如果医生没有在7天内给出确认答复,系统也会取消处方,并将处方状态设置为“无法 审核”。
③如果医生在7天内给出了确认答复,该处方的状态被修改为“准许付款”。系统取消所有未通过验证的处方,并自动发送一封电子邮件给顾客,通知顾客处方 被取消以及取消的原因。
(5)对于通过验证的处方,系统自动计算药品的价格并邮寄药品给已经付款的顾客。该网上药店采用面向对象方法开发,使用UML进行建模。系统的类图如图3-1 所示。

 
问题:3.1   根据说明中的描述,给出图3-1中缺少的C1〜C5所对应的类名以及(1)〜(6) 处所对应的多重度。
 
问题:3.2   图3-2给出了“处方”的部分状态图。根据说明中的描述,给出图3-2中缺少的S1〜S4所对应的状态名以及(7)〜(10)处所对应的迁移(transition)名。
 
问题:3.3  
 
 
 

   知识点讲解    
   · 类图    · 电子邮件    · 功能描述    · 基本功能    · 建模    · 面向对象方法    · 审核    · 信用卡    · 支付宝    · 注册
 
       类图
        类图(Class Diagram)展现了一组对象、接口、协作及其之间的关系。在面向对象系统的建模中所建立的最常见的图就是类图。
        类图给出了系统的静态设计视图,包含主动类的类图给出了系统的静态进程视图。作为模型管理视图还可以含有包或子系统,二者都用于把模型元素聚集成更大的组块。类图用于对系统的静态视图建模。这种视图主要支持系统的功能需求,即系统要提供给最终用户的服务。当对系统的静态设计建模时,通常以下述3种方式之一使用类图:对系统的词汇建模;对简单的协作建模;对逻辑数据库模式建模。
        作为静态视图的类图可以包含依赖、关联、泛化、组合、实现关系以及注解和约束等。
        (1)依赖关系是两个事物之间的语义关系,其中一个事物发生变化会影响另一个事物的语义。
        (2)关联关系是一种结构关系,它描述了一组对象之间的链接关系。其中有一种特殊类型的关联关系,即聚集关系,它描述了整体与部分的结构关系。
        (3)泛化关系是一种一般—特殊关系,利用这种关系,子类可以共享父类的结构和行为。
        (4)实现关系是类之间的语义关系,其中的一个类制订了另一个类保证执行的契约。实现关系用于两种情况:在接口和实现它们的类或构件之间;在用例和它们的协作之间。
        (5)组合是聚集关系的变种,表示元素间更强的组合关系。各种关系图例如下图所示。
        
        各种关系图例
 
       电子邮件
        电子邮件(Electronic Mail,E-mail),是传统邮件的电子化,它最早出现在ARPANET中。电子邮件(E-mail)是Internet提供的最主要的应用之一,它已经成为世界上最快的邮局,成为倍受欢迎的通信方式。电子邮件通过Internet传送,可在几秒钟之内传到世界各地,不受时间、气候和地理的限制,而且可以附加传送计算机文件、图像、声音和视频等多种信息。与传统的信件相比,电子邮件具有速度快、价格低的优点。
        电子邮件系统是一种新型的信息系统,是通信技术和计算机技术结合的产物。它是一种“存储转发式”的服务,属异步通信方式,这正是电子邮件系统的核心。利用存储转发可进行非实时通信,信件发送者可随时随地发送邮件。接收者可随时打开计算机读取信件,不受时空限制。在这里,“发送”邮件意味着将邮件放到收件人的信箱中,而“接收”邮件则意味着从自己的信箱中读取信件,信件在信箱之间进行传递和交换,也可以与另一个邮件系统进行传递和交换,信箱实际上是由文件管理系统支持的一个实体。因为电子邮件是通过邮件服务器Mail Server来传递文件的。通常Mail Server是执行多任务操作系统Unix的计算机,它提供24小时的电子邮件服务,用户只需向Mail Server管理人员申请一个信箱账号,就可使用这项快速的邮件服务了。
        与普通信件一样,电子邮件也需要地址。这个地址就是在Internet电子信箱的地址。电子邮件地址就是用户在ISP所开设的邮件账号加上POP3服务器的域名。例如:liuhy@sdfi.edu.cn,在此地址中“liuhy”是用户名,也就是用户在ISP所提供的POP3服务器上所注册的电子邮件账号,“sdfi.edu.cn”是POP3服务器的域名。中间用“@”分隔,表示“at”的意思。用户发送电子邮件时,必须给出接收方的电子邮件地址。
        电子邮件的传输则是通过电子邮件简单传输协议SMTP(Simple Mail Transfer Protocol)这一系统软件来实现的。SMTP协议是TCP/IP的一部分,它用于描述邮件是如何在Internet上传输的。遍布全球的邮件服务器根据SMTP协议来发送和接收邮件,SMTP就像Internet上的通用语言一样,负责处理邮件服务器之间的消息传递。
        电子邮件的发送由简单邮件传输协议(SMTP)服务器来完成。它好比是邮局的邮筒,将信投入后,由邮局定时发送。接收邮件由邮局协议(POP3)服务器来完成,来信都存放于此,用户通过电子邮件软件来取信。
        当用户写好电子邮件后,可通过电子邮件软件(Outlook等)将它发送出去。电子邮件软件使用SMTP协议和TCP/IP协议将用户的邮件打包后,加上信件头送到用户所设置的Internet服务商(ISP)的SMTP服务器上。然后SMTP服务器根据用户所写的电子邮件地址,通过路由器按照当前网络传输的情况,寻找一条最不拥挤的路由,将邮件传输给下一个SMTP服务器。该服务器也如法炮制,将邮件一直传送到接收方用户的ISP所提供的POP3服务器中,并保存在以接收方用户开设的信箱中。接收方用户可以通过电子邮件软件打开自己在POP3服务器上的信箱,来接收电子邮件。
 
       功能描述
        与PC端一样,移动端登录是商务活动不可或缺的功能。用户应用社交、电商、金融等App必须进行注册登录,如微信、QQ、支付宝、淘宝、美团等。移动端用户账号登录注册主要有几种形式:第三方账号、手机号、邮箱。
        (1)第三方账号(QQ、微信、微博等)。使用第三方账号优势是用户操作简单,方便用户快速的体验产品;其缺点是通过第三方平台获取到的用户信息太少,手机没有安装对应App时,通过网页进行登录认证需要输入账号密码,复杂度很高。移动端第三方登录模块的基本功能如下图所示。
        
        移动第三方登录模块基本流程图
        (2)手机号注册登录。通过手机获取验证码(短信),验证后设置密码进行注册;登录时使用手机号和密码登录。获取验证码的优点是可以很大程度上防止恶意注册,可以导入通讯录关系而且用户不需要记忆成本;其缺点是短信验证码需要成本,用户隐私可能泄露,手机号丢失后找回复杂。移动端手机号注册登录模块的基本功能如下图所示。
        
        移动手机号注册登录模块基本流程图
        (3)邮箱登录注册。邮箱登录验证成本低,对用户来说隐私性更好,但是移动端邮箱输入复杂,验证不方便,普及率不高普及率高。
 
       基本功能
        路由器在网络层对分组信息进行存储转发,实现多个网络互联。因此,路由器应具有以下基本功能。
        (1)协议转换。能对网络层及其以下各层的协议进行转换。
        (2)路由选择。当分组从互联的网络到达路由器时,路由器能根据分组的目的地址按某种路由策略选择最佳路由,将分组转发出去,并能随网络拓扑的变化,自动调整路由表。
        (3)能支持多种协议的路由选择。路由器与协议有关,不同的路由器有不同的路由器协议,支持不同的网络层协议。如果互联的局域网采用了两种不同的协议,一种是TCP/IP协议;另一种是SPX/IPX协议(即Netware的运输层/网络层协议),由于这两种协议有许多不同之处,分布在互联网中的TCP/IP(或SPX/IPX)主机上,只能通过TCP/IP(或SPX/IPX)路由器与其他互联网中的TCP/IP(或SPX/IPX)主机通信,但不能与同一个局域网或其他局域网中的SPX/IPX(或TCP/IP)主机通信。问题产生的原因在于互联网主机之间的通信受到路由器协议的限制。因此,近年来推出了一种多协议路由器,它能支持多种协议,如IP,IPX,X.25及DEC Net协议等,能为不同类型的协议建立和维护不同的路由表。这样利用路由器不仅能连接同构型局域网,还能用它连接局域网和广域网。例如,利用一个多协议路由器来连接以太网、令牌环网、FDDI网、X.25网及DEC Net等,从而使大、中型网络的组建更加方便,并获得较高的性能价格比。但是,由于目前多协议路由器尚未标准化,不同厂家的多协议路由器不一定能协同工作,在选购时应加以注意。
        (4)流量控制。路由器不仅具有缓冲区,而且还能控制收发双方数据流量,使两者更加匹配。
        (5)分段和组装功能。当多个网络通过路由器互联时,各网络传输的数据分组的大小可能不相同,这就需要路由器对分组进行分段或组装。即路由器能将接收的大分组分段并封装成小分组后转发,或将接收的小分组组装成大分组后转发。如果路由器没有分段组装功能,那么整个互联网就只能按照所允许的某个最短分组进行传输,大大降低了网络的效能。
        (6)网络管理功能。路由器是连接多种网络的汇集点,网间信息都要通过它,在这里对网络中的信息流、设备进行监视和管理是比较方便的。因此,高档路由器都配置了网络管理功能,以便提高网络的运行效率、可靠性和可维护性。
 
       建模
        建模是在计算机上创造三维形体的过程,建模是三维动画的基础,没有一个好的模型,其他好的效果都难以表现。三维建模的基本方法主要有:利用二维形体的技术、直接进行三维物体建模、造型组合等。
        利用二维形体进行建模的技术的主要思想是首先创建简单的二维形体,如样条线和形状等,然后对这些创建的二维形体进行挤压、旋转、放样等操作以创建三维造型。
        直接进行三维物体建模的常用方法有多边形建模、面片建模、NURBS建模等。
        造型组合是把已有的物体组合成新的物体,其中布尔运算是最重要的组合技术。
 
       面向对象方法
        面向对象方法是当前的主流开发方法,拥有大量不同的方法,主要包括OMT(Object Model Technology,对象建模技术)方法、Coad/Yourdon方法、OOSE(Object-Oriented Software Engineering,面向对象的软件工程)及Booch方法等,而OMT、OOSE及Booch最后统一成为UML(United Model Language,统一建模语言)。
               Coad/Yourdon方法
               Coad/Yourdon方法主要由面向对象的分析(Object-Oriented Analysis, OOA)和面向对象的设计(Object-Oriented Design, OOD)构成,特别强调OOA和OOD采用完全一致的概念和表示法,使分析和设计之间不需要表示法的转换。该方法的特点是表示简炼、易学,对于对象、结构、服务的认定较系统和完整,可操作性强。
               在Coda/Yourdon方法中,OOA的任务主要是建立问题域的分析模型。分析过程和构造OOA概念模型的顺序由5个层次组成,分别是类与对象层、属性层、服务层、结构层和主题层,它们表示分析的不同侧面。OOA需要经过5个步骤来完成整个分析工作,即标识对象类、标识结构与关联(包括继承、聚合、组合及实例化等)、划分主题、定义属性和定义服务。
               OOD中将继续贯穿OOA中的5个层次和5个活动,它由4个部分组成,分别是人机交互部件、问题域部件、任务管理部件和数据管理部件,其主要的活动就是这4个部件的设计工作。
               Booch方法
               Booch认为软件开发是一个螺旋上升的过程,每个周期包括4个步骤,分别是标识类和对象、确定类和对象的含义、标识关系、说明每个类的接口和实现。Booch方法的开发模型包括静态模型和动态模型,静态模型分为逻辑模型(类图、对象图)和物理模型(模块图、进程图),描述了系统的构成和结构。动态模型包括状态图和顺序图。该方法对每一步都做了详细的描述,描述手段丰富而灵活。
               Booch不仅建立了开发方法,还提出了设计人员的技术要求,以及不同开发阶段的人力资源配置。Booch方法的基本模型包括类图与对象图,主张在分析和设计中既使用类图,也使用对象图。
               OMT方法
               OMT作为一种软件工程方法学,支持整个软件生存周期,覆盖了问题构成分析、设计和实现等阶段。OMT方法使用了建模的思想,讨论如何建立一个实际的应用模型。从3个不同而又相关的角度建立了3类模型,分别是对象模型、动态模型和函数模型,OMT为每一个模型提供了图形表示。
               (1)对象模型。描述系统中对象的静态结构、对象之间的关系、属性和操作。它表示静态的、结构上的、系统的“数据”特征。主要用对象图来实现对象模型。
               (2)动态模型。描述与时间和操作顺序有关的系统特征,如激发事件、事件序列、确定事件先后关系的状态。它表示瞬时、行为上的和系统的“控制”特征。主要用状态图来实现动态模型。
               (3)函数模型。描述与值的变换有关的系统特征,包括功能、映射、约束和函数依赖。主要用数据流图来实现功能模型。
               在进行OMT建模时,通常包括4个活动,分别是分析、系统设计、对象设计和实现。
               (1)分析:建立可理解的现实世界模型。通常从问题陈述入手,通过与客户的不断交互及对现实世界背景知识的了解,对能够反映系统的3个本质特征(对象类及它们之间的关系,动态的控制流,受约束的数据的函数变换)进行分析,构造出现实世界的模型。
               (2)系统设计:确定整个系统的体系结构,形成求解问题和建立解答的高层策略。
               (3)对象设计:在分析的基础上,建立基于分析模型的设计模型,并考虑实现细节。其焦点是实现每个类的数据结构及所需的算法。
               (4)实现:将对象设计阶段开发的对象类及其关系转换为程序设计语言、数据库或硬件的实现。
               OOSE
               OOSE在OMT的基础上,对功能模型进行了补充,提出了用例(use case)的概念,最终取代了数据流图来进行需求分析和建立功能模型。
               OOSE方法采用5类模型来建立目标系统。
               (1)需求模型:获取用户的需求,识别对象,主要的描述手段有用例图、问题域对象模型及用户界面。
               (2)分析模型:定义系统的基本结构。将分析模型中的对象分别识别到分析模型中的实体对象、界面对象和控制对象三类对象中。每类对象都有自己的任务、目标并模拟系统的某个方面。实体对象模拟那些在系统中需要长期保存并加以处理的信息。实体对象由使用事件确定,通常与现实生活中的一些概念相符合。界面对象的任务是提供用户与系统之间的双向通信,在使用事件中所指定的所有功能都直接依赖于系统环境,它们都放在界面对象中。控制对象的典型作用是将另外一些对象组合形成一个事件。
               (3)设计模型:分析模型只注重系统的逻辑构造,而设计模型需要考虑具体的运行环境,即将分析模型中的对象定义为模块。
               (4)实现模型:用面向对象的语言来实现。
               (5)测试模型:测试的重要依据是需求模型和分析模型,测试的方法与9.8节所介绍的方法类似,而底层是对类(对象)的测试。测试模型实际上是一个测试报告。
               OOSE的开发活动主要分为3类,分别是分析、构造和测试。其中分析过程分为需求分析和健壮性分析两个子过程,分析活动分别产生需求模型和分析模型。构造活动包括设计和实现两个子过程,分别产生设计模型和实现模型。测试过程包括单元测试、集成测试和系统测试三个过程,共同产生测试模型。
               用例是OOSE中的重要概念,在开发各种模型时,它是贯穿OOSE活动的核心,描述了系统的需求及功能。用例实际上是描述系统用户(使用者、执行者)对于系统的使用情况,是从使用者的角度来确定系统的功能。因此,首先必须分析确定系统的使用者,然后进一步考虑使用者的主要任务、使用的方式、识别所使用的事件,即用例。
 
       审核
        依据知识库内容加入的审核标准,由资深技术人员审核内容的正确性和完整性,避免与原有的知识库内容重复或冲突,给出审核意见后提交批准加入知识库中。
 
       信用卡
        早期信用卡业务都是利用手工方式进行处理的。伴随计算机等先进技术的逐渐成熟,信用卡业务经过几十年的发展,基本上实现了电子化。信用卡的各项用途和基本功能,是由发卡银行根据社会需要和银行内部承受能力赋予的。信用卡具有下列四项基本功能:
               转账结算功能
               顾客凭信用卡在指定的商场、饭店购物消费后,所需支付的款项,可以用信用卡签单方式办理支付,这是信用卡最主要的功能。它为社会提供广泛的结算服务,方便持卡人和商家的购销活动,免于支付现金。
               储蓄功能
               凭信用卡可在同城或异地发卡银行指定的储蓄所办理存取款业务。用信用卡办理存款和取款手续比使用储蓄存折方便,不受存款地点和存款储蓄所的限制,可在开办信用卡业务的城市通存通取,并且凭信用卡支取现金。个人领用信用卡开立存款账户,发卡银行按照同期活期储蓄利率计付利息。
               汇兑功能
               当持卡人外出旅游、办事,需在外地支取现金时,可在发卡银行办理存款手续,然后凭卡在汇入地银行办理取款手续。在我国,异地支取现金的手续费比照邮政银行,按取款金额的1%收取;异地存入现金的手续费比照中国人民银行结算办法有关汇兑收费的规定,千元以下的按1%收取,千元以上的收费10元,同城范围内存取现金免收手续费。
               透支功能
               这是信用卡最本质的特点。持卡人凭借信用卡可从发卡人处获得一定的信用,也就是说,持卡人可从发卡人处获取一定额度的贷款或一定的延期付款期限,信用卡这一特点,使其与借记卡区别开来。
 
       支付宝
        支付宝公司于2004年建立,是国内领先的第三方支付平台,致力于提供“简单、安全、快速”的支付解决方案。作为国内的第三方支付霸主,支付宝在天猫,淘宝等B2B、B2C电商支付场景中几乎处于垄断地位。支付宝提供支付及理财服务,包括网购担保交易、网络支付、转账、信用卡还款、手机充值、水电煤缴费、个人理财等多个领域。在进入移动支付领域后,为零售百货、电影院线、连锁商超和出租车等多个行业提供服务,支付宝与国内外180多家银行以及VISA、MasterCard国际组织等机构建立战略合作关系,成为金融机构在电子支付领域最为信任的合作伙伴。支付宝母公司蚂蚁金服入股印度支付巨头paytm,接着又与印尼Emtek集团成立合资公司。在短短几年时间里,支付宝实现了资金转账、生活充值、购物娱乐消费支付、财富管理等功能,相继推出了余额宝、蚂蚁分期、收款码等支付产品,接连推出蚂蚁森林、实施鼓励金计划、线下支付保障金计划等等。
 
       注册
        移动IP通信的第二个阶段是注册。当移动主机已经移动到外地网络并且已经发现了外地代理后,就必须注册。关于注册涉及以下3点:
        (1)移动主机必须向外地代理注册。
        (2)如果截止期到了,移动主机必须重新注册。
        (3)如果移动主机离开某个外地网络,则必须注销。
        具体步骤是:移动主机把注册请求发送给外地代理,并把归属地址和归属地代理地址发送给外地代理。外地代理收到这些信息后,把这些信息转发给移动主机的归属地代理以认证上述信息,如果认证通过,那么移动主机就在外地代理这里注册成功。同时,移动主机的归属地代理也知道了外地代理的地址(转交地址)。
   题号导航      2010年下半年 软件设计师 下午试卷 案例   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
 
第3题    在手机中做本题