




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
快递物流管理信息系统的设计与实现文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)基于B/S结构的快递物流管理信息系统的设计与实现Major:InformationManagementandInformationSystemNortheasternUniversityJune2009毕业设计(论文)任务书毕业设计(论文)题目:基于B/S结构的快递物流管理信息系统的系统设计与实现论文在理论联系实际的基础上对快递物流企业的业务流程进行分析,并运用面向对象的思想对快递物流企业管理信息系统进行系统分析、设计,进而对其各功能模块进行实现。本文作者旨在从业务流程重组思想上吸取精华,结合当今流行的面向对象开发方法,系统、全面地分析了快递物流企业物流业务流程,设计了一套基于B/S结构的快递物流管理信息系统。开发出的新系统能较为有效的应对管理中出现的诸多问题,并且对民营快递物流企业从业人员提供理论和实践上的借鉴与思考。毕业设计(论文)专题部分:学生接受毕业设计(论文)题目日期第周年月日摘要伴随着电子商务时代的到来,快递物流业将成为物流业的巨大业务增长点。而经济全球化使得中国快递业全面对外开放的步伐日益迅速,对民营快递业带来巨大机遇的同时,也带来了巨大的挑战。信息技术的迅猛发展,使得企业的信息化建设变为现实。民营快递企业要想在当今市场中立于不败之地,也必须跟上时代的步伐,加快企业的信息化建设,为客户提供满意的服务,同时提高企业的内部管理效率。本文就是在这样的背景下,从信息化建设的角度所做的尝试,以期对民营快递企业提供有益的建议。论文在理论联系实际的基础上对快递物流企业的业务流程进行分析,并运用面向对象的思想对快递物流企业管理信息系统进行系统分析、设计,进而对其各功能模块实现。本文作者旨在从业务流程重组思想上吸取精华,结合当今流行的面向对象开发方法,运用UML建模工具,系统、全面地分析了快递物流企业物流业务流程,设计了一套基于B/S结构的快递物流管理信息系统。该系统从快递业务的收货、仓储、配送、发货和送货等环节的系统功能模块也包括收货、仓储、配货、发货、送货和系统管理等。此外,针对客户的需求,设计和实现了货物跟踪模块,该模块可以实现用户对货物的实时跟踪。开发出的新系统能较为有效的实现民营快递物流企业的信息化,并且可以对民营快递物流企业从业人员提供理论和实践上的借鉴与思考。关键词:快递物流,管理信息系统,面向对象,UML,系统分析与设计ABSTRACTWiththefastdevelopmentofeconomicglobalizationandinformationtechnology,marketingcompetitionisbecomingmoreandmorefierce.LogisticsindustryisplayingavitalroleintheprocessofdevelopmentrelatedtootherindustriesforacountryespeciallyforChina,thebiggestdevelopingone.Alltypesofindustriesareadoptingorhaveadoptedadvancedtechnologyinordertoimprovetheirserviceandproductqualityinsuchanincreasinglycompetitiveandgreatlychangingsurroundings.ThegreatadvanceofsocialproductionbroughtbyeconomicglobalizationandE-commercepromotestheexpansionofinternationalandnationaltradesandtheaccelerationofcapitalflows,whichrequiresmorelogisticsservices.Asanimportantbranchoflogistics,expresslogisticsistheinevitableproductofsocialandeconomicdevelopment.Itscorefeatureishigh-tech,efficientandthestateofartservice.Inparticular,accompaniedbythearrivaloftheageofelectroniccommerce,expresslogisticsindustrywillbecomeahugeinterestgrowthpoint.However,withthefullopeningofChina'sexpressdeliveryindustry,foreigncompanieshavesetupsuborbranchinChina,whichwillbringtheprivatecourierindustryatremendousimpact.Soitisthebiggestissuefacedbyexpresslogisticsscholarsandpractitionershowtostayfirmlyinsuchanincreasinglyfierceandhugecompetition.Thisarticleaimstoprovideusefulsuggestionstotheprivatecouriercompanies.Itanalyzestheexpresslogisticsbusinessprocessesbasedontheoryandpractice.Thispapercarriesontheexpresslogisticsmanagementinformationsystemanalysis,design,anditsrealizationofthefunctionmodulesonthebasisofobject-orientedmethod.TheauthorofthisarticleaimsatabsorbingthebestmindfromBPR(BusinessProcessReengineering).Inlightoftoday'spopularobject-orienteddevelopmentmethodology,thisexpresslogisticsmanagementinformationsystemisrealizedonthebasisofB/Ssoftwarearchitecture.Thenewsystemwilldealwiththeselogisticsmanagementissuesmoreeffectively.Theauthorhopeitcanarisesomedeepthinkingamongtheoristandpractitioners.KeyWord:ExpressLogistics,MIS,OO,UML,SystemAnalysisandDesign课题研究的背景1.1.1国外快递物流发展现状快递业是快速递送文件、包裹、物品并提供全程控制与相关服务的行业,它是为了满足现代经济发展的需求而新兴的一个行业,于上世纪60年代诞生于美国。目前美日欧快递业的发展比较成熟,随着长期的改革发展与创新,它们都具有非常丰富的管理经验和技术优势,但发展特点和总体趋势各有不同。美国快递市场注重规模效应,多发展大型企业,提供全面的服务,其中以UPS和Fedex最具代表性;欧洲快递业注重个性化,通过在不同市场上确立业务重处;日本快递业则倾向于政府统一规划,寻求资源的最优配置,以实现社会资源的最大化效用[23]。1.1.2国内快递物流发展现状快递业作为我国新兴的服务行业,是现代物流产业和服务贸易领域的重要组成部分,对加强国际经济合作和国内各地区经济交流具有重大影响。我国快递业发展至今,已经形成了国有、民营和外资企业三足鼎立的局面,各市场主体在国际快递、国内异地快递和同城快递三个细分市场内进行着激烈的竞争[24]。针对相应的物流业务,快递物流市场也可细分为国际快递、国内异地快递和同城快递市场。总体来看,我国快递物流市场布局如表所示。表我国快递物流市场结构theStructureofExpressLogisticsMarketinChina国内国内异地快递外资企业从市场份额的分配情况来看,各市场主体都有自己的优势,在国际快递业务中,外资企业占有国际快递高端市场的80%,而在国内异地快递业务上,国有企业享有70%的城际快递市场份额,民营企业则在同城快递中占有绝对优自从快递业引入中国市场,其发展非常迅速。快递业在极大地加快商品流通同时,也激发了更大的快递需求。2007年,中国整个网络购物市场的成交递物流业的发展提供了巨大的市场份额和发展空间。虽然快递行业这几年得到了快速的发展,然而作为一个新兴崛起的行业,依旧有着其不成熟的地方,还存在许多的问题:(1)业务响应速度慢对于一个快递公司而言,货物运输时间的长短是能否取得成功的关键,也是客户所关心的重点[21]。然而,由于在货物运输过程中需要经历很多的环节,而各个环节之间并不能非常平滑的过渡,在各个环节交接过程中往往消耗了大的增长[14]。(2)缺乏保证货品准确投递的机制货物运输过程中需要经历很多的环节,每个环节对于投递成功与否都起到关键性的作用。然而,目前的快递行业各个环节的关系的并没有理顺,缺乏精心的组织安排和周密的衔接,仍停留在粗放式管理的阶段,致使一些环节和部门之间相互脱节,影响了快件传递的速度。同时,由于各个环节各自为政,相对比较独立。所以,一旦货物运输过程中出现问题,很难有一个快捷的方式和统一的平台供快递公司员工使用来讨论解决方案。这将会大大影响员工的工作效率,由于缺乏一个透明、统一的交流平台,也让货物投递出现许多的不确定因素[23]。(3)与客户之间互动不够人性化客户同快递公司交互方式非常单一,通常需要亲自到柜台办理业务,其相应的软件系统支持跟不上业务的发展。快递公司给客户提供的额外服务较少,通常只有提供货物运输方面的核心业务,而缺乏其他个性化的服务项目[23]。1.1.3国内快递物流管理信息系统的应用现状流企业中,80%左右仍处于初级建设阶段,信息化建设的目标是实现对信息、数据的及时收集和有效整合[25]。快递物流信息化建设中存在的问题包括:(1)中小快递物流企业的信息化程度低今年上半年的调查数据显示,快递物流企业采用信息化系统进行管理的不(2)缺乏标准统一的主流信息系统目前物流信息系统的标准较为混乱,不成体系,难以互联互通,难以实现信息共享。网络的设计和优化也缺乏基础理论的指导。(3)开发商难以盈利快递物流软件是管理软件,需求的个性化和生产的批量化是难以统一的,因此造成开发成本极高。例如,上海天天快递公司是国内较大型的民营快递公司,其软件的生产管理系统是单独开发的,仅满足一段时期的业务需要,开发商随尽力为其承建系统,但由于系统无法复用到其他快递公司,开发商由此付出了高额的开发成本,回报却差强人意。(4)提供基础信息和公共服务的平台发展缓慢GPS、GIS技术服务在大型企业的应用比例为23%,在大型物流企业的应用仅为%,在中小企业几乎是空白。基础技术服务应用比例趋少,整个行业的整。(5)信息系统对决策的支持力度不高物流信息化有三个层次,一是以内部整合资源和流程为目的的信息采集和接,形成以供应链为基础的、高效快捷便利的信息平台。三是以优化决策为目的的信息加工、挖掘,把信息变为知识,提供决策依据。从各种调查结果来看,约一半的企业信息管理系统对决策的支持不高,其中38%起到初步的支持加强企业的信息化建设既能提升企业内部管理,同时又能为顾客提供更加方便快捷的服务。快递物流企业内部管理信息化,首先能提高企业处理突发事件的能力。快递物流风险的多样性、复杂性以及风险发生地和管理地之间的远程性等都要求我们通过网络信息技术的的应用,提高企业快速获取动态信息的计分析,提高管理水平。快递企业通过客服管理信息化,能准确掌握顾客信息与需求,能为顾客提供相互交流与合作的平台[26]。课题研究的意义鉴于上述国内民营快递物流企业存在的问题,本文在理论联系实际的基础上对民营快递物流企业的业务流程进行分析,并运用面向对象的思想对快递物流企业管理信息系统进行系统分析、设计,进而对其各功能模块的实现。本文作者旨在从业务流程重组思想上吸取精华,结合当今流行的面向对象开发方法,系统、全面地分析了快递物流企业物流业务流程,设计了一套基于B/S结构的快递物流管理信息系统。开发出的新系统能较为有效的应对上述物流管理中出现的诸多问题,并且对快递物流企业从业人员提供理论和实践上的借鉴与思考。快递物流管理信息系统的应用,可以保障民营快递物流企业的业务流程的顺利实施,实现快递物流企业源站点与目的站点的信息集成,而且支持分布式的应用,进而提高企业经营效率和效益。本文在分析快递业务流程的基础上,为快递物流企业设计了一套管理信息系统,旨在为民营快递物流企业实施管理的信息化提供一个参考模式。课题研究的方法及论文结构1.3.1课题研究的方法本文采用理论与实践相结合的研究方法,运用快递物流和系统开发的前沿理论知识对快递物流业务流程进行分析和优化。文献查阅为本文理论架构与内容充实奠定了基础;面向对象的开发理念是论文系统分析和设计的主导思想;息系统的顺利实现提供了技术上的支持;RationalRose、Dreamweaver8、和WindowsXP等开发工具和系统环境为系统开发和运行提供了良好的平台。1.3.2论文结构论文首先对国内外快递物流发展现状和MIS在国内快递物流企业的应用现状进行了理论阐述,并确定采用面向对象的开发思想进行系统的分析、设计和实现。在需求分析阶段,论文综合企业与客户两方面的需求,利用UML统一建模语言中的业务用例图与业务活动图对快递物流企业的整体业务流程进行分析与建模;在系统分析阶段,利用UML统一建模语言中的用例图、简明用例顺序图、顺序图、协作图、类图以及状态图对系统的功能性需求进行建模;在系统设计阶段,将对系统分析阶段产生的顺序图、协作图和类图等进一步的细化,同时对系统的非功能性需求进行建模,对快递物流管理信息系统的数据库、输JavaBean)等对系统的主要功能进行了实现,实现的系统有良好的可扩展性,为快递企业的分布式应用提供保障。在论文的结尾,还对系统进行了必要的测试和评价以及对系统的安全与可靠性给予了考虑。各章节内容具体安排如下:第一章,绪论,主要对课题的研究背景、研究意义以及论文的研究方法和第二章,相关理论和技术介绍,包括快递物流相关理论、系统开发方法、体系结构以及开发软件等的介绍。第三章,业务需求分析、系统分析,利用UML语言和RationalRose建模工具对其进行全面、系统的分析。第四章,系统设计,结合第三章的系统分析结果,综合考虑系统的技术解决方案,对系统进行设计。第五章,系统实现、测试和评价,利用JSP+Tomcat+SQLServer2000对系统进行实现,并进行了必要的测试和评价。第六章,工作展望和总结。物流基础理论2.1.1物流概念和现代物流特点物流来源于英文LogisticsSystem,Logistics的主要含义是后勤保障。被誉为“管理学之父”的美国学者德鲁克最先提出了“物流”的概念,它在提出这个概念的时候也指出:物流是“一块经济界的黑暗大陆”、“一块未被开垦的处女地”[4]。权威的物流管理协会将物流定义为:物流管理是供应链管理的一部分,它对从原产地到消费地的货物流和货物存储、服务及相关信息进行计划、实施和控制,以满足客户需要[5]。现代物流理论认为,现代物流服务的核心目标是在物流全过程中以最小的综合成本来满足顾客的需求。因此,现代物流具有以下几个特点[5]:物流信息化表现为物流信息的商品化,物流信息收集的数据库化和代码化,物流信息处理的电子化和计算机化,物流信息传递的标准化和实时化,物流信息存储的数字化等。因此,条码技术(Barcode)、数据库技术(Database)、电子订货系统(ElectronicOrderingSystem,EOS)、电子数据交换(ElectronicDataInterchange,EDI)、企业资源计划(EnterpriseResourceplanning,ERP)等技术在物流系统中逐渐得到普遍的应用。物流网络化有两层含义:一是物流与配送网点的网络化,企业根据自身的营销范围和目标,通过详细的分析、选择与优化,逐渐建立全国范围的物流和配送网络,提高物流系统的服务质量和配送速度;二是物流配送系统的计算机通信网络,包括外部网和内部网,外部网(基于Internet的电子商务网络平台)主要用于配送中心与上游供应商或制造商的联系,以及与下游顾客之间的联系,内部网(Intranet)主要用于企业内部各部门间的信息传输。物流系统的自动化可以提高劳动生产率,减少物流作业的差错;还可以方便物流信息的实时采集与追踪,提高整个物流系统的管理和监控水平等。GPS2.1.2快递物流快递(Express)服务(简称快递、速递、速运)是物流行业的一个特殊运营模式,提供了对所寄递物品的担保,进行快速可靠地运输[23]。根据国家邮政局的定义,快递服务(ExpressService:CourierService)“联合国临时主要产品分类”(UNProvisionalcentralProductclassification,以下简称:临时CPC)中将快递服务(CPC7512)定义为:“除国家邮政当局提供的服务以外,由非邮政速递公司利用一种或多种运输方式提供的服务,包括提取、运输和递送信函和大小包裹的服务,无论目的地在国内或国外。这些服务可利用自有或公共运输工具来提供”[23]。快递的主要优势体现在送达速度快、配装手续简单、实行承诺制服务、可随时进行信息查询。2.1.3物流管理信息系统物流管理信息系统也称物流信息系统(LIS,logisticsinformationsystem),由人员、计算机硬件、软件、网络通信设备及其它办公设备组成的人机交互系统,其主要功能是进行物流信息的收集、存储、传输、加工整理、维护和输出,为物流管理者及其它组织管理人员提供战略、战术及运作决策的支持,以达到组织的战略竞优,提高物流运作的效率与效益[3]。物流管理信息系统的具体功能因物流服务系统的对象不同而差异很大。物流服务侧重点不同,其物流管理信息系统的主要功能也不同,比较典型的物流管理信息系统功能有以下几方面[15]:由运输业务部门进行运输管理信息工作。商流是物流业务活动的基础。物流业务部门要掌握订货品种、数量、发货时间等物流信息,以便为物流业务活动做好一切准备工作。在物流业务活动中,由储存业务部门进行有关储存计划、统计资料、物品入库清单,物品出库通知,物品在存盘点记录,储存中损失、损耗的处理等管由配送业务部门进行的有关配送计划、统计资料、配送物品清单、配送路线等管理信息工作。由财务部门进行的物流各环节,主要物流作业、车辆或单项物流活动成本的记录、核算、分析、控制等管理信息工作。一般由综合业务部门进行的有关物流计划、统计资料,物流需求的社会调查资料,物流企业年度经营情况总结等的物流管理信息工作。面向对象开发方法2.2.1面向对象的开发思想面向对象方法是从现实世界中客观存在的事物出发来构造软件,并在系统构造中尽可能运用人类的自然思维方式。面向对象强调以问题域的事物中心来思考问题、认识问题,并根据这些事物的本质特征,把它抽象地表示为系统中的对象,作为系统的基本构成单位。面向对象方法可以使系统直接地映射问题域,保持问题域中事物及相互关系的本来面貌。面向对象方法是一种运用对象、类、继承、封装、聚合、关联、消息和多态等概念和原则来构造系统的软件开发方法[1]。2.2.2面向对象开发方法的开发过程在面向对象开发方法的发展过程中形成了许多复杂的开发过程,不利于向一致的方向发展,妨碍技术交流,也给用户的选择带来困惑[6]。本文结合传统发过程作一概括。上述几种具体方法的主要步骤是分析、设计、构造和测试,本文将面向对象开发方法的开发过程分为需求分析、分析、设计、实现和测试五个步骤,该方法/过程中的模型如图所示。图面向对象开发方法的开发过程及其结果FigureTheDevelopmentProcessanditsResultofOOMethod面向对象开发方法是面向对象思想在软件开发领域的应用,软件开发过程实质是先对系统进行建模,进而对建模的概念系统进行实现。任何一种建模方法都包括两部分内容:建模过程和建模语言。三者之间的关系如图所示。图建模方法的内容构成theContentofModelling上节对面向对象的开发过程进行了阐述,本节将对简要介绍本系统开发用到的建模语言,即UML。在利用面向对象的方法开发系统时需要进行建模分UML准。统一建模语言(UnifiedModelingLanguage,UML)是一种可视化的建模语言,它能让系统构造者用标准的、易于理解的方式建立起能够表达他们想象力的系统蓝图,并且提供了便于不同人之间有效地共享和交流设计结果的机制UML图形是建模的可视化表示,通过绘制UML图形,可以从不同的抽象角○1用例图(UseCaseDiagram):用例图被称为参与者的外部用户所能观察到的系统功能的模型图。用例是系统中的一个功能单元,可以被描述为参与者与系统之间的一次交互作用。参与者是系统的主体,是一种角色,表示提供或接收系统信息的人或系统。活动图(ActivityDiagram):活动图显示了系统的流程,可以是工作流程也可以是事件流。在活动图中定义了流程从哪里开始,到哪里结束,以及在这之中包括哪些活动。顺序图(SequenceDiagram):顺序图表示了对象之间传送消息的时间顺序。每一个对象用一条生命线来表示,即用垂直线代表整个交互过程中对象的生命周期。生命线之间的箭头连接代表信息。顺序图可以用来进行一个场景说明,即一个事务的历史过程。协作图(CollaborativeDiagram):协作图对在一次交互中有意义的对象和对象间的链建模。类图(ClassDiagram):类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联。对象图(ObjectDiagram):对象图是对包含在类图中的各个类进行实例建模,它显示了在某一时间点上系统中的一组对象以及它们之间的关系。○7状态图(StateDiagram):状态图是一个类对象所经历的所有历程的模型图。状态由对象的各个状态和连接这些状态的变迁组成。组件图(ComponentDiagram):组件图表示了系统中的各种组件。部署图(DeploymentDiagram):部署图用来描述系统的实际物理结theUMLViewsandtheirRelationshipUML图之间的对应关系见表。表UML视图简介及其与UML图对应表UMLViewIntroductionandtheCorrespondencewithUMLDiagram概述概述描述系统应该交付的功能,即外部参与者所看到的功能。描述如何实现用例视图中提出的那些系统功能,可以细分为静态视图和动态视图。描述系统的非功能性特性,它将系统划分为进程和处理器。描述系统的实现模块以及它们之间的依赖关系。显示系统的物理部署。使用者客户、设计人员、开发人员以及测试人员设计人员、开发员开发人员、系统集成人员开发人员开发人员、系统集成人员和测试人员用例图、活动图静态图(类图、对象图)动态图(状态图、活动图、顺序图和协作图)状态图、协作图、组件图和部署图组件图部署图用例视图逻辑视图并发视图组件视图部署视图其中顺序图和协作图统称为交互图(InteractiveDiagram)。上述UML的九种图共同合作从不同侧面来描述建模的系统,即通过不同的视图(View)显示被建模系统的不同方面。这里视图是一个抽象的概念,它是由许多图(Diagram)才能构造出该系统的完整描绘。UML从逻辑上包含五种视图:用例视图(UseCaseView)、逻辑视图(LogicalView)、组件视图(ComponentView)、并发视图(ConcurrencyView)和部署视图(DeploymentView)。UML各种视图之间的。系统架构及实现技术软件体系结构的风格很多,但最主要也是最常见的不外乎客户机/服务器(Client/Server,C/S)风格和浏览器/服务器(Browser/Server,B/S)风格[20]。大的好处是不依赖企业外网环境,即无论企业是否能够上网,都不影响应用theSoftwareArchitecturebasedonC/S最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序,二者可分别称为前台程序与后台程序。当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较C/S架构的劣势是高昂的维护成本且投资大首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。S式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet)等访问和操作共同的数据;最大的缺点是对企业外网环境依赖性太强,由于各种原因引起企业外网中theSoftwareArchitecturebasedonB/S为方便的特性。所有的操作只需要针对服务器进行,而无须对客户端的浏览器息化发展的主流方向。应用服务器运行数据负荷较重由于B/S架构管理软件只安装在服务器端上,网络管理人员只需要管理服少部分事务逻辑在前端实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。一(3)本系统体系结构的选择鉴于上述B/S体系结构具有分布式和维护升级方便等优点,考虑到快递物流公司一般具有多个站点,且站点之间相距遥远,本系统采用B/S体系结构。2.3.2动态网站开发技术的选择目前,最常用的三种动态网页语言有PHP(HypertextPreprocessor),ASP(ActiveServerPages)和JSP(JavaServerPages)[16]。的,在国外非常流行PHP和Mysql搭配使用,可以非常快速的搭建一套不错的动态网站系统,因此国外大多数主机系统都配有免费的Apache+PHP+Mysql。通常认为这种搭配的执行效率比IIS+ASP+Access要高,而后者的使用还必须另外交钱给微软。ASP是微软的WindowsIIS系统自带的脚本语言,利用它可以执行动态的也是这几种语言中唯一的一个不能很好支持跨平台的语言。因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。Java虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。因此EJB(EnterpriseJavaBeans)来执行应用程序所要求的更为复杂的处理,但是这种网站架构因为其业务规则代码与页面代码混为一团,不利于维护,因此并是将应用分为模型、视图和控制器三部分。模型是指应用程序的数据,以及对这些数据的操作;视图是指用户界面;控制器负责用户界面和程序数据之间的理与页面以及数据分离开来,这样当其中一个模块的代码发生改变时,并不影响其他模块的正常运行,所以基于MVC的Web架构更适应于大型应用开发的潮2.3.3JSP、JavaBean、JDBC技术JSP(JavaServerPage)它是由SUN公司倡导的由许多公司参与共同建立起来的一种动态网页技术标准。它是一种基于Java的技术,所以它用来产生跨平台和跨Web服务器的动态网页技术。JSP的执行原理和熟知的VBScript和JavaScript并不相同,它是完全在服务器端执行的,而不像大多数的脚JSP先执行其中的程序片断,然后将执行的结果以HTML页面的形式返回给浏览器端[2]。支持等。同时JSP页面还具有自身的优点,如需要时自动重新编译和与Web开发工具具有更大的兼容性。ipt和动作。其中,伪指令是指示JSP容器生成什么代码的命令;在表达式和优点1)一处编写随处运行。Server/JSP的WebServer/ApplicationServer系统,它可以让你在任意环部署,在任意环境扩展。由多台服务器进行集群和负载均横,到多台Application进行事务处理、消息Java显示了一个巨大的生命力。4)多样化和功能强大的开发工具支持。是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露称为属性。众所周知,属性名称符合这种an用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何faceJavaJDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。也就是说,开发人员可以不必写一个程序访问Sybase,写另一个程DBC序能够自动地将SQL语句传送给相应的数据库管理系统(DBMS)。不但如此,使台上编写不同的应用。Java和JDBC的结合可以让开发人员在开发数据库应用时真正实现“WriteOnce,RunEverywhere!”[9]。2.3.4数据库相关概念数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”[8]。数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据数据库管理系统(DatabaseManagementSystem,DBMS)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。系统开发工具简介2.4.1RationalRoseRose是美国的Rational公司的面向对象建模工具,利用这个工具,可以建立用UML描述的软件系统的模型,而且可以自动生成和维护C++、Java、VBOOSE,以及OMT。其中统一建模语言由Rational公司3位世界级面向对象技术专家GradyBooch、IvarJacobson、和JimRumbaugh通过对早期面向对象研究和设计方法的进一步扩展而得来的,它为可视化建模软件奠定了坚实的理论基础[13]。RationalRose是一个完全的,具有能满足所有建模环境(Web开发,数据建模,VisualStudio和C++)需求能力和灵活性的一套解决方案。Rose允许开发人员,项目经理,系统工程师和分析人员在软件开发周期内在将需求和系统的体系架构转换成代码,消除浪费的消耗,对需求和系统的体系架构进行可视化,理解和精练。通过在软件开发周期内使用同一种建模工具可以确保更快更好的创建满足客户需求的可扩展的、灵活的并且可靠的应用系统。2.4.2MacromediaMacromedia是建立Web站点和应用程序的专业工具,由美国着名的多媒体开发商Macromedia公司推出的一套专业可视化网页开发工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合在一起,其功能强大,使得各个层次的开发人员和设计人员都能够快速创建界面吸引人的基于标准的网站和应用程序。从对基于CSS的设计的领先支持到手工编码功能,提供了专业人员在一个集成、高效的环境中所需的工具。开发人员可以使用及所选择的服务器服务和旧式系统[11]。2.4.3a环境,由一个处于操作系统层之上的运行环境还有开发者编译,调试和运行用2.4.4MicrosoftSQLServer2000MicrosoftSQLServer2000数据库是Microsoft公司在大型数据库领域的一个版本和旗舰产品,也是Microsoft公司争夺电子商务领域最重要的核心部件市场—网络数据库平台的一大利器,是Windows数据库家族中出类拔萃的成员,它在易用性、可伸缩性、可靠性和其他性能方面做出了一系列革新,并且为开发者提供了快速简便的编程模式。它为企业运作、电子商务和移动计算提供了广泛的可伸缩性的解决方案,提供一个综合平台。这个平台使用户可以轻松地设计、建立、管理及使用数据仓库解决方案,它具有强大的数据仓库,系统规划3.1.1快递物流企业战略规划本民营快递物流企业立足辽宁省沈阳市,辐射东北三省,目前在沈阳、长春、哈尔滨、大连、齐齐哈尔等设有公司站点。公司未来的发展方向为做强做大快递物流服务,提供更多的物流增值业务,提高快递效率。公司战略目标如(1)提高东北三省快递物流服务的市场占有率,力争在五年内达到50%以上。将快递服务的地区延伸至县级以下;(2)在稳固东北三省快递物流服务的同时,向京津和中原地区扩展,力争(3)进一步提高快递物流服务水平,提升快递效率;(4)形成与客户的良性互动,提供更多便捷的物流增值业务。为了达成以上战略目标,快递物流企业的信息化建设是重中之重。通过信息化建设,一方面快递物流企业可以优化业务流程,提高生产效率;另一方面可以搭建起与客户之间互动的健康平台,提高客户服务水准,留得住客户,进而提高客户的企业认同感。3.1.2快递物流管理信息系统规划快递物流信息系统规划应遵循目标导向原则、需求导向原则、立足现实原则、适度超前原则[18]:1本民营快递企业是沈阳的一家快递公司,公司主要以国内异地快递和同城快递为业务,目前规模较小,但发展势头强劲。有关公司资料来自于电话采访和网络资源。(1)目标导向原则:物流信息化规划目标必须与企业战略目标相一致。(2)需求导向原则:企业物流运作中关键业务和流程,对实现物流战略目标意义重大。信息化规划必须正确识别这些关键业务和流程,正确识别物流战略对这些业务和流程的信息化需求,并从满足战略需求着眼,有重点、有针对(3)立足现实原则:信息化不是简单的电子化,需要与企业的具体情况相结合、与具体发展阶段相结合、与物流实际相结合。(4)适度超前原则:信息化是一个不断发展的过程,一蹴而就和一劳永逸。业务需求分析业务需求分析是在用户调研的基础上,对调研获得资料进行整理和分析,进而概括总结出企业的业务需求(并非系统需求)。UML利用业务用例图和高层活动图来捕获客户的需求,这里的客户需求是全方位的,它既包括手动形式执语“业务用例图”来代替用例图,这样做的目的是为了清晰的区分它们,从而消除在将业务系统模型转换为IT系统时可能产生的混淆。实践证明,活动图在业务系统减摩中有很大的用武之地。因此,对于快递物流的业务需求分析利用业务用例图和高层活动图进行建模[1]。3.2.1确定参与者业务系统的外部用户(例如客户或业务伙伴,在UML中称为业务角色)将使用业务系统的输出,这些外部用户无需了解业务用例具体如何执行详细信息。通过对快递物流企业的业务调研,我们发现与业务系统打交道的主要是源站点客户和目的站点客户,这两类用户可统称为客户[13]。与业务系统有关的参与者还包括业务系统内部的员工或工作人员(在UML中称为业务工人),这些业务工人是外部用户与业务系统打交道的“接口”,即业务系统通过业务工人为外部用户提供服务,同时对业务系统来说业务工人也在实现着某项功能。这里的功能和服务是不同的,至少从角度上考虑是不一样的。通过用户调研和资料搜集,我们发现下列几类业务工人是快递物流业务目的站点收货员;3.2.2确定业务角色(BusinessActor)从参与者中我们可以筛选出源站点客户和目的站点客户为业务角色。这里的源站点客户和目的站点客户是相对的,对于一次交易来说,某客户是源站点客户,而对于另外一次交易,他有可能成为目的站点客户,因此,二者角色是可以互换的,但这里为了更清晰的说明问题,并非将二者统称为客户。不过在接下来的系统设计和实现中我们对该问题进行了梳理。3.2.3业务用例图业务用例是描述机构中一组相关的工作流。机构中的全部业务用例一起完整的描述业务目标[1]。业务用例图的元素包括业务工人、业务角色和业务用例。业务工人是机构中的角色,业务角色是机构外部和机构交互的人,业务用例是机构中的一组相关工作流。通过上述分析,我们可以得出快递物流业务用例图如图所示。图快递物流业务用例图theBusinessUseCaseDiagramofExpressLogistics表业务用例图要素表BusinessUseCaseElementTable源站点收货、配货、发货、目的站点收货、送货和客户附加服务源站点客户、目的站点客户源站点收货员、配货员、司机、目的站点收货员、送货员素业务用例业务角色业务工人图概要描述了快递物流的主要业务流程,对于一些细节性的业务活动我们并未列出。该业务用例图涉及的要素如表所示。3.2.4高层活动图活动图与程序设计中的流程图相似,用于表示活动集。在业务需求分析中,我们将用活动图来描述这些业务过程,也就是描述业务系统的功能。在活动图中可以明确地看出参与者们(业务工人和业务角色)是并行执行某个业务用例还是各自独立地执行。正如结构化分析中的流程图具有层次性一样,活动图也是有层次结构的。用例的具体细节,在后续的系统分析阶段将进一步细化。快递物流业务高层活图快递物流业务高层活动图theHigherActivityDiagramofExpressLogistics系统分析系统分析是为了捕获和描述系统的所有需求,建立一个定义了系统问题域类中关键类的模型(即系统中处理的事物),目的是为系统开发人员和建立系统需求的的人员(用户/客户)提供一个沟通的基础,让他们可以相互交流各自对系统的看法和理解,并达成一致意见。因此,一般来说,分析都是通过与用户或客户的协作完成的[13]。分析不应该受技术解决方案或实现细节的限制。也就是说,在分析阶段,开发人员不应该考虑有关代码和程序的问题,因为分析只是理解和实现系统的第一步。系统分析包括两部分的内容:系统需求分析和问题域分析[29]。本课题要研究的是快递物流管理信息系统,因此从系统类型上应属于ITT务需求分析为基础。3.3.1系统需求分析系统需求分析会在客户和系统提供者之间产生一个协议。其中,客户可以是一个与系统提供者在同一个组织中的用户,也可以是另一个公司的用户,这时会基于需求文档编写一份详细的业务合同。尽管通常不可能在这样的文档中定义所有的事情,但还是应该尽可能地细化系统需求[31]。系统需求分析通常与业务需求分析集成,在业务需求分析中的业务资源、规则和目标都将被建模。它描述IT系统能给用户提供哪些功能,在系统需求系统需求分析通常利用UML中的用例图和简明用例顺序图2来表示[13]。○1用例图展示了IT系统的所有使用者(参与者),以及在IT系统中这些使用者可以执行的功能(用例);简明用例顺序图用来描述每个用例中用户与IT系统的交互过程。这里的简明用例顺序图是为了和后面的问题域分析中的用例顺序图清晰的划分而采结合业务用例图和调研资料,对快递物流管理信息系统的用例图分析如参与者代表与系统接口的任何事物或者人,通常代表着一个系统的使用者,或者需要与系统打交道的人或事物。它描述的是用户在使用IT系统时可以扮演的角色,而不一定是一个具体的人。通过对系统的需求分析,系统的参2这里的简明用例顺序图是一种新的顺序图使用方法,它是将整个系统看作一个对象,通过描述参与者与系统的交互,从动态的角度对系统用例图进行的扩展和细化。管理员;4)司机(驾驶员);;6)目的站点仓库管理员;其中,源站点客户和目的站点客户均来自于业务用例图中的业务角色,而其他的参与者都来自于组织内部,在业务系统分析中称为业务工人,而相对于系统来说是系统的参与者。确定系统用例用例是系统参与者与系统交互过程中所需要完成的事物,也是系统和参与者之间的对话,它表示系统提供的功能,即系统给操作者什么样的使用操作通过对系统的分析和上述角色的分析,确认用例如下:1)源站点收货2)仓储3)配货4)发货5)目的站点收货6)目的站点仓储7)送货8)客户附加服务9)系统管理其中,源站点收货与目的站点收货是两个不同的概念。源站点收货面向的对象是客户,而目的站点收货面向的对象是其它某一站点(即源站点)。但二者性质是一样的,因此可以将源站点收货和目的站点收货抽取出一个收货用例,二者都对收货用例进行了扩展。这里的客户附加服务包括客户货物跟踪、注册登陆、客户信息服务,由于这些用例描述的并非功能性需求,因此将其列为客户附加服务。创建用例图用例图被称为参与者的外部用户所能观察到的系统功能的模型图,是描述需求分析中的业务需要IT系统参与的工作。通过对系统的分析,快递物流管理信息系统的用例图如图所示。图快递物流管理信息系统用例图theUseCaseDiagramofExpressLogisticsMIS对系统中的用例描述如表所示。(2)简明用例顺序图这里的简明用例顺序图是我们倡导的一种UML顺序图的特殊用法。简明用例顺序图是用来描述每个用例中用户与IT系统之间的交互过程,它仍属于从系统外部来看待系统所能提供的功能,因此属于外部视图的范畴,是系统需求分析的内容之一。这里的简明用例顺序图涉及到事件的概念并利用了UML中的扩展构造型机语境中,事件是用户对IT系统的操作。事件是用户通过用户界面发起的,例如单击搜索按钮或按Enter键,这些都将执行系统内部的某些东西[34]。表快递物流管理信息系统的用例描述theUseCaseDescriptionofExpressLogisticsMIS用用例描述源站点收货收到客户的业务需求通知后,源站点收货员上门取货,货,填写快递单,并将快递单信息录入系统。仓库管理员对收货员收到的货物根据将要送达的站点进行分类和仓储,填写仓储单。每个仓库管理员负责一个仓库。每个仓库仓储要送达其他某个或某些站点配货员根据车辆和快递货物的情况进行配货,填写配根据配货单,源站点司机进行送货。每个司机只负责一个车辆,一个车辆可由多名司机来负责。目的站点收货员接收送达本站点的货物,同时填写已达货物清单。这里的收货员与目的站点收货员面对的对象是有区别的。目的站点仓库管理员对到达的货物根据要送达的区域进行分类和仓储,填写仓储单。每个仓库仓储要送达某个区域或某些区域的货物。送货员对要送达的货物进行派件处理,即送货到门,同时要求客户填写到货确认。客户附加服务包括服务信息查询如报价等、系统注册登陆和货物跟踪服务。系统管理员对车辆、仓库、工作人员、客户以及单据信息等进行管理,这些统称为系统管理,即所谓的后仓储配货发货货储送货客户附加服务系统管理对于本课题,采用简明用例顺序图对用例进行细化是合理的。由于快递物流管理信息系统的目标之一就是实现信息或数据收集、加工和处理的方便和快捷,因此,对于以信息为主要处理对象的系统来说,利用简明用例顺序图是明智的选择。理论和实践已证明将以下两种类型的事件区分开来是有价值的:询事件的结果就是已经显示的信息。换事件的结果取决于转变是否成功,如果成功,信息将被存储、修改或删除;如果失败,那么对用户和系统而言就没有任何东西发生改变。L构造型,它是UML中一种用来表示自定义元素的扩展机制。我们将对该语言进行扩展,创建两种特定的事件类型:在事件名称之前添加构造型《Q》表示该事件是查询事件;在事件名称之前添加构造型《M》表示该事件是转换事件。在简明用例顺序图中,我们能够清楚地了解其涉及的是什么类型的事件,但并没有将IT系统对这些事件的应答描述成一个独立的事件,因为每个事件都有其固有的反馈。本系统共有11个用例,每个用例都对应有一个简明用例顺序图,分别为:源站点收货简明用例顺序图、源站点仓储简明用例顺序图、配货简明用例顺序图、发货简明用例顺序图、目的站点收货简明用例顺序图、目的站点仓储简明用例顺序图、送货简明用例顺序图、注册登陆简明用例顺序图、客户信息服务简明用例顺序图、货物跟踪简明用例顺序图和系统管理简明用例顺序图。图源站点收货简明用例顺序图theConciseSequenceDiagramofthePickupUseCaseatSourceSite源站点仓储简明用例顺序图图源站点仓储简明用例顺序图theConciseSequenceDiagramoftheStorageUseCaseatSourceSite配货简明用例顺序图图配货简明用例顺序图theConciseSequenceDiagramoftheDistributionUseCase发货简明用例顺序图图发货简明用例顺序图theConciseSequenceDiagramoftheDeliveryUseCase注册登陆简明用例顺序图图注册登陆简明用例顺序图theConciseSequenceDiagramoftheRegistrationandLoginUseCase3.3.2问题域分析对系统进行需求分析后,接下来的工作就是问题域分析。该分析活动应该没有任何技术或实现细节,因为它是对将要解决的问题的确切陈述,所以分析应该包含一个理想的模型,另外,分析还涉及到那些与问题域有关的必备知识问题域分析将产生问题域的模型:类、对象,以及根据真实世界中各实体之间关系进行建模的交互模型。这里将利用交互视图、类图和状态图对问题域进行分析,其中交互视图包括顺序图和协作图[13]。交互视图和用例之间存在着很紧密的关系。用例展开的是外部视图,它将统内部发生的事情。交互视图展示了处理特定任务所需的对象,以及这些对象相互通信的机制。UML使用两种图来进行交互视图建模:顺序图和协作图。顺序图表示对象之间传送消息的时间顺序,每一个对象用一条生命线来表示,用垂直线代表整个交互过程中对象的生命周期。生命线之间的箭头连接代表信息。顺序图可以用来进行一个场景说明,即一个事务的历史过程。顺序图关注的焦点是时间。这里的顺序图和简明用例顺序图是不同的,简明用例顺序图是外部视图的范畴,而顺序图着眼于系统内部,将系统展开进行分析。协作图是对在一次交互中有意义的对象和对象间关系的建模。它也可以描述对象之间是如何交互的,但协作图中的主要焦点是空间。将焦点集中于空间意味着协作图对对象之间的空间关系特别感兴趣,因而会在图中明确地显示它顺序图和协作图结合起来,从不同角度来看待交互过程,因此可以完整的描述一个用例中对象间完整的交互过程。问题域分析中的顺序图和协作图是对系统需求分析中的简明用例顺序图的具体化和细化,它通过对IT系统分解为各个具体的实体对象,对参与者与系统的交互进行可视化建模,即它描述了系统如何实现用户所需的服务或系统需要提供的功能。本系统共有11个用例,同简明用例顺序图一样,分析顺序图和分析协作站点收货分析交互视图、源站点仓储分析交互视图、配货分析交互视图、发货分析交互视图和注册登陆分析交互视图。图源站点收货分析顺序图theAnalyticSequenceDiagramofthePickupatSourceSite源站点收货分析协作图3这里的分析顺序图和分析协作图,是对系统需求分析中的简明用例顺序图的细化和具体化,通过对系统分解为各个实体对象,对参与者和系统的交互进行可视化建模。这里是为了与前者区分而采用的叫法。图源站点收货分析协作图theAnalyticCollaborativeDiagramofthePickupatSourceSite源站点仓储分析顺序图图源站点仓储分析顺序图theAnalyticSequenceDiagramoftheStorageatSourceSite源站点仓储分析协作图图源站点仓储分析协作图theAnalyticCollaborativeDiagramoftheStorageatSourceSite配货分析顺序图图配货分析顺序图theAnalyticSequenceDiagramoftheDistribution配货分析协作图图源站点配货分析协作图theAnalyticCollaborativeDiagramoftheDistribution图发货分析顺序图theAnalyticSequenceDiagramoftheDelivery发货分析协作图图发货分析协作图theAnalyticCollaborativeDiagramoftheDelivery注册登陆分析顺序图图注册登陆分析顺序图theAnalyticSequenceDiagramoftheRegistrationandLogin注册登陆分析协作图图注册登陆分析协作图theAnalyticCollaborativeDiagramoftheRegistrationandLogin(2)问题域类图(分析类图)类是具有相同特征(属性)和相同行为(方法)的对象的集合,类的名称、属性和方法是描述一个类的三个最基本的方面。类图是面向对象系统的建模中最常见的图,显示了一组类、接口、协作以及他们之间关系[1]。在抽象模型中表述现实世界,可以分为两个步骤:第一步,将个别人或事物抽象成对象;第二步,把类似的对象组合成类。通过对快递物流管理信息系统用例视图、简明用例顺序图和交互视图分析,寻找对象,定义对象,将功能分配到对象上,并归纳各对象应记录的属性,对这些对象进行抽象,描述过程中的类。对顺序图的消息进行分析,消息的传递转化为类的操作。上节中顺序图和协作图描述了快递物流基本工作流程,显示了描述事件流过程中的对象 (顺序图和协作图的矩形),对这些对象进行抽象,描述出业务处理过程中的类。对顺序图和协作图的消息(对象之间的通信,即图中的箭头)进行分析,每个消息都转化为类的操作[33]。通过对系统需求分析和细化用例可以发现快递物流管理信息系统的问题域物、配货单、发货单、已达货物列表和送货单。通过对上述类分析,可以发现上述类之间是有某种关系的。在UML中类之间的关系有关联(Association)、泛化(Generation)、依赖 (Dependency)和精化(Refinement)四种[1]。只有定义和描述了类之间的关系,各个类才能构成一个整体、有机的静态模型即类图。关联是类之间的一种连接。在UML中,关联关系定义为描述一组链接的一种关系,其中,链接定义为一组对象之间的一种语义连接。在关联关系中,也存在着一种称为“聚合”的关系,它是关联的一种特殊情况。泛化是一种在一般元素和特殊元素之间存在的关系。其中,特殊元素可以只包含那些附加信息。允许使用一般元素的实例的任何地方,都可以使用特殊元素的实例来代替。依赖是元素之间存在的一种关系,其中,一个是依赖元素,一个是被依赖元素。对后者的影响将影响到前者。精化是同一事物的两种描述之间的一种关系,这两种描述是在不同抽象层对上述类的分析,快递物流管理信息系统所涉及的类之间的关系包括关联、泛化和聚合三种,其中关联关系这里不单独列出,将在问题域类图中列出。其中,泛化关系如图所示。图类泛化关系示例图FiguretheDiagramofGeneralizationRelationshipbetweenClasses源站点仓库和目的站点仓库是相对的概念,源站点与目的站点之间是可以性,同时都具有添加、删除和更新状态等操作,因此,可以将两者相同的部分抽象出一个新的类,即父类。二者都是该父类的特殊形式,可以继承父类,同时在父类的基础上添加自己独有的属性和操作。其他类之间的泛化关系与上述类似,在此不作赘述。快递物流管理信息系统中的类之间的关系除了泛化外,还有一种聚合关系,聚合关系示例图见图。图类聚合关系示例图FiguretheDiagramofAggregationRelationshipbetweenClasses聚合关系是关联关系的一种特殊形式。它指出了类之间的关系是“整体与部分”的关系。上图中的配货单是由发货单组成的,发货单是针对每个车辆生成一个发货单,而配货单是对所有车辆的配货情况的汇总,因此,二者是聚合该系统涉及的问题域类有多个,完整的分析类图如图所示。图快递物流管理信息系统分析类图theAnalyticClassDiagramofExpressLogisticsMIS包含类之间关系的分析类图如图所示。图快递物流管理信息系统分析类图(含类之间的关系)theAnalyticClassDiagramofExpressLogisticsMIS(withRelationship)一般来说,状态图(StateDiagram)是对类的描述的补充。它用于显示类的对象可能具备的所有状态,以及那些引起状态改变的事件[1]。在实际建模时,并不需要为所有的类都绘制状态图,仅对那些具有多个明确状态的类,并且类的这些不同状态会影响和改变类的行为时才绘制类的状态对该系统进行分析,货物和车辆两个类都有多个明确的状态,并且状态的不同会影响类的行为。货物类有已收货、配货中、发货中和送货中四种状态,不同的事件会对货物的状态有不同的影响。货物类的状态图如图所示。图货物类状态图theStateDiagramofGoodsClass车辆类有闲置中、使用中、维修中和报废中四个状态。车辆类的状态图如图车辆类状态图theStateDiagramofVehicleClass系统设计目标和原则4.1.1系统设计目标系统的设计目标:可扩展性,灵活性,可插入性[19]。(1)可扩展性:新的功能很容易集成到现有的系统中去,而不影响到系统(2)灵活性:允许代码修改平稳的发生。当修改一处时不至于影响到另一处,这样可以缩小维护的代价;(3)可插入性:容易用一个类替换已经存在的类。只要接口一致,更改实现类不影响类的使用者。4.1.2系统设计原则在系统设计阶段,分析阶段的结果被扩展为一个技术解决方案。新类被加入进来,以提供以下一些技术基础结构:用户界面、处理对象存储的数据库、与其他系统的通信、与系统中各种设备的接口等[7]。设计阶段的目标是为待解决系统指定一个可行的技术解决方案,该方案能够很容易地转变为程序代码。在设计阶段,不仅会细化那些在分析阶段定义的类,还会加入一些新的类,以便处理技术领域的问题,如数据库、用户界面、通信和设备等[1]。(1)统一各种原始单据的格式,统一帐目和报表的格式;(2)删除不必要的管理冗余,实现管理规范化、科学化;(3)界面尽量简单化,做到实用、方便,满足企业不同员工的需要;(4)系统设计考虑到系统的各种角色,对使用本系统的用户设计合理的使分:○1总体设计(ArchitectureDesign):这是一个高层的设计,包括体系结构设计和总体功能设计,前者用来定义包(子系统),包括包之间的依赖关系和主要的通信机制;后者从功能的角度宏观设计系统。详细设计(DetailedDesign):此部分进一步细化包内的内容,对所有的类都详尽地进行描述,为编写代码的程序员提供一份清晰的规格说明。同时,可以用UML中的动态模型来说明对象如何在特定的情况下做出相应的行总体设计4.2.1体系结构设计良好的体系结构是一个可扩展和可修改的系统的基础。在进行体系结构设计时,包可以专注于一个特定的功能领域的处理,或者专注于一个特定的技术领域的处理[1]。本系统中的包,有以下几个:用户界面包:该包的内容描述整个用户界面所使用的类,这些类提供的操作允许用户查看系统中的数据,并允许用户输入新数据。这些类是基于JavaAWT,后者是Java中用来编写用户界面应用程序的一个标准库。用户界面包和下面要介绍的业务对象包合作,后者包含那些实际存储数据的类。其中,用户界面包调用业务对象提供的操作,从而对这些对象进行检索和插入数据操作。本系统的用户界面包包括源站点收货窗口类、目的站点收货窗口类、配货窗口类、注册窗口类、登陆窗口类等。业务对象包:该包来自于分析模型的问题域类。在设计阶段,将进一步细化这些类,从而完整地定义它们的操作,并且为它们增加永久存储的支持。业务对象包与将要介绍的数据库包合作,因为所有的业务对象类必须继承于数据库包内的永久类。本系统中的业务对象包包括站点类、车辆类、仓库类、用户类、快递单类数据库包:数据库包为业务对象包中的类提供服务,以便后者能够实现永久存储的功能。在本系统中,永久类的属性信息将通过关系型数据库来存储。这里涉及到将系统中的各个类映射到传统关系模型中的相应的表的工作,这是后面将要介绍的数据库设计的内容。实用工具包:实用工具包包含了一些可以被系统中其他包使用的服务。这些包的内部设计如图所示。图快递物流管理信息系统体系结构图theArchitectureDiagramofExpressLogisticsMIS4.2.2总体功能设计总体功能设计也属于高层设计,它和体系结构设计从不同的角度共同描述系统的全貌。总体功能设计侧重于系统的功能,而体系结构设计着重于系统的根据系统分析的结果,可以得出系统的总体功能结构图如图所示。注注册登陆模系统管理模客户信息服货物跟踪管送货管理模目的站点仓目的站点收发货管理模配货管理模源站点仓储源站点收货快递物流管理信息系统图快递物流管理信息系统总体功能结构图theFunctionStructureDiagramofExpressLogisticsMIS系统功能结构图是根据用例图得到的,该系统共分为11个模块。每个子系统完成其中的一部分功能,各个子系统之间相互协作、共享信息,并非是孤立的个体,整个系统共同满足用户全方位的需求。详细设计在面向对象方法中,系统详细设计阶段对每一个类加以丰富和完善细节,对在实现过程中使用的类进行详细的定义。最常用方法是把分析得出的类直接带进设计中,详细设计成为添加细节并做出实现决策的过程[6]。详细设计的目的是描述新的技术类,即在用户界面包和数据库包中的类,并且对分析阶段已形成的业务对象类的描述进行扩展和细化。这是通过创建新阶段,进一步细化了这些图的定义,并站在一个更高的技术层面来定义它们。分析阶段对用例的描述在此用来验证设计阶段对这些用例的处理是否正确,另外,还可以使用顺序图来说明每一个用例是如何在系统中实现的。由于本系统使用关系数据库,因此应将系统中的各个类映射到传统关系模型中的相应的表,即详细设计中应包括数据库设计的内容。具体说来,详细设计需要以下两个方面的工作:类图详细设计。4.3.1交互图详细设计交互图详细设计是对系统分析阶段产生的顺序图和协作图进一步的细化,设计出的交互图中的事件可以直接作为实现类中的操作,同时也显示了类之间的消息传递机制,通过一个类调用另一个类的方法(操作),来实现类之间的交互图详细设计是系统详细设计中非常重要的内容,它可以为系统实现提供基础。(1)源站点收货详细设计交互图图源站点收货详细设计顺序图theDetailedDesignSequenceDiagramofthePickupatSourceSite图源站点收货详细设计协作图theDetailedDesignCollaborativeDiagramofthePickupatSourceSite(2)源站点仓储详细设计交互图图源站点仓储详细设计顺序图theDetailedDesignSequenceDiagramoftheStorageatSourceSite图源站点仓储详细设计协作图theDetailedDesignCollaborativeDiagramof
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025供暖工程合同范本
- 2025年电工(高级)考试试卷及答案
- 2025股票发行辅导合同
- 肾下垂的临床护理
- 肠系膜脂膜炎的临床护理
- 新质生产力杉杉股份
- 2025技术实施许可合同书
- 2025年天津市房屋租赁合同模板
- 2025地下车库租赁合同范本
- 2025家居智能小家电区域代理商销售合同书
- 药品召回管理课件
- 石化工程质量管理培训
- 审计访谈系列之访谈提纲2021年
- 律师案件评估报告范文
- 《中国血糖监测临床应用指南(2021年版)》解读课件
- 【MOOC】构造地质学-中国地质大学(武汉) 中国大学慕课MOOC答案
- 【MOOC】模拟电子电路与技术基础-西安电子科技大学 中国大学慕课MOOC答案
- 医疗质量控制培训方案
- 病理性近视怎治疗
- 《工业机器人系统维护》试卷6及答案
- 设备调试人员培训
评论
0/150
提交评论