1管理信息系统的技术基础主讲:李明LM@HHU.EDU.CN2第二章管理信息系统的技术基础2.1计算机硬件技术2.2计算机软件技术2.3数据通信技术2.4数据处理技术2.5网络技术主要内容:3第二章管理信息系统的技术基础了解计算机硬件技术了解掌握计算机软件技术了解数据通信技术了解掌握数据处理技术了解网络技术重点、难点:42.1计算机硬件技术计算机:台式机、笔记本、服务器、专用计算机网络设备:路由器、交换机、其它网络设备其它设备:扫描仪、条形码扫描器、数码相机、指纹仪器新的计算机硬件不断被发明和投入使用,使得管理信息系统变得更强大,同时也变得更复杂。52.2计算机软件技术2.2.1软件的开发工具2.2.2软件的开发架构2.2.3软件的开发方式2.2.4软件的开发方法2.2.5软件开发所需的知识框架62.2.1软件的开发工具VB(数值计算)VC(事务处理)PB(数据处理)DELPHI(集各种平台的优点于一体)JAVA(网络平台).NET(网络平台)72.2.2软件的开发架构2.2.2.1C/S两层结构2.2.2.2B/S两层结构2.2.2.3C/S三层结构2.2.2.4B/S三层结构2.2.2.5分布式结构82.2.2.1C/S两层结构客户端应用程序(用VB、VC++、PB、DELPHI、Java等平台开发)ODBC、BDE、ADOOracle、SQLServer、Sybase、Interbase、DB2、Dbase、Access、Foxpro客户机中间件数据库服务器92.2.2.1C/S两层结构案例Internet用于对外发布数据库HUB客户端1客户端n办公室局域网(只装有客户端版应用程序)服务器(服务器版应用程序)SQLSERVER2000临时网服务器ACCESS(便携机版)HUB客户端1客户端n招标公告、投标、资格预审、标前会、开标会、评标、定标招投标管理信息系统102.2.2.2B/S两层结构拨号上网路由器Internet浏览器(IENetscape)WEB服务器(IISAppache)TCP/IP,HTTP客户端标准协议服务器112.2.2.2B/S两层结构案例WEBSERVERBROWSER1BROWSER2BROWSERnWEBMODULEaction1action1action1WebServerApplicationHTMLCGI、Apache、ISAPI、NSAPIDELPHI窑洞122.2.2.3C/S三层结构客户端应用程序(用户界面和操作接口)ODBC、BDE、ADOOracle、SQLServer、Sybase、Interbase、DB2、Access、Foxpro客户层应用层数据层应用服务器(封装了所有的应用逻辑)COM/DCOM、CORBA、EJB/RMI132.2.2.3C/S三层结构案例数据库数据库服务器应用服务器客户端1客户端2客户端nCLIENTAPPLICATIONSERVERDATABASESERVER物资管理信息系统142.2.2.4B/S三层结构TCP/IPHTTP浏览器(IE、NETSCAPE)ODBC、BDE、ADOOracle、SQLServer、Sybase、Interbase、DB2、Access、Foxpro客户层应用层数据层WEB服务器(包括基于CGI、NSAPI、ISAPI所有的服务器扩展程序)拨号上网路由器Internet152.2.2.4B/S三层结构案例网络电力局厂领导生产部操作员班组A厂内部网B厂厂领导生产部操作员班组内部网C厂厂领导生产部操作员班组内部网数据库福建省水电设备管理信息系统162.2.3软件的开发方式2.2.3.1自主开发2.2.3.2委托开发2.2.3.3合作开发2.2.3.4购买现成软件2.2.3.5各种开发方式的比较172.2.3.1自主开发自主开发适合于有较强的管理信息系统分析与设计队伍和程序设计人员、系统维护使用队伍的组织和单位,如高等院校、研究所、计算机公司等单位。独立开发的优点是开发费用少,实现开发后的系统能够适应本单位的需求且满意度较高,系统维护方便。缺点是一般单位或企业由于不是专业开发队伍,容易受计算机业务工作的限制,系统优化不够,开发水平较低。182.2.3.2委托开发委托开发方式适合于使用单位无管理信息系统分析、设计及软件开发人员或开发队伍力量较弱、但资金较为充足的组织和单位。委托开发的方式的优点是省时、省事,系统的技术水平较高。缺点是费用高、系统维护需要开发单位的长期支持。此种方式需要使用单位的业务骨干参与系统的论证工作,开发过程中,需要开发单位和使用单位双方及时沟通,进行协调和检查。192.2.3.3合作开发合作开发方式适合于使用单位有一定的管理信息系统分析、设计及软件开发人员,但开发队伍力量较弱,希望通过管理信息系统的开发建立完善和提高自己的技术队伍,便于系统维护工作的单位。双方共同开发成果,实际上是一种半委托性质的开发工作。优点是相对于委托开发方式比较节约资金,可以培养、增强使用单位的技术力量,便于系统维护工作,系统的技术水平较高。缺点是双方在合作中沟通易出现问题,需要双方及时达成共识,进行协调和检查。202.2.3.4购买现成软件目前,软件的开发正在向专业化方向发展,一些专门从事管理信息系统开发的公司已经开发出一批使用方便、功能强大的专项业务管理信息系统软件。为了避免重复劳动,提高系统开发的经济效益,也可以购买现成的适合于本单位业务的管理信息系统软件,如企业管理信息系统、教育管理信息系统、财务管理系统、进销存管理系统等等。此方式的优点是节省时间的费用、系统技术水平高。缺点是通用软件专用性较差,跟本单位的实际工作需要可能有一定的差距,有时可能需要做二次开发工作。因此,在选择通用软件时,不可只看开发商的宣传,要经过多方详尽的考查后再作决定。212.2.3.5各种开发方式的比较以上介绍的四种开发方式有各自的长处和短处,需要根据使用单位的实际情况进行选择,也可综合运用各种开发方式。方式特点比较独立开发委托开发合作开发购买现成软件分析和设计能力的要求较高一般逐渐培养较低编程能力的要求较高不需要需要较低系统维护的难易程度容易较困难较容易较困难开发费用少多较少较少说明开发时间较长,系统适合本单位,培养了自己的开发人员。省事,开发费用高。开发出的系统便于维护。最省事,但不一定完全适合本单位。222.2.4软件的开发方法2.2.4.1生命周期法2.2.4.2原型法2.2.4.3面向对象方法2.2.4.4软件元法232.2.4.1生命周期法就是自顶向下、逐步求精,分阶段实现的软件开发方法,是一种先整体后局部的信息系统开发方法,也是迄今为止开发方法中应用最普遍、最成熟的一种。基本思想是:用系统工程的思想和工程化的方法,将整个信息系统开发过程划分出若干个相对独立的阶段,按用户至上的原则,结构化、模块化、自顶向下地对系统进行分析与设计。一项计算机软件,从出现一个构思之日起,经过这项软件开发成功投入使用,直到最后决定停止使用,并被另一项软件代替之时止,被认为是该软件的一个生命周期。一般地说这个软件生存周期可以分成以下六个阶段:24第一阶段可行性与计划研究阶段在可行性研究与计划阶段内,要确定该软件的开发目标和总的要求,要进行可行性分析、投资—收益分析、制订开发计划,并完成应编制的文件。在这一阶段要形成的文件主要有:可行性研究报告和项目开发计划书。可行性研究报告主要从经济可行性(是否有利润),技术可行性(是否能实现),环境可行性(是否能适应环境以及环境是否允许),法律可行性(是否违法)项目开发计划书要说明整个项目开发过程的时间进程安排,经费预算,最终产品,各个阶段的负责人和主要参加人员,各个阶段的预计成果等内容。25第二阶段需求分析阶段在需求分析阶段内,由系统分析人员对被设计的系统进行系统分析,确定对该软件的各项功能、性能需求和设计约束,确定对文件编制的要求,作为本阶段工作的结果,一般地说,软件需求说明书、数据要求说明书和初步的用户手册应该编写出来。软件需求说明书要求说明用户对该软件的功能需求、性能需求、数据需求,运行环境需求,对计算机软硬件的需求和其他需求。这些需求是该软件的基本目标,在软件实现时必须达到。26第三阶段设计阶段在设计阶段内,系统设计人员和程序设计人员应该在反复理解软件需求的基础上,提出多个设计,分析每个设计能履行的功能并进行相互比较,最后确定一个设计,包括该软件的结构、模块的划分、功能的分配以及处理流程。在被设计系统比较复杂的情况下,设计阶段应分解成概要设计阶段和详细设计阶段两个步骤。在一般情况下,应完成的文件包括:概要设计说明书、详细设计说明书、数据库设计说明书和测试计划初稿。概要设计说明书中主要包括软件的功能结构说明,数据流程图,业务流程图,E-R关系图等内容。功能模块说明书主要是对该软件中的各个功能模块进行详细的说明。是程序员的主要参考资料数据字典主要是对整个数据库中的所有表和所有表中的字段进行详细的说明。是程序员的主要参考资料27第四阶段实现阶段在实现阶段内,要完成源程序的编码、编译(或汇编)和排错调试得到无语法错的程序清单,要开始编写模块开发卷宗,并且要完成用户手册、操作手册等面向用户的文件的编写工作,还要完成测试计划的编制。用户手册要求不仅要对整个系统的安装、配置、运行环境等进行说明,还要图文并茂地对系统中各个模块的功能以及如何操作等进行详细说明,最终要达到,让用户看着用户手册就能操作该软件测试计划要说明测试的时间、地点、主要测试人员,测试的内容和所需的数据等等模块开发卷宗主要是完整的原代码28第五阶段测试阶段在测试阶段,该程序将被全面地测试,已编制的文件将被检查审阅。一般要完成模块开发卷宗和测试分析报告,作为开发工作的结束,所产生的程序、文件以及开发工作本身将逐项被评价,最后写出项目开发总结报告。测试分析报告要对实际测试的时间,地点,参加人员和主要测试的内容,以及测试的结果等进行详细的说明,该文件是软件最终评价的重要依据项目开发总结报告要对这个项目的开发过程进行总结,并把所产生的文件作为附件29第六阶段运行与维护阶段在运行和维护阶段,软件将在运行使用中不断地被维护,根据新提出的需求进行必要而且可能的扩充和删改。在运行维护阶段的每一次改动,都会牵涉到相关文档的修改,而且每一次修改都应该按照这六个阶段进行分析处理。302.2.4.2原型法2.2.4.2.1原型法的基本思想2.2.4.2.2原型法的特点312.2.4.2.1原型法的基本思想原型法的基本思想是在投入大量的人力、物力之前,在限定的时间内,用最经济的方法,开发出一个可实际运行的系统模型,以便尽早澄清不明确的系统需求。在原型系统的运行中用户发现问题,提出修改意见,技术人员完善原型,使它逐步满足用户的需求。322.2.4.2.2原型法的特点增进用户与开发人员之间的沟通用户在开发过程中起主导作用辨认动态的用户需求启迪衍生式的用户需求缩短开发周期,降低开发风险332.2.4.3面向对象方法的基本思想面向对象方法认为,客观世界是由各种各样的对象组成的,每种对象都有各自的内部状态和运动规律,不同的对象之间的相互作用和联系就构成了各种不同的系统。当设计和实现一个客观系统时,如能在满足需求的条件下,把系统设计成由一些不可变的(相对固定)部分组成的最小集合,这个设计就是最好的。它把握了事物的本质,因而不再会被周围环境(物理环境和管理模式)的变化以及用户没完没了的变化需求所左右。这些不可变的部分就是所谓的对象。342.2.4.4软件元法2.2.4.4.1软件元方法的基本思想2.2.4.4.2软件元方法的逻辑模型2.2.4.4.3软件元方法的特点352.2.4.4.1软件元方法的基本思想该方法根据系统分析和设计的结果,将各个模块开发成独立的系统服务,每个服务既是一个独立的基于B/S三层结构的应用程序,又是其它信息系统的模块,而且各个服务可以任意组合,产生不同的信息系统。其中,每个服务都有一个唯一的ID号,由IP地址和端口号组成。各个服务可以任意调用,各个服务之间通过