《毕业论文医药管理信息系统论文.docx》由会员分享,可在线阅读,更多相关《毕业论文医药管理信息系统论文.docx(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、医药业务管理系统 摘要:本系统是满足中国医药企业需求的综合信息管理系统,专门应用于医药批发商业和配送、连锁型企业,软件将企业的各方面资源(信息、人力、商品、资金、设备、时间、方法等方面)进行优化、整合,提高资金运营效率、建立企业-供应商-客户之间的供销链,在提高资金周转率、降低成本、减少库存积压、规范企业运作、提高客户服务水平等方面提供强有力的管理;帮助企业按照GSP标准进行药品的全面质量控制;帮助高层管理人员对企业中大量的、错综复杂的动态数据和信息进行及时、准确的分析和处理,使企业管理真正由经验管理进入科学管理模式,使企业的管理手段和管理水平产生质的飞跃。通过系统的设计到系统的正式运行,基本
2、上达到了系统的设计要求,实现了医药管理的现代化:根据不同的数据项,打印输出相应明细报表,主要包括药品名称、药品编号、规格型号、数量、单价、金额、最高库存、最低库存等相关内容。并且可以方便的查询进库、出库等相关式象。便于管理,提高效率。关键词:医药 业务 管理Pharmaceutical business management systemABSTRACT:This system is to satisfy China pharmaceutical enterprise needs comprehensive management information system, specially us
3、ed in medicine wholesale business and distribution, chain enterprises, the software will enterprise of all aspects of resources (information, human, commodity, funds, equipment, time, method and etc.), integration, improve optimize capital operation efficiency, establish enterprise - suppliers - the
4、 supply chain between customers, improving capital turnover rate, reduce cost, reduce inventory, standardize enterprise operation, improve customer service level with powerful management; Help enterprise according to the standard for the GSP comprehensive quality control; drug Help on the senior man
5、agement enterprise large Numbers of, intricate dynamic data and information in a timely, accurate analysis and processing, make the enterprise management really. Through the design of the system to the formal operation system, basically achieved the design of the system requirements, achieving the m
6、edicine management modernization: according to different data items, print output corresponding detailed reports, mainly including drug name, drug Numbers, specifications, quantity, unit price, total amount, the supreme inventory, minimum inventory and other related content. And can be convenient in
7、quires the into library, outbound and other related type elephant. Facilitate management, improve efficiency.Keywords: pharmaceutical business management42目录1前言12 医药业务管理系统的设计思想22.1医药业务管理要点22.2 医药业务管理33软件开发环境43.1 系统软件开发环境43.2 开发数据库应用软件综述83.3 数据库系统开发的几个关键技术133.4 面向对象的软件设计过程194 系统设计与实现2224.1系统结构图224.2
8、系统模块划分及数据流程235 运行与调试36结束语37参考文献38附录38致谢421前言在当今这个信息化的社会中,谁能更有效的利用自身资源,掌握更全面、更准确的信息,更快的做出科学的决策,谁就能顺应社会的潮流,在激烈的竞争中站稳脚跟,并同时给企业带来更高的回报。随着科技的不断进步,企业都在不断的注重管理的信息化以完善企业管理,增强企业自身的竞争力。药品销售业也不例外,通过较完善的信息系统实现自身企业对内部管理的方便性、合理性、快捷性、高效性等要求。以前的手工管理效率低使最明显的缺陷,另外,数据的一致性不好维护,如某个药品信息的记录有所改动(如更改编号),那么该要品的其他记录就与此不一致,造成查
9、询的费时费力。要把全部数据都更改又相当不方便。对药品库存的盘点也很不方便,而且需要较多的人来进行管理操作,而且容易出错,造成数据的不一致。而药品业是关民生的行业,错误信息可能会造成不可收拾的严重后果。因此,运用高效、准确的信息管理系统来替代手工管理是完善药品销售业管理的有效手段。利用数据库系统可以很好的对数据进行维护,减少由于数据不一致等错误带来的麻烦。方便数据的更新和查询,降低错误率,方便药品信息的维护及库存的盘点。还可以运用较少的人员,高效的完成对药品销售的管理。 由于社会的发展不断趋于信息化,各个行业都要加强自身的信息化程度以适应社会的发展。而管理信息化正迎合了这个趋势,数据库系统在药品
10、销售业的应用业实现了药品销售业执行工具、业务管理等的信息化,在这个信息化社会为药品销售业的发展增加了新的动力。相信随着社会的不断发展对该类系统的需求会越来越高。 药品销售管理信息系统,即服务于个人,又服务于企业,并最终服务于社会,这是让科技为人类服务的最好例证,其开发意义显而易见。 PowerBuilder作为一种可视化的、面向对象的快速应用开发工具,是目前最流行的数据库前端开发工具之一。他继承了强大且易于使用的第四代编程语言,内置包括数据窗口在内的多种对象类,能很好地支持并访问当前广泛应用的各种数据库,如IBM DB2、Oracle、Microsoft SQL Serve、Informix等
11、。他还具有支持多种平台的优良特性。这些特点使得PowerBuilder能够开发出速度更快、质量更高、功能更强的应用系统。特别是PowerBuilder8.0的发布,使其在集成开发环境、项目组织上更趋完善,不但能更好的进行基于客户机/服务器(C/S)模式的应用开发,而且在分布式应用和基于Internet的Web应用的开发(B/S)中也体现了方便、高效的优势。越来越多的开发人员使用PowerBuilder作为开发工具,也是PowerBuilder获得认可的最好证明。 此次论文报告,在使用PowerBuilder技术的基础上,提供了有一定技术深度的具体实例,这些事例都是我从实际开发的项目中总结出来的
12、,极具代表性。通过实践考察,不仅能掌握PowerBuilder的使用知识,更重要的是在运用PowerBuilder开发软件的能力上有较大的提高。2 医药业务管理系统的设计思想2.1医药业务管理要点2.1.1医药业务管理的意义GSP 是 Good Supplying Practice 的缩写,直译为良好的药品的供应规范, 在我国称为药品经营质量管理规范,是指在药品流通全过程中,用以保证药品符合质量标准而制定的针对药品计划采购、购进验收、储存、销售几售后服务等环节的管理制度,其核心是通过严格的管理制度来约束企业的行为,对药品经营全过程进行质量控制,保证向用户提供优质的药品的准则。GSP的实施,增强
13、了员工的质量意识,促进了药品进、销、存、用全过程的质量管理,有利于保证用药安全有效。12 GSP的形成过程1992年3月18日,国家医药管理局发布了医药商品质量管理规范(GSP),字1992年10月1日起实行,受国家医药管理局推行GSP委员会的委托,中国医药商业协会于1993年6月组织编写了医药商品质量管理规范实施指南,拉开了医药行业实施GSP的序幕。国家药品监督管理局成立后,对药品经营质量管理规范进行了修订,并于2000年7月1日起施行新版的GSP,新版的GSP编排更加合理,内容更加具体、科学、丰富、实用。13 实施GSP的意义和作用随着我国市场经济的不断发展和完善、我国原有的药品计划经济式
14、的销售模式的瓦解,一种多渠道、少环节,多点购销、相互竞争的药品流通格局已逐步形成,企业处于相对比较完全的市场竞争的环境中,药品经营企业要在激烈竞争的市场中站稳脚跟并得到发展,单纯依靠营销手段是不够的。价格竞争、服务竞争必须以质量竞争为基础。因此,实施GSP,保证药品质量关系到企业的生命。同时,药品的特殊性决定企业必须实施GSP,保证药品质量,保证人民的生命健康。其意义在于:(一)实施GSP是贯彻执行国家质量管理法规的需要。(二)事实GSP是药品经营企业在市场竞争中求生存的需要。(三)实施GSP是药品国际贸易的要求。(四)实施GSP必将促进TQC工作的顺利开展。实施GSP的作用:一促进企业经营理
15、念的变化。在质量与数量关系上,从单纯的追求销售数量达到利润增长转变为既重视销售数量有重视产品质量,提高经济效益和社会效益的目标并重上来,使企业全员参加全过程的质量管理,提高工作质量,改善经营管理,从而达到社会效益和经济同步增长的目的。要实现这一转变首先是企业管理人员观念的转变。二促进企业经营组织结构的优化。质量管理的好坏是企业棉闹的综合反映,在企业组织机构上必须缉拿里强有力的质量保证体系,使质量管理部门和其它部门共同协调,各个部门都要坚持质量第一,明确自己的职责,做好各自的工作,要围绕企业的经济效益,搞好质量管理,要准确地掌握市场需求动态,选择能够满足用户需求的药品,扩大供应,按照药品质量标准
16、,保证各个经营环节的规范操作,维护药品安全,抓好质量悬案,搞好情报搜集,及时提供质量信息。三促进企业运用先进的科学技术保证商品质量的安全可靠长期以来,在医药商品验收中只是靠手模、眼看、耳听、舌舔等外观鉴别方法,这种方法靠感官功能,凭经验,劳动强度大,工作效率低,主观因素大,准确度差,已经越来越不适应发展的需要了。GSP强调必须用先进的测试仪器和检验装置来取而代之,强调应用科学的检验规程和管理程序,尽可能避免人为因素,以确保医药的质量分析和检验正确可靠2.1.2 医药业务管理的任务(1)实现多点操作的信息共享,相互之间信心传递准确、快捷、顺畅。(2) 全面自动化管理,可随时掌握药品的库存、销售的
17、情况。(3) 系统页面美观,操作简洁易行,查询灵活方便,数据存储安全。(4) 能够快速、准确的处理药品进、销、存、退、盘点、变价、折扣等多种业务模式。(5) 供助记码及支持多种结算方式(6) 系统维护安全、方便、可靠、并且能够满足实用性,先进性的要求。3软件开发环境3.1 系统软件开发环境医院设备管理系统的开发选择如下软件系统作为平台支持。(1)网络操作系统 windows NT。Windows NT是目前最流行的网络操作系统,以其功能强大的系统软件构成。本系统的开发选择如下软件系统作为平台支持、操作简便、安全性好及开放的互联协议而被广大用户所采用。(2)大型数据库管理系统Sybase或SQL
18、 SERVER7.0。Sybase是国际上流行的三大数据库之一,其产品既充分吸收Sybase是国际上流行的三大数据库之一,其产品既充分吸收了已有的许多RDBMS成功的技术,又容进了数据库的最新技术,率先实现了客户/服务器体系结构。支持SQL语言,通过触发器、存储过程等多种机制保证数据的安全性和完整性。SQL SERVER7.0具有Sybase的所有特点,但它更适用于中小型企、事业数据库的管理。(3)面向对象的数据库开发工具PowerBuider 8.0PowerBuider是迄今为止最成功的数据库应用系统的前端开发工具之一,基于客户/服务器体系结构,广泛支持现今各种流行的数据库管理系统,成为数
19、据库管理系统的首选开发平台。(4)工作站端安装windows2000 客户平台。Windows2000是目前最实用、最流行的客户端操作系统。一PowerBuilder8.0基础知识 随着数据库技术在各行各业的广泛应用,作为企业级数据库前端开发工具的PowerBuilder日益成为开发人员的得力助手。PowerBuilder以其开放的体系结构简洁高效的集成开发环境、强大的数据窗口技术、几乎无所不能的数据库访问能力和友好的用户界面,越来越受到编程人员的青睐,连续多年被评为美国计算机界的年度风云产品,在数据库开发工具领域占据了高达44 的市场份额。据Sybase统计,目前全球有60 万程序员和系统分
20、析人员在使用Powerbuilder 进行各种类型的应用程序开发。近年来,计算机硬件的发展极为迅速,性能/价格比不断提高,硬件的价格愈来愈低,而与之相比,应用软件的开发费用却愈来愈高。我们都知道,计算机的使用离不开应用软件,而应用软件的开发却是一件很花费时间、人力和物力的事情,其根本原因就是应用软件开发的效率不高,而传统的3GL编程方式的开发方法,对应用软件的开发有着很大的限制,其局限性越来越突出。基于以上原因,被称为“工具”的第四代编程语言应运而生。这其中包括Microsoft公司的 Visual Basic、Visual C+、Visual FoxPro、Inprise 公司的Delphi
21、、C+ Builder和今天要介绍的PowerSoft公司的PowerBuilder。 PowerBuilder是Sybase公司的独资子公司PowerSoft推出的应用于客户机/服务器体系结构下的应用程序开发技术,是一种面向对象的图形化交互式开发工具。从1990年6月1.0版本的问世,到最近8版本的发行,PowerBuilder越来越让人感觉到其强大的魅力。 对于数据库应用系统强有力的支持是PowerBuilder的一大特色,它提供与当前流行的大型数据库如:Oracle、Informix、Sybase等的专用接口,并可通过ODBC与微机数据库连接,具有强大的查询、报表和商业图形功能,可支持跨
22、平台开发。 PowerBuilder采用真正的面向对象的技术,它将所有的事件、控制、函数和程序都以对象为单位封装起来,具有“封装”“多态”“继承”的属性。PowerBuilder为开发人员提供了各种工具和一个集成的开发环境,创造了应用开发时所需的各种部件,如窗口、菜单、数据库存取、图形和报表;应用的各种成分,包括窗口、菜单、程序、数据库存取、数据库管理、图形、报表、调试、编译等工作全都能在PowerBuilder的集成开发环境中完成。PowerBuilder是面向对象的可视化(Visual)编程工具,相对于第三代面向过程编程语言,可让程序员将更多的精力放到功能的实现而不是界面的实现上来。这些不
23、仅能提高程序员的工作效率,同时还能极大地加快开发进程。 值得一提的是,PowerBuilder提供了一个智能型、功能强大的数据窗口对象(DataWindow),利用它,软件人员无需编写专门的SQL语句,就可以实现对后台数据库进行显示、修改、更新、插入、删除和打印等操作。数据窗口(DataWindow)是PowerBuilder的专利,也是PowerBuilder 应用程序的核心和精华所在。PowerBuilder通过数据窗口(DataWindow)建立了用户与数据库间的交互和控制。 随着PowerBuilder新的推出,这一功能强大的第四代语言快速开发环境又提供了众多颇受欢迎的改进,增加了平台
24、支持的数量,增强了建立因特网和内部网上分布式应用的能力,扩展了语种支持。显著的变化是,PowerBuilder已经开始从传统的客户/服务器开发环境转变成完全支持WWW(World Wide Web)应用的开发环境。新的Java代理生成器使Java客户机能够直接访问应用逻辑和PowerBuilder 8.0对象。代理提供了一种插入商用逻辑的方法,从而确保了应用程序的灵活性、可伸缩性和可重用性,消除了重写和重新分发对象的时间。直接支持Active X 技术、Server Push 技术,对分布式计算模型的定义更加明确,实现更为简便,并可以利用数据窗口直接生成HTML格式文件。 可以说,在现今众多的
25、数据库应用开发工具中,PowerBuilder是其中的佼佼者。它可以使应用开发的速度更快、成本更低、质量更高、功能更强。PowerBuilder已成为Client/Server模式应用和基于Internet 模式应用的主要开发工具之一。 从总体上讲, PowerBuilder是一个图形界面的应用程序开发程序开发环境,之所以说它更像一个开发环境,而不仅是开发工具 ,是因为PowerBuilder的功能比工具要强大的多。开发人员不仅能用它来建立各种方便、易用的应用程序,还可以通过它修改后台的数据库,并可以利用内部函数建立能和其他应用程序通信的各种应用程序。由于使用PowerBuilder开发的应用
26、程序充分利用了图形用户接口(GUI)的优点,所以它也被认为是一个图形工具。 针对拥护不同需要,PowerBuilder有三个不同的版本:PowerBuilder桌面版PowerBuilder专业版PowerBuilder企业版PowerBuilder桌面版视为单个开发人员设计的可在独立开发环境中用的强大工具。它可以使用其内置的32位乖习性数据库Sybase SQL Anywhere或其他的桌面数据库创建单用户应用,能大大提高开发者的效率。 PowerBuilder专业版可以为建立部门级应用的小组提供完整的开发环境,并可通过优化的ODBC接口与多种桌面系统以及服务器数据库连接。PowerBuil
27、der企业版除了具有桌面版和专业版的全部功能以外,还提供了可提高开发大型项目效率的许多功能。这三个不同版本的主要差异是:在提供的对大型数据库的专用接口上,企业版最全,专业版次之,而桌面版几乎没有提供。二PowerBuilder的安装环境PowerBuilder光盘外,还应检查所使用的平台。这里简单介绍一下基于Windows平台的计算机软硬件典型配置。 486以上的CPU;16MB以上的内存;CD-ROM驱动器;VGA显示器;至少45MB以上的硬盘空间,具体大小依赖所选部件;Windows95/98,或Windows NT4.0/5.0操作系统。 三PowerBuilder8.0的新特性新的用户
28、界面和开发方法PowerBuilder8.0与以前的版本相比,其界面风格有了很大的变化,增加了许多功能,使用起来也更加方便只管。其主菜单增加了Run和Tools菜单项,每个菜单业与以前版本有所不同,功能划分更加合。由于引入了许多新的概念(如工作区、目标、系统数等),工具条也有了较大变化,增添了对这些新增功能的处理。工作取得引入,改变了以往只能在一个应用下工作的限制。在PowerBuilder8.0中,一个工作区可以有多个目标,而每个目标又可包含多于一个的应用。新的Web特色由于PowerSite Web开发工具和PowerBuilder的完全集成,使得PowerBuilder8.0不仅可以创建
29、可执行程序及EAServer组件,还可以轻松创建Web应用程序。同时PowerBuilder8.0页增强了Web数据窗口的功能。新的数据库连接PowerBuilder8.0提供了一个新的数据库接口JDBC(JDB数据库接口),同时也增强了原有的数据库接口(如增强的INFORMIX数据库接口、增强的ODBC数据库接口等)。在PowerBuilder8.0中,除了Oracle数据库外,所有数据库都提供了对ANSI SQL-92外连接SQL语法支持。PowerBuilder8.0中所有的数据库信息不再存与PB.INI文件之中,而使用窗口注册。其他的新特性除了上述变化,PowerBuilder8.0还
30、有其他一些新的特性,其中包括:可以修改可执行文件的版本信息;可以支持更多 Windows系统提供的颜色;使用Center特性可使窗口再打开或是改变大小时自动居中;新增了一个数据窗口函数LastPos,用来返回目标字符串上一个实例的位置等。3.2 开发数据库应用软件综述 在20世纪60年代中期爆发了众所周知的软件危机。为了克服这一危机,在1968、1969年连续召开的两次著名的NATO会议上提出了软件工程这一术语,并在以后不断发展、完善了这一技术。许多软件公司和机构都在研究软件开发方法这个概念性的东西,而却也提出了很多实际的开发方法,比如:生命周期法、原型化方法、面向对象方法等。就软件开发模型而
31、言,目前有瀑布模型,螺旋模型,渐增式模型和喷泉模型。 一结构化方法1978年,E.Yourdon和L.L.Constantine提出了软件开发的结构化方法,即SASD方法,也成为面向功能的软件开发方法和面向数据流的软件开发方法。1979年TomDeMarco对此方法作了进一步完善。 Yourdon的方法是80年代使用最广泛的软件开发方法。他首先用结构化分析(SA)对软件进行需求分析,然后用结构化设计(SD)方法进行总体设计,最后式结构化编程(SP)。结构化分析就是面向数据流自顶向下逐步求精进行分析。其步骤为:(1)按照可行性研究后画号的数据流图,根据输出要求沿数据流图回溯,看输出及运算所得到的
32、信息是否能满足输出要求。(2)请用户复查数据流图,看是否能满足用户要求。(3)细化数据流图,把比较复杂的处理过程分解细化。 编写文档,并进行复查和复审。结构化设计分为总体设计和详细设计。总体设计要确定系统的具体实现方案和软件的具体结构。其步骤为: (1)设想供选择的方案。(2)选取合理的方案 (3)推荐最佳方案。 (4)功能分解,已确定系统由哪些模块组成,以及这些模块之间的关系设计软件结构。根据数据流图的类型(处理型、事务型)采用相应的映射方法映射成相应的模块层次结构,并对其优化。并进行数据库设计,根据数据字典进行数据库的逻辑设计。详细设计则是借助程序流程图,N-S图或PAD图之类的详细设计工
33、具来描述实现具体功能的算法。结构化实现则是采用诸如PASCAL C、FORTRAN等结构化语言对详细设计所得到的算法进行编码。二面向数据结构的软件开发方法Jackson方法1975年,M.A.Jackson提出了一系列至今仍广泛使用的软件开发方法。这一方法从目标系统的输入、输出数据结构入手,到处程序框架结构,在不成其它细节,就可以得到完整的程序结构图。这一方法对输入、输出数据结构明确的中小型系统特别有效,例如医院应用中的文件表格处理该方法也可与其它方法结合,用于模块的详细设计。Jackson方法有时也称为面向数据结构的软件设计方法。Warnier方法1974年,J.D.Warnier提出的软件
34、开发方法与Jackson方法类似。差别有三点:一是他们使用的图形工具不同,分别使用Warnier图和Jackson图;另一个差别是使用的伪码不同;最主要的差别是在构造程序框架时,Warnier方法仅考虑出入数据结构,而Jackson方法不仅考虑输入数据结构,而且还考虑输出数据结构。三问题分析法PAM(ProblemAnalysisMethod)是80年代末由立公司提出的一种软件开发方法。PAM方法希望能兼顾Yourdon方法、Jackson方法和自底向上的软件开发方法的优点,而避免他们的缺陷。它的基本思想是:考虑到输入、输出数据结构,并指导系统的分解;在系统分析指导下逐步总和。这一方法的具体步
35、骤是:(1)从输入、输出数据结构导出基本处理框;分析这些处理框之间的先后关系。(2)按先后关系逐步综合处理框,直到画出整个系统的PAD图。从上述步骤可以看出,这一方法本质上是综合自底向上的方法,但在逐步综合之前已进行了有目的的分解,其目的就是充分考虑系统的输入、输出数据结构。PAM方法的另一个优点是使用PAD图。这是一种二维树型结构图,使到目前为止最好的详细设计的表示方法之一,远远优于NS图和PDL语言。这一方法在日本较为流行,软件开发的成功率也很高。但由于在输入、输出数据结构与整个系统之间同样存在着鸿沟,使这一方法仍只是用于中小型问题。四原型化方法产生原型化方法的原因很多,主要是随着系统开发
36、经验的增多,软件开发人员也发现并非所有的需求都能够预先定义,而反复修改是不可避免的。当然能够采用原型化方法还是因为开发工具的快速发展,比如用VB、PowerBuider,Delphi等工具,可以迅速的开发出一个可以让用户看的见、摸的着的系统框架。这样,对计算机不是很熟悉的用户就可以根据这个样板提出自己的需求。历史上曾经形成了实现原型法的两种途径:抛弃原型法:其目的是要评价目标系统的某些特性,以便更准切地定义需求,使用之后就把这种原型抛弃掉。演化原型法:演化原型法是一个多次迭代的过程,每次迭代都由以下几个阶段组成:确定用户需求。开发原始模型征求用户对初始原型的改进意见。修改原型。原型化开发比较适
37、合与用户需求不清楚、业务不确定、需求经常变化的情况。当系统规模不是很大也不太复杂时采用该方法是比较好的。五面向对象的软件开发方法 面向对象技术的产生可称得上是软件技术的一次给革命,在软件开发史上具有里程碑的意义。随着 OOP (面向对象设计)和OOA(面向对象分析)的发展,最终形成面向对象的软件开发方法OMT(ObjectModelingTechnique)。这是一种自底向上和自顶向下相结合的方法,而且它以对象建模为基础,不仅考虑了输入输出数据结构,实际上也包含了所有对象的数据结构。所以OMT彻底实现了PAM没有完全实现的目标。不仅如此面向对象技术在需求分析、可维护性和可靠性这三个软件开发的关
38、键环节和质量指标上有了实质性的突破,解决了在这些方面长期存在的严重问题。自底向上的归纳OMT的第一步是从问题的陈述入手,构造系统模型。从真是系统导出类的体系,即对象模型包括类的属性,与子类、类的继承关系,已积类之间的关联。类是具有相似属性和行为的一族具体实例(客观对象)的抽象,父类是若干子类的归纳。因此这是一种自底向上的归纳过程。在自底向上的归纳过程中,为使自类能更合理地继承父类的属性和行为,可能需要自顶向下的修改,从而使整个系统体系更加合理。由于这种类体系的构造是从具体到抽象,再从抽象到具体,符合人类的思维规律,因此能更快、更方便地完成任务。这与自顶向下的Yourdon方法构成鲜明的对照。在
39、Yourdon方法中,构造系统模型是最困难的一步。因此需要开发人员有丰富的软件开发经验。而在OTM中这一工作可由一般开发人员较快地完成。在对象模型建立后,很容易在这一基础上再导出动态模型和功能模型。这三个模型一起构成要求解的系统模型。自顶向下的分解系统模型建立后的工作就是分解。与Yourdon方法按功能分解不同,在OMT中通常按服务(Service)来分解。服务具有共同目标的相关功能的集合,如I/O处理、图形处理等。这一步的分解通常很明确,而这些子系统的进一步分解因有较具体的系统模型为依据,也相对容易。所以OMT也具有自顶乡下方法的优点,即能有效地控制模块的复杂性,同时避免了Yourdon方法
40、中功能分解的困难和不确定性。OMT的基础是对象模型每个对象类由数据具结构(属性)和操作(行为)组成,有关的所有数据结构(包括输入、输出数据结构)都是软件开发的依据。因此Jackson方法和PAM中输入、输出数据结构与整个系统之间的鸿沟在OMT不再存在。OMT不仅具有Jackson方法和PAM方法中,当他们的出发点输入、输出数据结构(即系统的边界)发生变化时整个软件必须推倒重来。但在OMT中系统边界的改变只是增加或减少一些对象而已,整个系统改动及小。需求分析彻底需求分析不彻底常常是软件失败的主要原因之一。传统的软件开发方法不允许在开发过程中用户的需求发生变化,从而导致种种问题。正是由于这一原因,
41、人们提出了原型化方法,推出探索原型、试验原型和进化原型,积极鼓励用户改进需求。在每次改进需求后又形成新的进化原型供用户使用,直到用户满意,从而大大提高了软件的成功率。但是它要求软件开发人员能迅速生成这些原型,这就要求有自动生成代码的工具支持。OMT彻底解决了这一问题。因为需求分析过程与系统模型的形成过程一致,开发人员与用户的讨论是从用户熟悉的具体实例(实体)开始的。开发人员必须搞清现实系统才能导出系统模型,这就使用户与开发人员之间有了共同的语言,避免了传统需求分析中可能产生的种种问题。可维护性大大改善在OMT之前的软件开发方法都是基于功能分解的。尽管软件工程技术在可维护方面做出了极大的努力,使
42、软件的可维护性有较大的改进,但从本质上讲,基于功能分解的软件是不易维护的。因为功能一旦有变化都会使开发的软件系统产生较大的变化,甚至推倒重来。更严重的是,在这种软件系统中,修改是困难的。由于种种原因,即使是微小的修改也可能引入新的错误。所以传统开发方法很可能会引起软件成本增长失控,软件质量得不到保证等一系列严重问题。正是OMT才是软件的可维护性有了质的改善。 OMT的基础是目标系统的对象模型,而不是功能分解。功能是对象的使用,它依赖于应用的细节,并在开发过程中不断变化。由于对象室可按存在的,因此当需求变化是对象的性质要比对象的使用更为稳定,从而使建立在对象结构上的软件系统也更为稳定。更重要的是
43、OMT彻底解决了软件的可维护性。在面向对象语言中,子类不仅可以继承父类的属性和行为,而也可以重载父类的某个行为(虚函数)。利用这一特点,就可以方便地进行功能修改:引入某类的一个子类,对要修改的一些行为(即虚函数或虚方法)进行重载,也就是对他们重新定义。由于不再在原来的程序模块中引入修改,所以彻底解决了软件的可修改性的问题,从而也彻底实现了软件的可维护性。面向对象技术还提高了软件的可靠性和健壮型。六可视化开发方法可视化开发方法是90年代软件界最大的两个热点之一。其实可视化开发并不能单独的作为一种开发方法,更加贴切的说可以认为它是一种辅助工具。比如用过SYBASE的S-Design的人都知道,用这
44、个工具可以进行显示图型化的数据库模式的建立,并可以被导入到不同的数据库中去。随着图形用户界面的兴起,用户界面在软件系统中所占的比例也越来越大,有的甚至高达60%70%。产生着一问题的原因是图形界面元素的生成很不方便。为此Windows提供了应用程序设计接口。API(ApplicationProgrammingInterface),它包含了600多个函数,极大地方便了图形用户界面的开发。但是在这批函数中,大量的函数参数使用了数量更多的有关常量,使基于WindowsAPI的开发变得相当困难。为此Borland C+退出了ObjectWindows编程。它将API的各部分用对象类进行封装,提供了大量
45、预定义的类,并为这些类定义了许多成员函数。利用子类对父类的继承性,以及实例对类函数的引用,使应用程序的开发省却大量类的定义,以及成员函数的定义,或只需要做少量修改以定义子类。 ObjectWindows还提供了许多标准的缺省处理,大大减少了应用程序开发的工作量。但要掌握他们,对非专业人员来说仍是一个沉重的负担。为此人们利用WindowsAPI或Borland C+的ObjectWindows开发了一批可视开发工具。可视化开发就是在可视开发工具提供的图形用户界面上,通过操作界面元素,诸如菜单、按钮、对话框、编辑框、单选矿、复选框、列表框和滚动条等,由可视开发工具自动生成应用软件。这类应用软件的工
46、作方式是事件驱动。对每一时间,由系统产生相应的消息,在传递给相应的消息像因函数。这些消息响应函数是由可视开发工具在生成软件时自动装入的。 可视化开发工具提供了两大类服务。一类是生成图形用户界面及相关的消息响应函数。通常的方法实现生成基本窗口,并在它的外面以图标形式列出所有其它的界面元素,让开发人员挑选后放入窗口指定位置。在注意安排界面元素的同时,还可以用鼠标拖动,以使窗口的布局更趋合理。另一类服务是为各种具体的子应用的各个常规执行步骤提供规范窗口,它包括对话框、菜单、列表框、组合框、按钮和编辑框等,以供用户挑选。开发工具还为所有的选择(事件)提供消息响应函数。由于要生成与各种应用相关的消息响应
47、函数,因此,可视化开发只能用于相当成熟的应用领域,如目前流行的可视化开发工具基本上用于关系数据的开发。对一般的应用,目前的可视化开发工具只能提供用户界面的可视化开发。至于消息响应函数(或称脚本),则仍需用通常的高级语言(3GL)编写。只有在数据库领域才提供4GL,使消息响应函数的开发大大简化。可视化开发是我们把注意力集中在业务逻辑和业务流程上,用户界面可以用可视化工具方便地构成。通过操作界面元素,诸如菜单、按钮、对话框,编辑框、单选框、复选框、列表框和滚动条等,由可视开发工具自动生成应用软件。七基于组件的软件开发组件的概念有关组件,目前还没有严格的定义。但是我们可以大致描述如下:组件是一种能够
48、提供某种服务的自包含的软件模块,他封装了一定的数据(属性)和方法,并提供特定的借口,开发人员利用这以特定的接口来使用组件,并使其与其它组件交互通讯,以此来构造应用程序。组建和对象的区别在于:对象封装了一组相关的函数,而组件择封装了一组相关的对象。组件的特点从广义上来说,构件由如下几个基本属性:组件视可独立配置的单元,组件的概念视独立于编程语言的,这也就是说,用不同语言编写的组件应能在一起协同工作,或者说用一种语言编写的应用程序中很好地工作。因此构件必须自包容。构件强调与环境和其他构件的分离,因此构件的实现是严格封装的,外界没机会或没必要指导构件内部的实现细节,就能利用组件方便地构筑应用程序。这种特点还使