1、第六章 MIS的系统实施第六章 MIS的系统实施61 系统实施在建设中的作用在管理信息系统的生命周期中,经过了系统规划,系统分析和系统设计等阶段后,便开始了系统实施阶段。在系统分析和设计阶段,系统开发工作集中在逻辑、功能和技术设计上,工作成果是以各种系统分析与设计文档来体现的。系统实施阶段要继承此前各阶段的工作成果将技术设计转化为物理实现,因此系统实施的成果是系统分析和系统设计阶段的结晶。由于系统实施是在系统详细设计以后才开始的,它是以系统分析和设计工作为基础的,必须按照系统设计的文档进行,因此在管理信息系统的整个生命周期,相对来讲,系统分析和设计比系统实施重要的多。只有系统分析和系统设计工作
2、完成以后,切忌在系统开发工作中提前开展这部分工作。因为有些开发者,特别是程序编制工作者,往往把开发的重点放在编程上,在没有完全了解系统的需求分析情况的条件下,就匆匆开始程序的编制工作,就必然给系统开发工作带来挫折。同时系统实施作为系统生命周期中的最后阶段,是把系统设计转化成可以实际运行的物理系统的必然步骤 ,再好的系统设计,不通过系统实施也只能是不带来现实效益的空中楼阁。系统实施作为系统的最后物理实现阶段,对于系统的质量、可靠性和可维护性有着十分重要的影响。 62 系统实施阶段的主要活动在管理信息系统的生命周期中,经过了系统规划、系统分析和系统设计等阶段以后,便开始了系统实施阶段。这一阶段由编
3、码、系统测试、系统安装和新旧系统转换等主要活动构成。编码又称程序设计或编写程序,按照详细设计阶段产生的说明书,用选定的程序设计语言书写源程序。系统测试是系统质量可靠性保证的关键,也是对需求分析、系统设计和编码的最终评审。运用一定的测试技术与方法,通过模块测试、组装测试、确认测试和系统测试几个步骤,发展系统可能存在的问题。系统安装主要是指各种软、硬件设备的选型、论证、购置、安装,以及整个系统调试运行。新旧系统转换,也称系统切换与运行,是指以新开发的系统替换就的系统,并使之投入使用的过程,它包括系统交付前的准备工作,系统切换的方法和步骤等。63 程序设计631 程序设计的基本概念程序设计又称编码,
4、是系统生命周期中继详细设计后的阶段,这个阶段的任务是使用选定的程序设计语言,把经过概要设计和详细设计所得到的以程序设计说明书体现的信息处理过程描述后,转换成能在计算机系统上运行的程序源代码。632 前端开发工具的选择在信息系统实施过程中,一个重要的任务就是选择程序设计语言。由于程序设计语言的选择对系统生命中的编码、测试、维护与管理等环节影响很大,特别是对大型软件系统,所以程序设计语言的选择应该慎重进行。考虑到本系统可以使用Winsdows98 、Winsdows2000、WinsdowsXP平台,系统界面制作在PB上进行。PB是一种面向对象、具有可是化图形界面的数据库前台开发工具,开发人员不必
5、为界面设计而编写大量的程序代码,只编写实现程序驱动的那部分代码,所有对象的创建都是在向导的辅助下完成的,大大提高了程序设计的效率。它从诞生以来一直在4GL的中、高档工具中占有最大的市场份额。 F N F N图6-1 系统登录界面的一般流程PB的特点:(1) 可视化的开发环境(2) 面向对象、事件驱动的开发工具(3) 功能强大的编程语言(4) 开放的系统(5) 跨平台的开发环境(6) 支持多种开发解决方案所以本系统选择了Power Build7.0语言来作为程序设计语言。64 系统运行环境首佳公司办公自动化管理信息系统的运行环境:Winsdows98 、Winsdows2000、Winsdows
6、XP等操作系统都可运行。中心业务处理服务器建议使用HP P-7V-2.4G 256DDR 60GB客户机的硬件配置:处理器:P 1.8G以上;内 存:128 M以上;硬 盘:系统本身使用60GB的硬盘空间,运行时须存储大量的用户信息,建议使用3.2G以上的硬盘;显示器:17 分辨率1024768;65 系统测试651 系统测试的作用和意义系统测试是管理信息系统开发周期中一个十分重要而漫长的阶段。其中要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析、系统设计和系统实现的最终审查。652 系统测试的对象和目的系统测试的对象不仅仅是源程序,而应是整个软件,它把需求分析、
7、概要设计、详细设计以及程序设计各阶段的开发文档,包括需求规格说明、概要设计说明、详细设计说明以及源程序、都作为测试的对象。系统测试的目的就是发现软件的错误。653 测试过程测试意味着运行应用程序以发现错误。我们寻找应用程序的错误的过程也称为质量保证过程。这意味着应用程序及其文档的正确、完整、可靠的和便于维护的,并且达到了用户的所有的特殊要求和规范。测试的成功与是否由发现的错误数目以及它们相对的危害来衡量的。发现的错误越多,系统的错误危害越大,就越好。把它们找出来,记录下来,并改正这些错误。最简单的测试途径是拟定测试计划,这些计划应基于应用的功能设计规范。然后,我们将测试过程分为许多较小的易于处
8、理的部分,以便针对每一个阶段可能产生的错误,采用某些特殊的测试技术。654 标准的测试方法单元测试测试每一个原始的事务处理过程,即测试代码逻辑和检查功能规范。它告诉开发者哪些脚本需改正或改进,应用程序构件是否满足预计的功能规范。每个单元应构造合适的错误处理测试,以确保系统不会崩溃。系统测试将每一个单元集成一个整的实体/对象加以测试。这可确保应用程序运行顺利;确保应用程序各个组件之间的兼容性;保证整个系统运行是一致的,并且应用程序能满足用户要求的组件。集成测试将应用程序放在模块的产品环境中,测试应用程序与网络、数据库、硬件和任何其他特有平台或环境因素的协调工作。它可确定许多未预见的,以前也不可能
9、测试到的情况。容量测试它可以确保应用程序的所有组件都能产品容量的数据。通常,在应用程序构造时,开发人员采用将产品数据库缩小的模型。对于处理少量数据的应用程序,容量测试不成问题,但对于大量的数据,这将是关键的一步。容量测试决定应用程序是否能够处理数据而不会导致系统崩溃或超时,以及当前的硬件配置是否能够支持公司的要求。测试的大容量的数据必须是用户能有足够的权限访问数据。655 测试原则测试用例应该由输入数据和预期的输出结果两部分组成。不仅要选择合理的输入数据作为测试用例,还应选用不合理的输入数据作为测试用例。除了检查系统是否做了它应做的工作之外,还应检查系统是否还做了它不应该做的事情。应长期保留所
10、有的测试用例。656 利用PB工具对本系统进行测试PB70带有内置调试工具,有助于找出应用程序的脚本中的错误。调试器允许在想调试的不同程序中设置断点,在调试模式运行应用程序时,PB在执行含断点的PB语句之前将进程挂起,调试能使用户查看变量在断点出的值。66 系统转换新系统通过测试以后,要与旧系统经过一段并行运行以后,才能正式投入运行,这一过程称为系统转换。系统转换的方式主要有三种,即为直接转换、并行转换和分段转换。本系统的转换过程采用的是新旧并行转换的方法,就是指新老系统并行工作一段时间,经过一段时间的考虑以后,以新系统正式全面代替老系统。并行转换方式是最安全、保险的方式,并且也是最常用的方式
11、,因为一旦新系统发生问题时,老系统仍在正常工作,从而保证了过渡过程的平稳可靠。6、7 通讯网络系统的实施典型的管理信息系统是一个由通信线路相互连接起来的各种设备组成的计算机网络,它有两种基本类型的通讯网络局域网和广域网。因此,网络系统的实施主要是通信设备的安装,网络性能的调试等项工作。办公自动化管理系统涉及到档案管理、业务管理、考勤管理、固定资产管理、物资管理、费用报销管理、系统维护等几个方面。每个子系统功能相对独立,子系统之间有必要进行数据联系。根据这种特点,系统利用微机局部网络作为系统的基本结构,为了提高系统的可靠性和扩充性,网络采用3COM的十二口网络集线器(HUB)为中心,以AT&T五
12、类双绞线为传输介质的星型结构,需配置网络服务器一台。网络服务器作为系统功能实现和数据共享的中心,应具有可靠性和性能,因此选择高档品牌专用服务器,档案管理信息系统采用的是一台装有Windows2000操作系统,IBMPIII933微机作为服务器,内存512M并通过两个40G硬盘双工技术提高系统数据可靠性。 各网络工作站选用P 以上内存128M的普通微型机和两台四通喷墨打印机。工作站与网络连接的网络适配器,采用NOVELL公司的网卡,并为系统配置洋化电源及UPS不间断电源,应付电源的各种变化和故障,以保证系统功能的可靠性。从系统可靠性角度出发,系统的应用软件和数据库均采用了双向备份的工作方式,用户
13、即可以直接运行网络上的系统也可以使用本地工作站上的系统,并且通过数据双向备份机制保证网络服务器和工作站上的数据一致性。第七章 系统维护和评价71 系统维护711 系统维护的基本概念系统维护是为保证计算机系统中的各个要素随着环境的变化始终处于最新的、正确的工作状态而进行的活动。它包括对硬件设备的维护和软件系统的维护及数据维护。其中软件维护是系统维护中最重要的,它是软件已交付使用之后,为了改正错误或满足新的需要而修改软件的过程。为了适应外部环境的变化而进行的适应性维护;为了改正原有的软件而进行的完善性维护以及为了改进将来的可维护性和可靠性而进行的预防性维护。在本系统的开发过程中,由于时间的紧迫、开
14、发人员的经验不足,因此设计软件功能还很不完善,难免有些疏忽、遗漏的地方以及潜在的错误。所以,我们今后的系统维护任务还十分艰巨。712 系统维护内容和类型系统维护内容一般可分为以下几类:(1) 系统应用程序维护。这是系统维护的主要活动。(2) 数据维护。在日常工作中,要对系统中的业务数据进行定期及不定期的更新,调整以及备份,恢复等工作。(3) 代码维护:随着系统的范围扩大,应用环境的变化,系统中的各种代码都需要进行增加,修改,删除以及设置新代码等工作。(4) 硬件设备的维护:既然系统维护的重点是系统应用软件的维护工作,按照软件维护的性质,又可以分为四种类型:(5) 纠错性维护。它主要是诊断和纠正
15、在系统测试中没能提示的隐藏错误。(6) 适应性维护。它是为了使系统适应环境的变化而进行的维护工作。随着计算机软硬件环境的发展,应用对象的不断变化,必须对系统进行调整,使之适应应用对象的变化,以满足用户要求。(7) 完善性维护。在系统使用过程中,用户经常要求对原有系统功能进行扩充,为了满足这种要求以及关联工作的完善,就是完善性维护。(8) 预防性维护:是指在用户提出要求前,对将来可能发生变化或调整的系统进行维护。在系统维护工作中,一般以上的工作是完善性维护。713 系统维护的组织和管理 系统维护与管理是贯穿整个系统生命周期的活动,为此爱迪尔公司专门成立了信息中心,建立了维护组织,配备了专职的系统
16、维护与管理人员,进行系统的程序维护、代码维护、数据备份与恢复、网络管理与维护等工作。系统维护的组织管理如图4.2所示: 维护申请报告 审批 图7-1系统维护的组织管理图系统维护工作的程序如图7-2所示,用户的每个请求都以书面形式的“维护申请表”向维护管理员提出,对于纠错性维护,报告中必须完整描述导致出现错误的环境,包括输入数据、输出数据以及其他系统状况信息。通过生僻的维护报告,由维护管理员根据具体情况制定维护计划,系统维护之所以必须按照严格的步骤进行,是为了防止未经允许的擅自修改系统,为了评价维护的有效性,确定系统的质量,记录系统所经历过的维护内容,应将维护工作的全部内容以文档的规范化形式记录
17、下来,以便日后备查。 N Y N Y N Y图7-2系统维护工作的程序72 系统评价本系统是一套办公自动化管理信息系统软件,适用于公司的自动化办公的全过程管理工作,避免了公司的一些日常管理工作依靠手工方式的繁琐,满足了各个部门的需求及员工的个人的需求需超负荷的工作,减轻了办公人员的工作量及能动态的了解公司各部门、各部门员工的需求,对提高公司内部的办公效率以及管理质量具有极大的推动作用,实现了办公室管理的自动化。结 束 语本管理信息系统的整个设计终于完成了,在整个开发的过程中,我深深的感受到了作为一名系统开发人员的责任与艰辛,通过本次毕业论文设计,使我将几年所学的知识贯穿起来,并有效的应用到实际
18、调研和设计当中,更加体会到团队精神在开发中的重要作用,在这几个月的开发过程中,我对系统开发有了更深的认识,扩大了视野,增强了我的求知欲。本次系统的开发首先感谢指导老师汪大菊老师的悉心指导,王老师渊博的学识,严谨的治学精神以及对工作的热忱,无不对我现在以至将来产生深远的影响。在本次调研的过程中,得到了天津市汽车锻件有限公司总经理阚蕴缜的大力支持,人事部李俊霖以及档案管理员汤春松等各位领导和员工的热情指导和合作,再次我向以上员工在此表示深深的敬意! 学生: 参考文献【1】王守茂。管理信息系统的分析和设计。天津科技翻译出版社。1993年【2】甘仞初。信息系统开发。经济科学出版社。1996年【3】黄梯
19、云。管理信息系统。电子工业出版社。1995年【4】刘鲁。信息系统设计与应用。北京航天航空大学出版社。1995年【5】丁铖、廖小平。PowerBuilder7.0高级开发指南。人民邮电出版社,2000年【6】刘红岩。PowerScript语言、事件与函数大全。电子工业出版社。2000年【7】陈照明。实用目标管理。厦门大学出版社。2002年【8】陈乃进、陈琦伟。新经济时代的企业创新。上海三联书店。2000年【9】余凯成、陈维政。人力资源开发与管理。企业管理出版社。1999年【10】蒋黔贵。国有大中型企业建立现代企业制度和加强管理基本规范读本。中国经济出版社。2001年附录(部分脚本)1、定义全局变
20、量及声明外部函数string dbreg /保存数据库所在路径int I /保存行号 string ls_curdir /保存当前路径string sle /设置输入位置int s / 历史纪录的总行数/声明全局外部函数(得到当前路径)FUNCTION ulong GetCurrentDirectoryA(ulong BufferLen,ref string currentdir)LIBRARY kernel32.dll2、在应用的Open事件内检查数据源是否注册string pint nRegistryGet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh
21、,DBQ,RegString!,p)n=len(trim(p)/量取字符串的长度p=left(p,n - 9)/截取字符串dbreg=p/为全局变量赋值/得到当前路径/string ls_curdirulong l_bufl_buf=100ls_curdir=space(l_buf)GetCurrentDirectoryA(l_buf,ls_curdir)/如果已注册则忽略如果没注册则重新注册if p= then open(w_registry)else if p=ls_curdir then open(w_main) /open(w_password) else Registrydelete
22、(HKEY_CURRENT_USERSoftwareODBCODBC.INIODBC Data Sources,kwsh) open(w_registry) end ifend if3、注册数据源窗口/确认按钮的Clicked事件的脚本string ls_keynamestring ls_valuenamestring ls_value/得到键值ls_keyname=HKEY_CURRENT_USERSoftwareODBCODBC.INIODBC Data Sourcesls_valuename=kwshls_value=Microsoft Access Driver (*.mdb)f_re
23、gister(ls_keyname,ls_valuename,ls_value)/建立注册表的键RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwshEngines,)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwshEnginesJet,)/判断是本地机注册数据源还是远程注册数据源if sle_1.text= thenRegistrySet(HKEY_CURRENT_USERS
24、oftwareODBCODBC.INIkwsh,DBQ,RegString!,sle_2.text+kwsh.mdb)else RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,DBQ,RegString!,+sle_1.text+sle_2.text+kwsh.mdb)end if/设置键值用来注册数据源RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,Description,RegString!,Access)RegistrySet(HKEY_CURRENT_USERSoft
25、wareODBCODBC.INIkwsh,Driver,RegString!,d:winntsystem32odbcjt32.dll)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,DriverId,ReguLong!,25)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,FIL,RegString!,Ms Access)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,Safe Transactions,ReguLo
26、ng!,0)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwsh,UID,RegString!,)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwshEnginesJet,Implicitcommitsync,)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwshEnginesJet,MaxBuffersize,ReguLong!,800)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.IN
27、IkwshEnginesJet,Page Timeout,ReguLong!,5)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwshEnginesJet,Threads,ReguLong!,3)RegistrySet(HKEY_CURRENT_USERSoftwareODBCODBC.INIkwshEnginesJet,User commitsync,Yes)close(w_registry)4、登陆系统窗口/登录按钮的Clicked事件的脚本程序string n,p/SQL查询语句查询密码是否存在select name,passinto
28、 :n,:pfrom passwhere name=:sle_3.text and pass=:sle_4.text;if n= or p= then messagebox(错误,输入错误请核实后重新输入)else open(w_main) close(parent)end if5、主窗口界面/主窗口的open()事件的脚本如下/ Profile kwsh通过批文件与数据库建立连接SQLCA.DBMS = ODBCSQLCA.AutoCommit = FalseSQLCA.DBParm = ConnectString=DSN=kwsh;UID=dba;PWD=sqlconnect;/主窗口的c
29、losequery()事件的脚本如下,提示用户是否退出系统if messagebox(提示信息,是否退出系统?,question!,yesno!)=1 thenreturn 0elsereturn 1end if/其中“档案录入”菜单的“基本信息录入”子菜单项的按钮的/Clicked()事件的脚本opensheet(w_basic,w_main,0,original!)6、员工基本信息录入窗口 /该窗口的Open()事件脚本使窗口在主窗口中居中this.x=(w_main.width - this.width)/2this.y=(w_main.height - this.height)/4/检
30、索数据dw_1.settransobject(sqlca)dw_1.retrieve()long l_rowint ms=dw_1.rowcount()l_row=dw_1.insertrow(m+1) /插入一新行以便添加数据dw_1.scrolltorow(m+1)dw_1.setfocus()/该窗口的Closequery()事件脚本,提醒操作人员是否保存未保/存的修改过的数据int li_rcdw_1.accepttext()if dw_1.modifiedcount()0 then li_rc=messagebox(提示,是否保存所作的修改?,question!,yesnocancel!,3) if li_rc=1 then cb_1.t
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1