

免费预览已结束,剩余48页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计题 目: c语言在线编程系统的探索与设计学 院: 经济管理专业名称: 信息管理与信息系统班级学号: 08093112学生姓名: 指导教师: 二一二 年 六 月毕业设计(论文)任务书i、毕业设计(论文)题目: c语言在线编程系统的探索与设计ii、毕 业设计(论文)工作内容及要求: 1、查阅论文相关中外文献并收集相关资料具体要求:(1)到学校图书馆借阅web开发、分布式系统方面的图书510本;(2)从中国知网等网站查找相关论文20篇,重点阅读至少10篇,关键检索词:web开发、分布式系统;(3)从网上查阅最新的web开发、分布式系统的有关报道、案例等;(4)阅读老师提供的外文文献。2、完成文献综述及开题报告具体要求:(1)要写明选题的依据及意义、国内外研究现状及评述、指出主要特色;(2)文献综述及开题报告要有参考文献11篇以上(至少1篇外文文献),并尽可能多引用最新的期刊文章;(3)系统重点:编程模块开发;难点:编程控件开发3、完成系统开发工作具体要求:(1)系统运行稳定,与开发初衷一致(2)联系实际。(3)要体现系统的主要特色。iii、毕 业设计时间安排: 1、第1周第4周:查阅资料,完成外文资料翻译,撰写开题报告。2、第5周第9周:完成并提交毕业设计初稿。3、第10周-第13周:毕业设计定稿。4、第13周:毕业设计评阅。5、第14周:根据评阅人意见修改毕业设计,提交答辩稿。6、第15周:毕业设计答辩、最终定稿并提交归档。 、主 要参考资料:1 单东林,张晓菲,魏然锋利的jquerym.人民邮电出版社,20092 nicholas c.zakas.javascript高级程序设计(第2版) m.人民邮电出版社,20103 cay s.horstmann , gary cornell.java核心技术 卷i:基础知识m. 机械工业出版社.20104 cay s.horstmann , gary cornell.java核心技术 卷ii:高级特性m. 机械工业出版社.20105 陈臣,王斌,孙琳,王鸽,蒲蓬勃.研磨structs2m.清华大学出版社.20116 石志国,刘翼伟,王志良,jsp应用教程(修订本m).清华大学出版社.20087 王珊,萨师煊.数据库系统概论(第四版) m.高等教育出版社.19838 bruce eckel.java编程思想(第4版) m.机械工业出版社.20109 andrew s.tanenbaunm,david j.wetherall.computer networksm.机械工业出版社201110 王国辉 . java web开发实战宝典m .清华大学出版社.201011 thomas h.cormen ,charles e.leiserson,ronald l.rivest, clifford stein.算法导论m.机械工业出版社.2011 经济管理 学院 信息管理与信息系统 专业 080931班学生(签名): 日期: 自 2012 年 3 月 12 日至 2012 年 6 月 20 日指导教师(签名): 助理指导教师(并指出所负责的部分):系主任(签名):学士学位论文原创性声明本人声明,所呈交的论文是本人在导师的指导下独立完成的研究成果。除了文中特别加以标注引用的内容外,本论文不包含法律意义上已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期:学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权南昌航空大学可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 作者签名: 日期:导师签名: 日期:c语言在线编程系统的探索与设计学生姓名:蒋峰 班级:080931指导老师:邓砚谷摘要:文章对于c语言在线编程信息系统的设计与开发进行了阐述。首先从设计开发该系统的背景入手探讨了系统开发的必要性与迫切性,提出该系统意义所在;然后展开可行性分析研究,按照软件工程的相关规范与标准,广泛而深入地开展c语言在线编程系统的需求分析,依据需求报告进行系统总体设计与详细设计;最后完成系统的开发与实施。最终交付成型的系统将极大地方便c程序开发者,较好地满足c程序开发者的需求,基本上达到了系统设计与开发的目的。关键词:在线编译 c语言 无刷新 gcc指导老师签名:the explore and design of c online compiler student name: jiang feng class: 080931supervisor: deng yanguabstract: this paper elaborates the design and development of c online compiler information system. it starts to analyze the background of this system to explore necessity and significance of this system. then it begins to carry out feasibility and requirement analysis to design, develop and implement according to the standards of software engineering. the final delivery system will greatly convenient for c developers, greater better meet the needs of the c developers. it basically reached the purpose of this system.keywords: online compiler c program no refresh gccsignature of supervisor:目 录1. 引言31.1研究背景31.2文献综述31.2.1研究现状31.2.2发展趋势32. 系统分析32.1开发背景与特点32.2需求分析32.2.1功能需求32.3开发进度32.4业务流程图32.4.1公共业务流程图32.4.2编程业务流程图32.4.3程序交流业务流程图32.5数据流程图32.5.1 顶层数据流程图32.5.2 第一层数据流程图32.5.3 第二层数据流程图32.6数据字典描述32.6.1数据元素32.6.2数据流32.6.3数据存储32.6.4外部实体33.系统设计33.1系统模块图33.2 e-r图33.3数据库设计33.3.1 表设计33.3.2数据库表间关系:34 系统实施34.1 系统测试34.1.1 测试目的34.1.2 测试方法34.1.3 测试项目34.2 运行环境342.1 服务器环境34.2.2 客户端环境34.3系统运行34.4 系统停止35 结束语3参考文献3致谢3南昌航空大学学士学位论文c语言在线编程系统的探索与设计1. 引言1.1研究背景随着电子技术、网络技术、通信技术的飞速发展,分布式操作系统日渐成熟,人们熟悉的计算机、及使用方式即将发生重大变革。不久后的计算机也许只有显示器、键盘等输入输出终端,使用方式上也许只要一个浏览器或者客户端我们就可以操作计算机做任何事。互联时代人们更热衷于随时随地办公,但目前的硬件技术限制了大型应用无法在移动设备商上使用。c语言在线编程系统使人们可以通过浏览器学习和开发c程序,满足分布式操作系统的需要,解除在移动设备上的限制。1.2文献综述伴随着互联网的普及和迅猛发展,b/s架构的程序的发展也是突飞猛进。和普通的c/s架构的应用程序相比,它具有自己独特的优势:一次开发,随处可用,不需一一部署,而且跨平台,只需用户接入了互联网,再加上浏览器。但是由于各个浏览器本身对于w3c标准实现的程度不同,很多的b/s应用程序都受到了跨浏览器的困扰,但是随着更加规范的新一代浏览器的推出已经许多第三方javascript库的出现,使得人们在解决跨浏览器上有了更切实可行的方法。1.2.1研究现状基于b/s架构的在线编程系统在国外已经有比较出色地解决方案,特别是手机软件在线编程发展比较迅速,单片机在线编程也比较成熟,此外还有一些竞技系统,如acm大赛所用就是在线编程系统。国内在线编程系统还不是特别成熟,目前只有少数大学运用的竞赛系统,如浙江大学的online judge,比较多的是网页在线编程系统,这种系统由于与网络、浏览器环境吻合度高,难度不是很大,但其他类型的在线编程系统几乎没有。总体来看,目前所存在的在线编程系统,只是用于简单的竞赛和教学,没有大型化的商业应用。随着分布式系统、云计算、移动互联的成熟,专业化的成熟的商业化在线编程系统将开始出现运用。1.2.2发展趋势随着各大浏览器厂商越来越重视对于w3c标准的实现,纷纷加快了浏览器开发的步伐,解析javascript的速度越来越快,使的构建富因特网应用有了更好的基础,可以预见,为了保持与用户良好的交互性,将来的客户端的javascript脚本代码量会逐渐增多,而且随着html5标准的产生,b/s系统应用程序将会继续蓬勃发展,在速度,实时性更接近桌面应用程序。在线编程将是大势所趋。2. 系统分析2.1开发背景与特点本系统主要具有以下几个特点:(1)采用mvc设计模式,解决普通jsp页面中的java,html和css代码犬牙交错的现象,并取消bean层,所有数据流都采用json,使得数据从前台显示页面直到后台数据库,都完美保持一致稳定,避免出现编码紊乱等问题,提高了系统的可维护性和重用性。(2)更加人性化的用户图形交互界面,在这方面主要采用jquery来提升页面的动态的交互性,并且由于jquery良好的跨浏览器特性,尽可能的解决了javascript在不同浏览器上的差异,从而保证了系统整体的跨浏览器特性。 (3)程序编辑界面全部采用ajax无刷新操作,使操作更友好,不必反复的跳转等待,让用户得到更好的体验(4)逻辑功能控制的任务主要交由servlet处理,彻底将java代码从jsp页面中分离出来,逻辑功能的代码实现都写入纯java的servlet中。(5)后端采用开源的json进行数据库数据进行封装,实现对数据库的oop操作。(6)数据库采用sqlsever 2005。2.2需求分析2.2.1功能需求(1)用户模块,实现用户注册,登录,签到积分,找回密码。(2)编程模块:在线编程,编译,运行,下载应用程序。(3)分享程序模块:分享程序,下载程序 2.3开发进度 (1)第1周第4周:查阅资料,完成外文资料翻译,撰写开题报告 (2)第5周第8周:完成并提交毕业论文(设计)初稿 (3)第9周:完成并提交毕业论文(设计)二稿 (4)第10周:完成并提交毕业论文(设计)三稿 (5)第11周:毕业论文(设计)评阅 (6)第12周:根据评阅人意见修改毕业论文(设计),提交答辩稿 (7)第13周:毕业论文(设计)答辩、最终定稿并提交归档2.4业务流程图2.4.1公共业务流程图(1)注册业务流程图 (2)登录业务流程图(3)找回密码业务流程图2.4.2编程业务流程图(1)会员新建程序业务流程图(2)普通用户新建程序业务流程图(3)会员打开程序业务流程图(4)会员重命名程序业务流程图(5)普通用户重命名程序业务流程图(6)会员保存程序业务流程图(7)普通用户保存程序业务流程图(8)会员删除程序业务流程图(9)普通用户删除程序业务流程图(10)会员编译程序业务流程图(11)普通用户编译程序业务流程图(12)运行程序业务流程图(13)下载程序业务流程图2.4.3程序交流业务流程图(1)分享程序业务流程图(2)查看分享程序列表业务流程图(3)查看分享程序业务流程图(4)下载分享程序业务流程图(5)查看我的分享程序列表业务流程图(6)修改分享程序业务流程图(7)删除分享程序业务流程图(8)评论分享程序业务流程图2.5数据流程图2.5.1 顶层数据流程图2.5.2 第一层数据流程图2.5.3 第二层数据流程图(1)p1用户管理数据流程图(2)p2程序编辑数据流程图(3)p3程序编译数据流程图(4)p4程序运行数据流程图(5)p5程序下载数据流程图(6)p6分享程序数据流程图(7)p7查看分享程序数据流程图(8)p8下载分享程序数据流程图(9)p9评论分享程序数据流程图2.6数据字典描述2.6.1数据元素编号:u-01编号:u-02名称:username名称:email别名:user id 别名:user email描述:用户名描述:用户电子邮箱定义:4字符20定义:6字符20位置:t1,t2,t5,t6位置:t1编号:u-03编号:u-04名称:password名称:jf别名:user password别名:user jf描述:用户密码描述:用户积分定义:6字符20定义:1数字8位置:t1位置:t1编号:u-05名称:lastsign别名:user lastsign 描述:最后签到时间定义:10字符20位置:t1编号:p-01编号:p-02名称:username名称:pid别名:userid别名:project id描述:用户名描述:工程编号定义:6字符20定义:1数字8位置:t1,t2,t5,t6位置:t2,t3编号:p-03名称:project别名:project name描述:工程名定义:1字符20位置:t2,t3编号:f-01编号:f-02名称:tid名称:fid别名:floder tid别名:floder fid描述:文件夹或文件编号描述:父文件夹编号定义:1数字8定义:1数字8位置:t2,t3,t4位置:t2,t3,t4编号:f-03编号:f-04名称:flag名称:floder别名:floder flag别名:floder floder描述:文件夹或文件标志描述:文件夹名定义:1数字8定义:1字符20位置:t3位置:t2,t3编号:f-05编号:f-06名称:fc名称:program别名:floder fc别名:floder program描述:文件名描述:程序定义:1字符20 定义:1字符1048576位置:t3位置:t3编号:t-01编号:t-02名称:tid名称:title 别名:topic id别名:topic title描述:话题编号描述:话题名定义:1数字8定义:1字符50位置:t4,t5,t6位置:t4,t5编号:t-03编号:t-04名称:fid名称:description别名:topic fid别名:topic description描述:话题对应程序编号描述:话题说明定义:1数字8定义:1字符1048576位置:t3,t4位置: t4编号t-05名称:downloadtime别名:topic downloadtime描述:话题下载次数定义:1数字8位置:t4编号:l-01编号:l-02名称:username名称:tid 别名:list username别名:list tid描述:用户名描述:话题编号定义:4字符20定义:1数字8位置:t1,t2,t5,t6位置:t4,t5,t6编号:l-03名称:title别名:list title 描述:话题名称定义:1字符50位置:t4,t5编号:c-01编号:c-02名称:id名称:tid别名:comment id别名:comment tid描述:评论编号描述:评论话题编号定义:1数字8定义:1数字8位置:t6位置:t4,t5,t6编号:c-03编号:c-04名称:username名称:content别名:comment username别名:comment content描述:用户名描述:评论内容定义:4字符20定义:1字符1048576位置:t1,t2,t4,t6位置:t62.6.2数据流编号: uf-01编号: uf-02名称:用户注册信息名称:用户登录信息描述:用户的注册信息描述:用户登录的信息来源:用户输入来源:用户输入去向:p1.1去向:p1.2,组成:uaername+email+password+jf+lastsign组成:username+password编号: uf-03名称:找回密码的信息描述:用户的找回密码信息来源:用户输入去向:p1.3组成:username+eamil编号: ff-01编号: ff-02名称:新建程序信息名称:打开程序信息描述:会员输入的文件夹名或文件名 描述: 会员打开的程序信息来源:会员输入来源:会员选择,目录表去向:p2.1 去向:p2.2 组成:floder或fc组成:tid+fc+program编号: ff-03编号: ff-04名称:保存的程序信息名称:重命名的信息描述:会员保存的程序信息描述:会员重命名的程序信息来源:会员输入来源:会员输入去向:p2.3去向:p2.4组成:tid+program组成:tid+floder或fc编号: ff-05编号: ff-06名称:删除的信息名称:新建程序信息描述:会员删除程序的信息描述:普通用户输入的文件夹名或文件名 来源:会员选择来源:普通用户输入去向:p2.5 去向:p2.6组成:tid组成: fc编号: ff-07编号: ff-08名称:打开程序信息名称:保存的程序信息描述:普通用户打开的程序信息描述:普通用户保存的程序信息来源:用户选择来源:普通用户输入去向:p2.7去向:p2.8组成:tid+fc+program组成:tid+program编号: ff-09编号: ff-10名称:重命名的信息名称:删除的信息描述:普通用户重命名的程序信息描述:会员删除程序的信息来源:普通输入来源:会员选择去向:p2.9去向:p2.510组成:tid+floder或fc组成:tid编号: ff-11编号: ff-12名称:会员编译的信息名称:普通用户编译的信息描述: 描述: 来源:会员选择来源:普通用户选择去向:p3.1去向:p3.2 组成:tid+program组成:tid+code编号: ff-13编号: ff-14名称:会员运行的信息名称:普通用户运行的信息描述:描述: 来源:会员选择来源:普通用户选择去向:p4.1 去向:p4.2组成:tid 组成:tid编号: ff-15编号: ff-16名称:会员下载的信息名称:普通用户下载的信息描述:描述: 来源:会员选择来源:普通用户选择去向:p5.1 去向:p5.2组成:tid 组成:tid编号: tf-01编号: tf-02名称:创建话题的信息名称:修改话题的信息描述: 描述: 来源:会员输入来源:会员选择+输入去向:p6.1去向:p6.2组成:会员输入的信息组成:tid+会员输入的信息编号:tf-03编号:tf-04名称:删除话题的信息名称:查看话题列表的信息描述: 描述: 来源:会员选择来源:会员选择,话题表去向:p6.3去向:p7.1组成:tid组成:tid+title编号:tf-05名称:查看话题的信息描述: 来源:会员选择,话题表去向:p7.2组成:tid+title+fid+description+downloadtime编号lf-01名称:查看我的列表的信息描述: 来源:会员选择,分享表去向:p7.3组成:tid+title编号:df-01名称:下载分享程序信息描述: 来源:会员选择去向:p8.1 组成:tid编号: cf-01名称:评论信息描述: 来源:会员选择+输入去向:p9.1组成:tid+会员输入的内容2.6.3数据存储编号:t1编号:t2名称:users名称:project别名:users table别名:project table描述:用户表描述 工程表定义:t1=username+email+password+jf+lastsign定义:t2=username+tid+project编号:t3编号:t4名称:floder名称:topic别名:floder table别名:topic table描述:目录表描述:话题表定义:t3= tid+fid+flag+floder+fc+program定义:t4= tid+fid+title+description+doenloadtime编号:t5编号:t6名称:list名称:comment别名:list table别名:comment table描述:分享表描述:评论表定义:t5=username+tid+title定义:t6=username+tid+content2.6.4外部实体编号:oo-01编号:oo-02名称:普通用户名称:会员描述:描述:输入:用户,程序输入:会员,程序,分享等信息输出:输出:3.系统设计3.1系统模块图3.2 e-r图3.3数据库设计3.3.1 表设计(1) users表(用户信息表)列名类型说明含义默认值usernamevarchar(20)主键用户名emailvarchar(50)not null unique邮箱passwordvarchar(20)not null密码jf int not null积分0lastsignvarchar(20)最后签到时间(2)project表(工程表)列名类型说明含义默认值usernamevarchar(20) 主键,外键用户名pidint主键,外键工程编号projectvarchar(50)not null工程名(3)floder表(目录表)列名类型说明含义默认值tidint主键,自动增长文件夹或文件编号fidintnot null父文件夹编号flagintnot null标志,1为文件夹,2为文件flodervarchar(20)文件夹名fcvarchar(20)文件名programntext程序内容(4)topic表(分享程序话题表)列名类型说明含义默认值tidint主键,自动增长话题编号titlevarchar(50)not null话题名称fidintnot null对应程序编号descriptionntext程序说明downloadtimeint下载次数0(5) comment表(评论表)列名类型说明含义默认值idint主键,自动增长tidint外键话题编号usernamevarchar(20)外键评论者contentntextnot null评论内容(6) list表(分享程序列表)列名类型说明含义默认值usernamevarchar(20)主键,外键分享着tidint主键,外键话题编号titlevarchar(50)not null话题名称3.3.2数据库表间关系: 4 系统实施4.1 系统测试4.1.1 测试目的系统测试是软件开发的关键的必要步骤之一。系统测试时以寻找错误为目标的,该系统的测试的主要从以下各个方面加以考虑的:(1)系统功能是否正确或是否遗漏了某些功能;(2)系统性能是否有误,可靠性与可用性如何;(3)系统的初始化安装与终止是否会出现问题;(4)数据结构或系统数据库访问是否出现错误;(5)用户界面是否合理,不出现系统内部错误。4.1.2 测试方法一般系统测试都有白盒测试与黑盒测试两种方法10。由于系统开发前已经知道了产品应该具有的功能,因此就可以通过黑盒测试检验是否每个功能都能正常使用。而白盒测试主要是在代码设计阶段广泛使用。在系统设计之后主要是通过黑盒技术来测试系统功能。4.1.3 测试项目(1)用户注册测试测试编号:reg-01测试输入:空提交预期结果:用户名等不能为空,不能成功注册。实际输出:弹出“用户名不能为空!”提示,3秒后自动隐藏测试编号:reg-02测试输入:用户名:邮箱:995171821密码:10080411 确认密码:10080411预期结果:用户名包含特殊字符,不能成功注册。实际输出:弹出“用户名只能是4位以上字母、数字下划线!”提示,3秒后自动隐藏测试编号:reg-03测试输入:用户名:jsf2011预期结果:密码不能为空,不能成功注册。实际输出:弹出“信息不能为空!”提示, 3秒后自动隐藏测试编号:reg-04测试输入:用户名:jsf2010(已存在)邮箱:995171821 密码:10080411 确认密码:10080411预期结果:id已存在,不能成功注册。实际输出:出现“该用户已经存在!”提示,3秒后自动隐藏测试编号:reg-05测试输入:用户名:jsf2010(已存在)邮箱:995171821 密码:10080411 确认密码:10080412预期结果:密码前后不一致,不能成功注册。实际输出:出现 “密码输入不一致!”提示,3秒后自动隐藏测试编号:reg-06测试输入:用户名:jsf2011邮箱:995171821 密码:10080411 确认密码:10080411预期结果:成功注册实际输出:出现 “恭喜,注册成功!”提示,3秒后自动隐藏(2)编译测试测试编号:com-01测试输入:有语法错误预期结果:有报错信息。实际输出:提示区给出错误提示测试编号:com-02测试输入:正确输入代码预期结果:编译正确实际输出:提示区给出编译正确信息(2)运行测试测试编号:run-01测试输入:未编译预期结果:有报错信息。实际输出:出现“请先编译或正确编译!”,3秒自动隐藏测试编号:run-02测试输入:编译有错误预期结果:有报错信息。实际输出:出现“请先编译或正确编译!”,3秒自动隐藏测试编号:run-03测试输入:编译正确预期结果:正常运行实际输出:提示区给出运行结果4.2 运行环境由于该系统采用的是b/s模式,故在服务器端与客户端的配置环境较为不同。42.1 服务器环境(1)java环境:jdk;(2)web服务器:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- “我们的节日”-中秋主题活动总结
- 七夕节商场活动策划方案(14篇)
- 年产20万吨氟化系列产品生产项目可行性研究报告(参考范文)
- 《念书的孩子》观后感(28篇)
- 工厂建设项目投资与融资策略解析
- 知识管理部价值分析:驱动企业创新的核心引擎
- 广东省四会中学广信中学2023-2024学年高二上学期第二次月考语文含解析
- 地理教学过程设计
- 南通大学《列车调度指挥》2023-2024学年第二学期期末试卷
- 咸阳职业技术学院《数字信号处理课程设计实训》2023-2024学年第二学期期末试卷
- 物管物业交接验收明细表格(全)模板
- 《辛德勒的名单》电影赏析
- 文艺复兴史学习通超星期末考试答案章节答案2024年
- 2024年新疆中考数学试卷(含答案解析)
- 员工突发疾病应急预案
- Z20名校联盟(浙江省名校新高考研究联盟)2025届高三第一次联考数学试题卷
- 7分析一个实际的环境问题课件科学五年级下册教科版
- 小学英语语法专题训练:名词所有格(含答案)
- 公司食堂外包项目投标方案(技术方案)
- 2023年全国职业院校技能大赛-直播电商赛项规程
- 事业单位的现金管理制度
评论
0/150
提交评论