操作系统网上实验系统设计与实现94032444.doc
【精品文档】如有侵权,请联系网站删除,仅供学习与交流操作系统网上实验系统设计与实现94032444.精品文档.操作系统网上实验系统设计与实现(陕西理工学院 数学与计算机科学学院 网络工程 091班,陕西 汉中 723000) 摘要教育事业是人类社会高度发展的产物,是世世代代文明积累的结晶,也是世世代代相传下去的社会载体。传统教育的方式是以讲解理论知识为主,对特定的历史文化的高度解析,对于那些知识技能单一的文化来说,这种教育或许是人们比较容易接受的一种方式。然而,在现代高度发展的社会中,文化的多元化和学科的互相交叉的特性,特别是要求实践活动的科学学科,传统的教育模式已经不能满足现代教学的需求,也很难被学生所接受,所以这就需要寻找一种新的教学方法。在现在的教学实践中,网络教学越来越受到师生的青睐,并且在不断的实践中,已经证实网络教育是补充传统教育不足的一种有效的方法。操作系统网上实验系统是以操作系统课程为实验对象设计和实现的网上实验系统,它属于网络教学的一部分,为了补充课堂教学中学生不能及时得到充足的实验材料进行实验验证自己的知识水平和自我查缺补漏,老师不能及时掌握学生对知识的掌握的熟练程度和对知识的应用能力从而对不同学生进行不同的程度和方式的教学提供可靠的依据等不足问题,同时也是适应潮流的发展,为教学中实验课的环节提供一种简单的,方便的,高效的工具。操作系统网上实验系统的的成功研发不仅只是应用在操作系统课程实验教学中,也能应用在其他各科学科的实验课程上,他的不断完善和成功部署,或许会是网络教学的又一大补充和发展,推动教育事业前进的步伐。关键字 教育事业; 传统教育; 网络教学; 操作系统网上实验系统;工具Operating Systems Design and Implementation of experimental system onlineName: Liu Wen Pan(Grade09,Class2,Major Network Engineering,Institute of Mathematics and Computer Science Dept,Shanxi University of Technology,hanzhong 723001,Shanxi)Tutor: Wang PengAbstract: Education is the product of highly developed human society, the accumulation of crystals generations of civilization , but also the social carriers pass down from generation to generation . Traditional educational approach is to explain the theory of knowledge based on the height of a particular historical and cultural analysis , for those single cultural knowledge and skills , this education is perhaps one of the more easily accepted in a way. However, in modern highly developed societies, cultural diversity and cross-cutting disciplines characteristics, in particular scientific discipline requires practice , the traditional mode of education can not meet the needs of modern teaching , and it is difficult to be accepted by the student , so this needs to find a new teaching methods. In the current teaching practice, more and more online teaching are favored by students of all ages and teachers, and in the constant practice , it has been confirmed that online education is an effective approach to supplement the shortage of traditional education. Experimental system is based on the operating system online courses on operating system design and implementation as experimental subjects online experiment system that belongs to the network as part of teaching , in order to supplement classroom teaching students unable to get enough material for experimental verification experiment their level of knowledge and self- check Network access, the teacher can not grasp students' mastery of knowledge proficiency and ability to apply knowledge to students of different levels and different ways of teaching to provide a reliable basis for such shortage , but also adapt to the trend of development, providing a simple convenient and efficient tool for the teaching experimental class part . Operating system online successful development of the experimental system is not only used in the experimental teaching courses on operating system ,but also be applied to other disciplines experimental curriculum subjects , the continues improvement and successfully deployment of which will probably be another big online teaching complement and development, promoting education progress。Key words: Education;Traditional education;Experimental System operating system online;Tool目录引言11 系统概述21.1选题的目的和意义21.2 系统的功能概述21.3 实现系统的技术概述32 需求分析42.1 需求分析采用的方法42.2 可行性研究42.3 数据流图与数据字典52.3.1 数据流图52.3.2 数据字典62.4 系统功能需求分析72.4.1 系统功能结构分析72.4.2 学生用户功能分析82.4.3 老师用户功能分析92.5 系统约束要求93 系统设计与实现103.1 实现系统的工具或技术选择103.2 数据库系统的设计103.2.1 数据库设计103.2.2 MYSQL数据库在VC中的部署133.3 网络通信设计143.3.1 网络的基本构架143.3.2 TCP/IP数据包及通信模式153.3.3 SOCKET 网络传输程序的设计163.4 服务器端程序设计与实现173.4.1 服务器端程序流程图173.4.2 服务器端程序的实现183.5 客户端程序的设计与实现203.5.1 主界面及登录界面的设计与实现203.5.2 操作界面的设计和实现214 系统测试244.1测试策略244.2模块测试244.2.1服务器端数据库与VC链接的操作测试244.2.2网络通信单元模块测试244.2.3客户端模块的测试254.3功能测试255 总结285.1系统设计实现总结285.2系统的进一步改进28致谢29参考文献30科技外文文献31科技外文文献翻译36附录A:源代码40附录B:使用说明书55引言计算机的发展给人们的生活、工作和学习带来了前所未有的方便,是人类社会发展的一次重要的改革。由于计算机技术的发展,带动了其他很多产业的飞速前进,一些庞大的数据处理,在计算机的帮助下变得简单快捷,节省了大量的人力物力,并且正确率和准确率也得到了很大的提高,在计算机发展之前一些不可能实现的数据处理,在计算机的帮助下变得可能且简单。从大到航天航空,导弹航道计算等国家安全领域重大问题到小到电视机、电子手表等家庭日常生活,无处不见计算机技术的身影,可见计算机技术在人类社会已经非常的普及,并且得到了大部分人的认可和青睐。而在社会经济高速发展的今天,人们的生活水平得到了很大的提高,电子行业的快速发展,制造工艺和制造成本的大幅度降低,使得计算机等电子产品价格低廉,大部分的人们都有能力购买计算机等电子产品,而且越来越多的应用在日常生活的或生产活动中,给人们创造了不菲的价值。在现代社会里,为了解决单独的计算机技术很难实现知识或技术等文化的传播、知识不能共享等问题,计算机网络得到了高速的发展,并且基本覆盖了地球的大部分地区。世界上的人们只要连接上网络,不管他来自何方,身在何处,都能应用网络技术访问外面的世界,掌握最新的知识和动态新闻,并且能够在网络上进行互操作,完成自己的工作或生活任务。现在的企业,人事机构,政府机关甚至单个家庭都有自己的网络系统,通过该网络系统实现自己内部的事业或人事的管理,和外界的交流。由于计算机的高效、准确等优点和网络的快速发展,各行各业都在应用网络或计算机技术进行各种操作。教育事业是人类社会发展的文明象征,是人类社会高度发展的产物,是世世代代文明积累的结晶,他的发展直接影响到人类社会发展的脚步,也是科技技术的带头军,大力发展教育事业,推动知识的快速传播使我们每一个社会公民的责任。计算机网络技术在教育事业中的发展也非常的普遍,设计到学校管理的方方面面,而且这种校园网络管理技术还在不断的完善和发展之中,而且这种发展也是社会发展的趋势,是教育事业的一大潮流。操作系统网上实验系统也是属于教育事业网络化方面的一部分的内容,他是以操作系统作为实验的对象进行网上试验系统的设计和实现。现在的科学教育的一个重要的环节就是实践实验课程。而在传统的教育方式,只有到实验室在老师的统一指导下才能进行,这种方式缺少灵活性,且实验时间短,实验素材有限等问题使得同学们很难把自己掌握得到的理论知识和社会实践相结合起来,特别是计算机学科,大量的实验和练习对于学生掌握知识和技能非常的重要,所以这就必须要完善实验体制。网络实验系统正是在这样的背景下提出的并进行设计和实施的,操作系统网上实验系统的的成功研发不仅只是应用在操作系统课程实验教学中,也能应用在其他各科学科的实验课程上,他的不断完善和成功部署,或许会是网络教学的又一大补充和发展,推动教育事业前进的步伐。操作系统网上试验系统,主要是以操作系统为实验对象进行网上实验系统的设计和实现。此论文将主要从对系统的认识概述,需求分析,软件结构设计,软件开发和实施,软件测试与维护分析,用户操作手册等方方面面对该系统进行详细的说明,使用标准的软件开发流程进行全面的设计和开发。1 系统概述操作系统网上实验系统,采用C/S模式设计理念。该系统的使用范围定位在莫所高校莫个院系的所有专业的实验。其主要包括两部分的内容,一个服务器端和客户端。服务器端主要接收客户端发送的数据请求,对数据进行相应的处理,再把客服端需要的数据还回给客户端,客户端主要是接收用户数据,提交数据给服务器端,接收服务器端的数据,处理相应数据,显示数据等功能。该系统是一个简单的,完整的软件系统,基本包含了软件开发的各方面的基本要素。该系统也是一个课程科研项目,只进行简单的较为完整的设计和实施,并没有也没有那个条件进行全面的项目研发和实地部署。1.1选题的目的和意义操作系统网上实验系统设计,主要是以操作系统课程为实验案例对象来研究和设计网上实验系统,该系统的研究主要用于课程实验的管理,方便老师及时的发布实验信息,提供给学生各种实验题材,学生根据老师提供的题材和实验的要求,进行各项实验,并及时把实验中遇到的自己不能解决的问题、疑惑、实验结果等反馈给指导老师。通过该系统,老师可以及时的了解学生对知识的掌握情况,针对各种问题有针对性的解答疑惑,使同学们更牢固的掌握所学的知识,提高自己的动手能力。1.2 系统的功能概述我们明白了操作系统网上实验系统的系统概述之后,需要对该系统有一个基本的功能构架,进行简单的功能概述,我们知道,该系统主要又两部分组成,服务器端和客户端。服务器端和客户端我们采用TCP/IP进行基本的通信,而数据源我们需要一个数据库来保存数据和数据的更新。服务器端的主要功能是接收客户端的请求进行相应的处理,客户端数据通过TCP/IP协议,把数据传送给服务器端,服务器端根据客户端请求类型,进行相应的处理,对不同的请求对数据库进行不同的相应的操作,或者进行其他相应的处理,把处理后的结构,根据客户端的需求通过TCP/IP协议还回不同的值。客户端主要包括两种身份的客户,老师和学生,并且不同的登录角色有不同的操作权限。对于学生角色来说,其主要有两个模块的功能,个人基本信息管理和实验资料管理。个人基本信息管理主要是对该生基本信息的查看,基本信息的修改,密码的修改等,实验资料管理主要有查看该生需要做的全部实验信息,包括实验说明书的查看,示例结果的查看和操作,统计已完成的实验,还需要完成的实验,需要重修的实验,老师对实验的评阅,和提交实验报告等功能。对于老师登录身份来说,其也有两个模块的功能,个人基本信息管理和实验资料管理。个人基本信息管理和学生身份登录相差不大,主要是对该老师基本信息的查看,基本信息的修改,密码的修改等,实验资料管理主要有查看该老师对不同专业上传的各专业相对应的实验资料(因为一位老师可能胜任不同专业的不同的课程),上传实验资料,查看学生实验情况,评阅学生的实验,对学生的疑惑跟踪指导等功能模块。该系统的基本整体功能概述如图1.1所示。图1.1 整体功能描述图1.3 实现系统的技术概述操作系统网上实验系统设计解决的主要问题就是设计一个网上实验平台,通过这个平台,学生可以随时获取各种实验资料,进行各种练习,及时发现反馈各种疑惑、问题,和同学进行交流并得到老师的及时解答,方便师生交流。该系统将由两大部分组成,一个服务器端和一个客户端,服务器主要用于存储各种信息,客户端主要方便老师和同学的操作,其中主要用到的技术包括客户端应用程序的设计和开发,数据库系统的设计和开发,网络通信的设计和开发,多线程多进程的设计和实现等。2 需求分析在对系统进行了系统的概要描述之后,我们需要对系统进行需求分析,来确定我们设计这个系统可行性,构架和成本效益,决定该系统需要做什么,不做什么。2.1 需求分析采用的方法为了获取客户的需求,需要拟定了需求分析的方法与步骤,其中包括访谈与会议讨论,观察用户的工作流程,建立讨论小组,调查其它相关类似软件。为了能更好的完成该操作系统网上试验系统,我们初步拟定了以下的需求分析的方法与步骤:(1)寻找一个相关的类似的软件系统(如教务管理),认真学习期相关知识,掌握其基本流程和实现方法。(2)查看资料或走访相关老师,了解教学过程中,实验课的操作步骤和方法。(3)设计详细调查计划、设计调查工作底稿。(4)走访教务处、相关老师,相关学生和实验室管理人员,了解其组织机构、管理模式及内容、主要业务、国家标准、操作流程和实现方法、存在问题、需要完善的体制等,了解业务量大和问题多的业务。收集相关管理业务文件、国家标准样本。(5)进行可行性分析,估算成本和部署后的收益。(6)整理调查资料,写出主要业务分布图,与相关老师、学生和实验管理人员等相关人员交流,修改业务分布图、调整完善设计底稿,使用户可开发者意见达成一致。(7)根据业务分布图,与相关老师、学生等相关负责业务人员进行交流,进行输出数据流调查。了解主要内容及其数据的来源、组成、计算公式、审核公式等。收集实验资料(实验信息和实验说明书),了解实验环节的情况并统计其信息,找出其中的规律,生成报表形式。(8)写出报表组成结构图,与相关负责人员交流,反复修改,使用户对其设计结构满意并且在程序设计可行的设计范围内。(9)根据业务分布图,与老师,学生等相关负责人员个进行交流,确定输入数据流。确定基础数据来源(根据生成的报表样式)、数据的组成(数据元素,属性,数据结构和数据关系)、数据的去向(确定输出报表)、数据处理(数据量、峰值、峰值时间等及数据流动中的时序关系),掌握有规律性的数据、需进行连续积累的历史数据、有变化的基础数据。(10)画出业务流程图、数据流程图、数据流动时序图及ER图,写出数据字典。(11)将设计好的各类图纸,文档等与相关负责人员进行交流后反复修改,双方共同签字确定。(12)分析其实现的形式,编码的难度和需要攻破的技术关键。(13)画出数据流程图及ER实体图,写出数据字典。(14)根据ER图,进行数据库设计和部署分析,使满足3NF。(15)写出需求分析说明书。(16)进行需求分析评审。2.2 可行性研究在我们做任何事情之前都应该对该事情做一个可行性的研究,因为不是所有的项目都是能在有限的时间和当前知识背景之下可以解决的。如果所面对的问题没有一个可行的解,那么在这个项目中的任何的时间,人力,物力等资源的投入都将成为一种浪费。可行性分析做的好,我们可以用最小的代价在尽可能短的时间内确定问题的可行解,从而节约人力物力的效果,使投入最小,收益最高。在了解了操作系统网上实验系统的设计和实现的基本定义和项目的描述之后,我们需要对其进行可行性的分析,研究该项目的可执行度,进一步分析和澄清问题的定义,从而导出该系统的逻辑模式。下面,我们主要从技术可行性,经济可行性,操作可行性,社会效益等方面对该系统做一次详细的可行性分析。(1)技术可行性为了开发这个系统,我们选择了VC+ 6.0 作为主要的开发工具,该开发工具有高度的封装性,MFC的内置控件功能非常的庞大,应用非常的方便,快捷,是软件开发的一种很好地选择。另外,在4年的大学学习期间,我们对C/C+基本知识有扎实的基础,熟悉数据结构,算法设计和分析的基本内容,良好的计算机网络方面的知识,熟练网络编程,多线程,多进程等系统编程,对SQLServer 或MYSQL Server 数据库也有一定的学习和掌握。目前我们所掌握的知识和技能对操作系统网上实验系统的设计和实现是完全可以胜任的。(2)经济可行性经过小组的讨论,该项目的开发所需要的时间大概在一人30天左右,所需的硬件配置不高,开发成功之后,可以部署到校园的内部系统之中,不需要添加额外的硬件设备。开发成本较低,如果其系统功能得到认可在进一步完善和部署之后,将作为校园管理系统的一个补充部分受到同学们和老师们的广泛使用,将有很大的收益。(3)操作可行性该系统开发的重要一个理念就是操作尽量简单,尽量达到见文知意的效果。操作系统网上实验系统主要面对的使用的对象是高校里面的老师和学生,他们都属于高级知识分子,基本不用进行任何的额外培训就可以掌握其基本的操作。(4)社会效益由于现在教学的特殊的需要和实际存在的一些的问题,网络教育的流行和推广,网上实验系统将也将作为网络教育的一部分得到大力的支持与推广。它的成功研发和部署,将改变现实教学课程中实验环节存在的问题,推动教育事业前进的步伐。2.3 数据流图与数据字典数据流图用来刻画数据流和转换的信息系统建模技术,数据字典用来描述数据的具体定义。在需求分析中,数据流图和数据字典是非常重要的环节,其设计的质量的好差,将直接影响到软件的质量和开发的效率,也是决定软件效益最关键的步骤之一。2.3.1 数据流图之前的可行性分析表明,该系统是有可行的解,在与客户进行不断的交流和修改之后,我们得到了确定的信息,但是这些信息也是相对分散的,为此,我们需要把他们组织到一起,形成一个统一的结构,而数据流图是组织这些信息的一种最好的方法之一,如图2.1所示,操作系统网上试验系统的整体的数据流图。图2.1 网上实验系统数据流图2.3.2 数据字典数据流图和数据字典共同构成系统的逻辑模式,没有数据字典,数据流图就不严格,没有数据流图,数据字典就难以发挥其作用,他是对数据流图中包含的所有的元素的定义的集合,下面就是对图2.1数据流图的数据字典。名字:登录信息别名:登录账户定义:登录信息 = 登录账号+登录密码+用户角色描述:登录信息用于登录时验证该用户是否是合法的用户,只有数据库里面注册过的用户才是合法的用户。登录账号4数字字符4 | 6数字字符6登录密码=6数字字符6用户角色=老师 | 学生 位置:启动软件登录系统名字:交互数据别名:定义:交互数据 = 客户端数据 | 服务器端数据描述:客户端和服务器端进行数据交付的时候,是连接两端的数据中心,接收客户端的数据到服务器端,也接收服务器端的数据到客户端。客户端数据 = 操作客户端产生的流向客户端的数据 | 操作客户端产生的流向服务器端的数据服务器端数据 = 服务器端产生的流向客服端的数据位置: 对软件操作时,数据处理中心,客户端到客户端的数据,客户端和服务器端交流的数据2.4 系统功能需求分析系统功能分析指定系统必须提供的服务。在开发操作系统网上实验系统之前,首先要对其进行系统的功能分析。功能需求分析是软件设计中重要环节,也是决定性的一步,通过系统功能需求分析,才能把软件功能的总体概念描述为具体的软件需求规格说明,从而为开发出客户满意,功能完善的系统奠定了坚实基础。操作系统网上实验系统的需要实现的主要功能的分层图如图2.2所示。图2.2 网上实验系统功能层次图2.4.1 系统功能结构分析操作系统网上实验系统,从结构上分,由两大部分组成,服务器和客户端。服务器和客户端之间使用TCP/IP协议进行编程。服务器主要是接收客户端发送的各种数据请求,在对数据进行一定的处理,把客户端的需求变换成有用的数据,再把数据通过socket网络编程传送给客户端。例如,当客户端需要查看当前用户的用户资料的时候,客户端在和服务器端连接之后,发送一个特殊的数据表明现在我需要进行查询工作,之后发送需要查询的条件,服务器根据客户的请求,到特定的mysql数据库中查找所需要的数据,获取数据之后,在对数据进行特殊的处理,再把数据通过socket传送给客户端,到此一次通信就结束了。和服务器对应的是客户端,客户端的主要的作用是人机交互的窗口,在登录成功之后,就可以进入到操作界面,当客户输入不同的指令的时候,客户端程序将发出不同的动作,执行不同的操作,之后把客户需要的数据通过一定的方式提供给客户。例如,当用户点击修改密码按钮之后,就会相应的弹出一个对话框,提示用户输入原始密码,再输入新密码,当用户确认提交之后,如果程序执行过程都一切正常,当前用户的密码就修改为最新的密码,下次登录时就需要使用修改之后的 新密码。2.4.2 学生用户功能分析操作系统网上实验系统目前提供两种角色的登录状态,学生和老师,对于这两种用户,他们有不同的操作权限。而学生用户又有两个模块的功能,基本信息管理和实验信息管理,下面分别从这两个方面进行功能分析。(1)基本信息管理模块:1)基本信息查询,提供当前登录学生的基本信息。例如当一个同学登录成功后,需要查看自己的基本信息,点击查看基本信息之后,系统就通过一个对话框视图,把该生的基本信息显示出来。2)修改密码,提供用户密码的修改更新。如当学生需要设置自己的新密码的时候,需要点击系统的修改密码按钮,之后系统将为客户提供一个操作提示对话框,用户需要输入原始密码,和两次新密码,当操作都正确之后,点击确定提交,如果程序运行正确,密码修改成功,下次登录系统是就西药使用新密码。3)修改基本信息,当用户基本信息有误的时候,该模块提供用户修改基本信息的窗口。用户只需点击系统的修改基本信息按钮,系统将提供一个提示对话框,显示需要修改的基本信息,用户可以改变其中的值,在确认之后,点击确定提交,如果程序运行正确,基本信息更新成功。(2)实验信息管理:1)检索实验,提供该生查询该生所在专业班级的所有实验,也是该生需完成的实验。如果该生需要查看自己需要完成的实验有哪些,点击检索实验,系统将提供一个列表,在其中显示所有该生所在专业所有课程的实验信息。2)查看说明书,提供给学生对实验指导书的查阅。学生在做实验之前光有实验题目是远远不够的,没有实验说明书,就不明白该实验需要完成的内容及该实验的目的,学生需要选中一个实验,之后点击查看说明书,系统就会把该实验的实验说明书通过文本的形式显示出来,供学习查看。3)查看示例结果,提供单个实验的实验结果示例查看。有时候学生需要查看实验结果示例,了解该实验需要达到什么效果,完成什么功能,这个功能就显得非常的必要,学生需要选中想要查看的实验,点击查看示例结果,系统就会给出给实验的示例结果,并且该示例结果是可以操作的。4)提交实验报告,提供学生向系统提交实验报告。当学生完成了该实验之后,需要把该实验提交给系统,之后,老师才会查看该实验报告,当学生点击提交实验报告的时候,系统提供一个提示对话框视图,需要用户提供必要的信息,例如输入实验编号,导入实验报告书,或实验结果文件,当对实验有任何的疑问的时候,也可以发表自己的任何看法,确认之后提交,如果系统运行正常,实验报告将会成功提交给系统。5)查看实验状态,提供实验的各种统计信息,其中包括已经完成的实验,没有完成的实验,需要重修的实验,查看老师的评阅等等。学生需要查看实验的完成情况的时候,就需要对这一系列进行相应的操作,例如想查看已经完成的实验,点击已完成按钮,系统将把已经完成且成功上传到系统的该生的所有的实验通过列表的形式罗列出来,点击未完成按钮,系统将把该生需要完成且没有完成的所有的实验通过列表的形式罗列出来,点击重修实验按钮时,系统将把该生已经完成且成功上传到系统的且没有通过的所有的实验通过列表的形式罗列出来,点击查看评阅时,系统将把该生已经完成且成功上传到系统的且老师已经评阅的所有的实验的评阅信息通过列表的形式罗列出来。2.4.3 老师用户功能分析当使用老师角色登陆时,该用户就具有老师的操作权限,老师用户有两种模块的功能,基本信息管理和实验信息管理,其中基本信息管理模块和学生角色登陆时功能基本相同,只是其中的信息都是老师的信息,信息显示的内容不同,在该处不做阐述,参考学生角色的基本信息管理的功能分析,下面主要对老师角色的实验管理方面的功能进行分析。(1)查看该老师上传的实验,该功能主要是统计该老师上传到系统的所有的实验。由于每位老师可能任教不同专业的不同的课程,操作系统网上实验系统针对的是莫所高校特定院系的所有专业,假设该院系有网络工程,计算机本科,计算机专科三个专业,为了统计的规律性,我们需要把三个专业分开统计,当需要查看该老师为网络工程学生上传的实验的时候,点击查看实验目录下的网络工程,系统将把该老师已经成功上传到系统的且属于网络工程专业的实验信息通过列表的形式罗列出来,需要查看其它专业的实验信息,和网络工程进行相同的操作即可。(2)上传实验,实现该老师向系统添加新的实验内容。当老师需要添加新实验的时候,点击上传实验资料,系统将提供一个提示对话框视图,老师需要在该对话框填写一些必要的信息,上传实验说明书,实验结果示例,确认之后提交,如果系统运行正常,实验报告将会成功提交给系统。(3)查看学生实验完成情况,实现老师对学生完成他上传的实验的情况。由于每位老师可能任教不同专业的不同的课程,我们以查看老师上传的实验模块中假设的专业为例,当老师需要查看莫个专业的所有学生的实验完成情况(如网络工程)时,点击查看完成情况目录下的网络工程,系统将把该专业所有完成的实验和该实验的评阅状态通过列表的形式罗列出来。(4)查看实验报告,实现老师查看莫位同学莫个实验的实验报告书或实验结果。实验报告书或实验结果是老师评阅实验的重要依据,老师需要选择一个实验,之后点击查看实验报告书或查看结果,系统就调出该学生该实验的实验报告或实验结果,显示或运行。(5)评阅实验,实验老师对莫个学生莫个实验的评阅。实验评阅是统计实验优劣的一种有效的手段,老师需要选中莫个实验,点击评阅按钮,之后系统将提供一个提示对话框,需要填入必要的信息,确认之后提交,如果系统运行正常,系统将把评阅信息成功提交给系统。2.5 系统约束要求为了保护数据的安全性和用户的操作的条理性,需要对系统的功能做必要的约束要求。操作系统网上试验系统,主要有用户信息管理和实验信息管理两大块内容,下面分别从这两方面阐述系统的约束要求。(1)用户管理约束要求:由于学校里面的学生和老师变动性比较小,且主要信息要求保存完整,所以需要有特定的管理员对老师或同学的主要信息(如注册新学生或老师等)进行统一的管理。而操作系统网上实验系统是需要加载到校园管理系统中的,所以不需要进行特殊的额外的研发。但用户可以查看信息和修改一些基本的信息和修改密码,特定的用户只能查看自己的信息,密码必须是少于10个数字字符组成,且必须以密文表示,基本信息的修改不能改变关键的信息,如学号,所在专业等信息。(2)实验管理约束要求:对于学生来说,检索的实验必须是其所在的专业的实验资料,如网络工程的学生不能查看计算机本科专业的实验信息,学生能查看的实验必须是老师向该生所在专业提交的实验资料,完成情况也必须是该生需要完成或已经完成的实验信息。对于老师来说,该老师只能查看自己上传的实验,其他老师上传的实验是不可见的,只能评阅或查看该老师提供的属于该老师当前学生的实验信息。3 系统设计与实现系统设计是把需求转化为软件系统的最重要的环节。系统设计的优劣在根本上决定了软件系统的质量。操作系统网上实验系统主要包括数据库的设计,网络通信,客户操作界面等组成,下面我们分别对各模块进行设计和实现。3.1 实现系统的工具或技术选择工具或技术的选择,是实现一个系统或工程的关键步骤之一,根据我们目前拥有你的条件或掌握的技能,实现操作系统网上试验系统需要的工具或技术选择如下清单所示:(1)计算机主要配置:内存:2G,主频:2.4GHZ,硬盘:500G/5400转/分(2)操作系统:Windows XP 专业版32位(3)编程语言:C/C+(4)编程工具:VC+ 6.0 /MFC组件(5)数据库:MYSQL Server 5.5 /SQLyog(MYSQL辅助工具)(6)网络通信协议:TCP/IP3.2 数据库系统的设计数据库系统是操作系统网上试验系统的数据中心,下面我们主要从数据库的设计和数据库在vc中的应用分别来说明数据库系统的设计。3.2.1 数据库设计数据库设计包括对系统的分析,实体E_R图,数据表设计,约束条件的建立,视图的建立等方方面面的知识和技巧。(1)数据库系统实体E_R图。根据分析,操作系统网上试验系统的数据库系统主要存在三个实体即老师,学生和实验,老师和学生只能对实验或自己的实体进行操作,老师实体和学生实体之间没有任何直接的操作关系。老师可以查询、上传、评阅实验,学生可以查询、读取、上传实验报告,老师实体和实验实体之间存在多对多的关系,学生实体和实验实体也存在多对多的关系。如图3.1所示,为操作系统网上实验系统数据库系统方面的实体E_R图。图3.1 网上实验系统数据库系统E_R图(2)数据表的设计。根据需求分析和网上试验系统的数据库系统的E_R图,操作系统网上实验系统总共需要设计数据表5张,分别为学生表,老师表,实验表,实验完成表,老师评阅表。以下清单是对应表的详细信息。学生表Field NameDatatypeLenDefaultPK?Not Null?CharsetCommentIDVarchar10üüGb2312密码Varchar6000000üGb2312姓名Varchar10üGb2312性别Char2男üGb2312性别in (男,女)年龄Int20ü年龄 between 0 and 100所属院系Varchar6üGb2312所属专业Varchar6üGb2312所属专业 in (网络工程,计本,计专)班级Varchar2üGb2312政治面貌Varchar2Gb2312入学时间Data宿舍Varchar4Gb2312联系方式Varchar11Gb2312家庭住址Varchar20Gb2312表3-1 学生表老师表Field NameDatatypeLenDefaultPK?Not Null?CharsetCommentIDVarchar5üüGb2312密码Varchar6000000üGb2312姓名Varchar10üGb2312性别Char2男Gb2312性别in (男,女)年龄Int20年龄 between 0 and 100所属院系Varchar5Gb2312所属部门Varchar