1、辽宁工程技术大学大型软件项目实训报告教学单位 软件学院 专 业 软件工程 班 级 学生姓名 学 号 指引教师 目录一、实训目2二、实训时间和地点3三、实训单位简介3四、实训内容34.1实训期间完毕学习任务44.2实训期间完毕实践项目74.2.1需求分析74.2.2数据需求分析104.2.3概要设计104.2.4详细设计134.2.5系统实现及编码144.3测试31五、实训收获与体会32六、道谢32一、实训目为了将大学和培训中心所学东西应用到实际开发和项目应用中。提高自己专业技能、编码能力、问题解决能力。理解所做项目某一模块和这一模块跟其她模块功能、流程。使用JSP,Spring应用框架和Ora
2、cle10g数据库技术进行对国内项目开发,在开发过程中使用SVN进行代码批准管理和统一。最后通过公司测试库进行测试,最后将项目上线。完毕整个软件项目开发周期,在项目开发各实行阶段严格进行评审,以保证项目质量。二、实训时间和地点1实训时间:12月9日1月17日2实训地点:大连华信计算机技术股份有限公司三、实训单位简介大连华信计算机技术股份有限公司是一家面向全球客户提供领先应用软件产品、信息服务及行业解决方案供应商。通过近年发展,大连华信已经成长为一家以软件技术为核心,提供从软件设计、开发、测试、实行到后期培训、维护服务和业务征询全面解决方案提供商。大连华信软件技术和信息服务应用于电信、电力、公共
3、、金融、保险、交通、物流、传媒、制造业等各种行业,协助国内外400多家客户改进工作质量,有效提高客户价值。作为国内较早进入日我市场软件公司之一,大连华信在对日软件外包服务业务领域获得了长足发展,并与众多日本知名公司建立了良好合伙关系。强大技术实力、科学管理机制带来了丰硕成果。国内市场,大连华信作为行业解决方案提供商,在电信、保险、政府、ERP等领域有着丰富经验,成功案例遍及全国270各种都市。,在全国软件出口排行榜中,大连华信荣登榜首,大连华信又凭借软件出口雄厚实力荣膺“最具竞争力中华人民共和国软件公司”称号,入围中华人民共和国软件产业最大规模前100家公司。软件开发营业额达到7亿多元人民币,
4、规模达到6000人,是中华人民共和国最大IT外包商之一。作为中华人民共和国软件行业新领军者,大连华信是国家规划布局内重点软件公司、中华人民共和国软件产业最大规模前100家公司,技术水平居于国内同行业领先地位,具备国家计算机信息系统集成一级资质,并获得了ISO9001:、CMM5级、ISO27001:、ISO14001:、PIPA(个人信息保护合格证书,与日本P-MARK互认)等资质认证。在技术竞争日益激烈今天,立足国内和日我市场,拓展欧美市场是大连华信国际化发展战略。大连华信将继续提高整体核心竞争力,实现可持续增长,成为国内最先进应用系统服务提供商、系统集成服务提供商和软件外包服务提供商。四、
5、实训内容4.1实训期间完毕学习任务Java是一种可以撰写跨平台应用软件面向对象程序设计语言,是由Sun Microsystems公司于1995年5月推出Java程序设计语言和Java平台(即JavaSE,JavaEE,JavaME)总称。Java 技术具备卓越通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学级超级计算机、移动电话和互联网,同步拥有全球最大开发者专业社群。在全球云计算和移动互联网产业环境下,Java更具备了明显优势和辽阔前景。日后Sun公司被甲骨文公司并购,Java也随之成为甲骨文公司产品。Java是一种软件技术是一种由美国SUN计算机公司所研究
6、而成语言是一种为Internet发展计算机语言是一种使网页产生生动活泼画面语言是一种使网页由静态(Static)转变为动态(Dynamic)语言是一种语言,用以产生小应用程序是一种简化C+语言是一种安全语言,具备阻绝计算机病毒传播功能是一种将安全性列为第一优先考虑语言是一种使用者不需耗费诸多时间学习语言是一种突破顾客端机器环境和CPU构造语言是一种写一次,即可在任何机器上执行语言是有史以来,第一套允使用者将应用程序通过Internet从远端服务器传播到本地端机器上并执行。ORACLE数据库系统是美国ORACLE公司(甲骨文)提供以分布式数据库为核心一组软件产品,是当前最流行客户/服务器(CLI
7、ENT/SERVER)或B/S体系构造数据库之一。例如SilverStream就是基于数据库一种中间件。ORACLE数据库是当前世界上使用最为广泛数据库管理系统,作为一种通用数据库系统,它具备完整数据管理功能;作为一种关系数据库,它是一种完备关系产品;作为分布式数据库它实现了分布式解决功能。但它所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型机器上使用它。重要功能特点一方面完整数据管理功能:数据大量性、数据保存持久性、数据共享性、数据可靠性。完备关系产品:信息准则-关系型DBMS所有信息都应在逻辑上用一种办法,即表中值显式地表达;保证访问准则;视图更新准则-只要形成视图表中数据
8、变化了,相应视图中数据同步变化;数据物理性和逻辑性独立准则。分布式解决功能:ORACLE数据库自第5版起就提供了分布式解决能力,到第7版就有比较完善分布式数据库功能了,一种ORACLE分布式数据库由oracle rdbms、sql*Net、SQL*CONNECT 和其她非ORACLE关系型产品构成。Java Web,是用Java技术来解决有关web互联网领域技术总和。web涉及:web服务器和web客户端两某些。Java在客户端应用有java applet但是当前使用很少,Java在服务器端应用非常丰富,例如Servlet,JSP和第三方框架等等。Java技术对Web领域发展注入了强大动力。J
9、ava EE原则,这意味着有很大市场需求和更多工作机会,上手迅速并且相对容易,有大量可用组件库。对覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理。与许多表达层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF等。便于测试归功于IoC不需要书写XML配备文献,良好学习文档。架构简朴易于扩展,标记库很容易运用FreeMarker或者Velocity来定制,基于控制器或者基于页面导航。一旦学会它,将极大地提高生产率。HTML模板对页面设计师非常有利每出一种新版本,都会有大量创新。对Ja
10、va开发者有利,页面和显示绑定紧密。Java Web其实就是一种技术总和,把Web当作一种容器而已重要使用JavaEE技术来实现.在加上各种中间件(SSH等)JavaWeb其实做什么都可以,你可以通过JavaWeb制作一种软件,一种ERP,一种网页,甚至是一种网络游戏都可以。没有特定范畴。在加上Java可移植性,当前普遍用于各种ERP,大型交互式网站开发。Struts最早是作为ApacheJakarta项目构成某些,项目创立者但愿通过对该项目研究,改进和提高JavaServer Pages 、Servlet、标签库以及面向对象技术水准。Struts这个名字来源于在建筑和旧式飞机中使用支持金属架
11、。这个框架之因此叫Struts,是为了提示咱们记住那些支撑咱们房屋,建筑,桥梁,甚至咱们踩高跷时候基本支撑。这也是一种解释Struts在开发Web应用程序中所扮演角色精彩描述。当建立一种物理建筑时,建筑工程师使用支柱为建筑每一层提供支持。同样,软件工程师使用Struts为业务应用每一层提供支持。它目是为了协助咱们减少在运用MVC设计模型来开发Web应用时间。咱们依然需要学习和应用该架构,但是它将可以完毕其中某些繁重工作。如果想混合使用Servlets和JSP长处来建立可扩展应用,Struts是一种不错选取。初期Smalltalk程序语言便采用了MVC(Model-View -Controlle
12、r) 模式( Patterns ) 以增长程序代码弹性,MVC模式将程序代码整顿切割为三某些,Model 某些是业务与应用领域( Business domain) 有关逻辑、管理状态之对象,Controller 某些接受来自View 所输入资料并与Model 某些互动,是业务流程控制( Flow Control) 之处,View 某些则负责呈现资料、接受使用者输入资料。在Java 应用中,JFC/Swing、AWT、JSP皆是可用作View 技术规格,而JavaBean与Enterprise JavaBean 规格则可用于Model程序代码,一旦应用程序以MVC 模式加以恰当分割,Model
13、某些程序代码可在不同使用者接口外观应用程序中重复使用。随着JSP 与Servlet 技术大量应用于以Web 为基本应用程序,Java 开发人员群体以为应以较佳模式以提高Web 应用程序可维护性与重复使用性。初期JSP 规格书中曾列举两种可行之JSP 应用架构,分别为Model1 与Model 2。在Model 1 架构中,JSP 直接解决Web浏览器送来祈求( Request ),并辅以JavaBean 解决应用有关逻辑。Model 1 架构单纯编写比较容易,但在Model 1 中JSP 也许同步肩负View 与Controller 角色,两类程序代码有也许混杂而不易维护。而Model 2 中
14、将Servlet 纳入架构中扮演前端Controller 角色,将Web浏览器送出祈求集中送至Servlet ,Servlet 可集中管理使用者登入、权限控制、多国语言转换等前置解决,再视需求转向给相应JSP 解决。Model 2 中采用了较佳MVC 模式,但增长了编写复杂度。Spring是一种开源框架,它由Rod Johnson创立。它是为理解决公司应用开发复杂性而创立。Spring使用基本JavaBean来完毕此前只也许由EJB完毕事情。然而,Spring用途不但限于服务器端开发。从简朴性、可测试性和松耦合角度而言,任何Java应用都可以从Spring中受益。Spring是一种轻量级控制反
15、转(IoC)和面向切面(AOP)容器框架。轻量从大小与开销两方面而言Spring都是轻量。完整Spring框架可以在一种大小只有1MB多JAR文献里发布。并且Spring所需解决开销也是微局限性道。此外,Spring是非侵入式:典型地,Spring应用中对象不依赖于Spring特定类。控制反转Spring通过一种称作控制反转(IoC)技术增进了松耦合。当应用了IoC,一种对象依赖其他对象会通过被动方式传递进来,而不是这个对象自己创立或者查找依赖对象。你可以以为IoC与JNDI相反不是对象从容器中查找依赖,而是容器在对象初始化时不等对象祈求就积极将依赖传递给它。面向切面Spring提供了面向切面
16、编程丰富支持,容许通过度离应用业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性开发。应用对象只实现它们应当做完毕业务逻辑仅此而已。它们并不负责(甚至是意识)其他系统级关注点,例如日记或事务支持。容器Spring包括并管理应用对象配备和生命周期,在这个意义上它是一种容器,你可以配备你每个bean如何被创立基于一种可配备原型(prototype),你bean可以创立一种单独实例或者每次需要时都生成一种新实例以及它们是如何互有关联。然而,Spring不应当被混同于老式重量级EJB容器,它们经常是庞大与笨重,难以使用。框架Spring可以将简朴组件配备
17、、组合成为复杂应用。在Spring中,应用对象被声明式地组合,典型地是在一种XML文献里。Spring也提供了诸多基本功能(事务管理、持久化框架集成等等),将应用逻辑开发留给了你。所有Spring这些特性使你可以编写更干净、更可管理、并且更易于测试代码。它们也为Spring中各种模块提供了基本支持。4.2实训期间完毕实践项目依照整个OSS系统进行OTTTV属性页面编辑,该页面功能为对数据添加、修改、删除、查询。4.2.1需求分析随着中华人民共和国加入WTO,人们已经结识到中华人民共和国网络产业已翻过了历史性一页,新一代OSS系统建设在各运营商那里近乎默契同步启动,标志着电信业正在由第一阶段资源
18、竞争转向到第二阶段业务竞争。国内外各电信运营商之间竞争越来越激烈。有些国内电信运营公司尚有一种老式观念就是将发展重点放在电信网络基本设施和网络运营及管理建设上,以资源优势来应对国外资本和公司挑战,但是咱们以为在电信网络基本设施和资源方面恰恰不是竞争焦点,竞争焦点应是电信业务经营和运营。当前,中华人民共和国市场电信运营还没有完全放开,真正意义上虚拟电信运营商尚未产生,当前中华人民共和国OSS市场需求重要以中华人民共和国电信,中华人民共和国移动,中华人民共和国联通,中华人民共和国网通,中华人民共和国铁通等几家大电信运营商为主,关于OSS所有市场行为与市场需求都与运营商关于,中华人民共和国电信运营商
19、成为整个OSS市场源头。由于中华人民共和国电信市场及电信运营商特殊状况,单独OSS产品很难形成单独行销趋势进入整个市场价值链,它必要集成到系统集成商为电信运营商所提供解决方案中去。中华人民共和国OSS系统往往由系统集成商采用项目招投标形式与电信运营商来合伙完毕您将在OSS市场参加者价值链中,找到贵公司位置,发现您市场机会!宽带网建设风起云涌,下一代网络建设雾里看花,多业务多网络融合,电信行业业已拆分,竞争格局已经变化,运营商投资更趋理性,中华人民共和国加入WTO,对电信公司来说,短期弊不不大于利,挑战不不大于机遇,OSS系统建设原则尚未统一。OSS市场份额虽大,与否有人动了你奶酪?OSS在中华
20、人民共和国刚刚起步,OSS在欧美电信业中已经耳熟能详,您所要OSS模型是什么样?Cisco Systems,Nortel Networks,ADC,Agilent Tech等这些你所熟知全球顶尖公司在OSS全球市场中体现如何?成功?失败?一切归于你对竞争对手详尽理解和胜算一步。纵览全球,定位自己,构筑OSS市场竞争优势!据Frost & Sullivan预测,OSS项目市场在此后几年中,会有一种比较明显增幅,并保持一种强有力增长势头,这重要是由于市场业务需求不拟定性使投资持续增长。OSS市场重要问题只有通过更长时间来解决。可以易于实行、广泛接受更好原则将是在将来几年间市场救星。进入当前没有明确
21、领导者市场新厂商将哺育竞争,创造供将来发展更好OSS。我所做是融入到OSS系统中一种功能OTTTV。OTTTV是“Over The Top TV”缩写,是指基于开放互联网视频服务,终端可以是电视机、电脑、机顶盒、PAD、智能手机等等。意指在网络之上提供服务,强调服务与物理网络无关性。通过互联网传播视频节目,如PPS、UUSEE等平台内容传播到显示屏幕(涉及电视)上。从消费者角度出发,OTT TV就是互联网电视,满足消费者需求,集成互动电视功能全功能互联网电视。OTT TV (Over-The-Top TV),即以Over-The-Top 方式服务互联网电视。如在市场上推出Apple TV及Go
22、ogle TV即是此种模式。在国际上,OTT TV指通过公共互联网面向电视传播IP视频和互联网应用融合服务。其接受终端为互联网电视一体机或机顶盒+电视机。在国内,OTT TV是指通过公共互联网面向电视机传播由国有广播电视机构提供视频内容可控可管服务。接受终端普通为国产互联网电视一体机。当前,OTT TV重要有两种实现方式:HTTP渐进下载(HTTP Progressive Download,简称HPD)和HTTP自适应流媒体(HTTP Adaptive Streaming,简称HAS)。老式OTT TV普通采用HPD技术。基于HPD客户端在开始播放之前仅需等待一段较短时间用于下载和缓冲媒体文献
23、最前面一某些数据,之后便可以一边下载一边播放。HPD OTT TV存在诸多局限性,例如:不适合对实时性规定较高直播节目传播;初始播放等待时延普通较长;当网络带宽不稳定期比较容易浮现卡屏现象;由于客户端会持续下载视频文献,当顾客半途放弃节目观看,会导致已下载文献(消耗带宽)挥霍。为了克服HPD OTT TV技术局限性,近年来基于HASOTT TV技术逐渐被业界广泛采用和推广。HAS OTT TV采用视频分片和自适应码率(ABR)技术。在HAS系统中,媒体流分割器将编码器输出视频流分割为一系列持续、长度均等小分片文献,并将它们存储在Web内容分发服务器。HAS客户端设备可在可用带宽基本上,自动向W
24、eb服务器祈求适当视频质量(即不同辨别率和码率)分片文献,从而给顾客最佳视觉体验。为了便于HAS客户端实现不同码率分片之间迅速、实时切换,HAS视频普通采用较短分片长度(例如10秒)。由于HAS系统可向不同屏幕大小终端提供适合辨别率视频分片文献,并可在不同网络带宽状况下实现流畅视频播放,因而HAS被业内以为是将来无所不在多屏互动视频核心技术。4.2.2数据需求分析通过组长规定得出属性E-R图:地市设备序列号otttv_ device区域设备广电号设备厂商设备型号订单号宽带账号创立时间状态描述状态变更时间序号图4-1 OTTTVE-R图4.2.3概要设计4.2.3.1 系统功能构造图整个系统为重
25、庆铁通OSS系统,共有系统管理、销账管理、记录查询、客户服务、产品管理、卡类管理、置业收费、客户管理、施工管理、渠道管理。重庆铁通OSS系统系统管理销账管理记录查询客户服务卡类管理产品管理置业收费客户管理施工管理渠道管理电子工单解决设备重新绑定宽带复机异常解决宽带及时改正OTTTV属性集群异群工单解决延时解决图4-2系统功能构造图我所做页面功能为OTTTV属性,此页面功能为对OTTTV_DEVICE表进行查询、修改、数据导入、删除。功能图如下图 4.3重要功能构造图 OTTTV设备属性模板导出数据导入数据修改数据删除图4.3重要功能构造图4.2.3.2 模块设计查询功能流程图如下图查 询条 件
26、依照条件得到查询信息得到所有信息YYNY图4.4查询功能流程图 修改功能流程图如下图 修 改条 件依照修改得到最后信息修改成功图4.5修改功能流程图 删除功能流程如下图 删 除条 件修改成功图4.6删除功能流程图4.2.4详细设计系统数据库名称为cq_oss,所用到表为otttv_device。表4.1 otttv_device表属性属性类型与否标记长度与否为空序号serial是32否设备广电号varchar(32)否32否设备序列号varchar(32)否32是设备厂商varchar(32)否32是设备型号varchar(32)否32是区域varchar(32)否32是地市varchar(3
27、2)否32否创立时间datetime否20否订单号宽带账号varchar(32)否32是状态变更时间datetime否10否描述varchar(32)否32否状态varchar(2)否2否4.2.5系统实现及编码为了以便调试修改,系统登陆使用公司通用账号,账号拥有所有修改代码权限。页面为我所做OTTTV属性页面,该页面有修改、删除、导出模板、导入数据等功能。图4.7配备菜单页面图重要代码:Javascript某些:function reset()document.forms0.SNO.value=;document.forms0.NUMBER.value=;var chkArr = docum
28、ent.getElementsByName(NUMBER1);var size = chkArr.length;for(var i = 0;i size;i+) if(chkArri.checked = true )chkArri.checked=false; function query() document.forms0.operationType.value = query; document.forms0.currentPage.value = 1; document.forms0.submit();function create() document.forms0.operation
29、Type.value = create; document.forms0.submit(); function edit()if(checkedForEDIT() document.forms0.operationType.value = edit; document.forms0.submit(); function del() if(!checkSelect(arrayID) alert(请先选取记录!); return; if(!statusValidate() alert(有效状态记录不容许删除,请重新选取!); return; if(confirm(与否确认删除?) document
30、.forms0.operationType.value = delete; document.forms0.submit(); function checkedForEDIT()var the_form=document.forms0;var selectCount=0; var objLen = the_form.length;var chkArr = document.getElementsByName(arrayID); var size = chkArr.length; for(var i = 0;i size;i+) if(chkArri.checked = true & chkAr
31、ri.id !=checkall) selectCount+; if (selectCount=0)alert();return false;else if(selectCount=2)alert();return false;return true; function onLoad() if(document.forms0.operationType.value = inUse) alert(); document.forms0.standardCode.value=; document.forms0.name.value=; document.forms0.operationType.va
32、lue = query; document.forms0.currentPage.value = 1; document.forms0.submit(); else if(document.forms0.operationType.value = notSelect) alert(); function statusValidate()var arrayIDs=document.getElementsByName(arrayID);for(var i=0;iarrayIDs.length;i+)if(arrayIDsi.checked)var tr=arrayIDsi.parentElemen
33、t.parentElement;var status=tr.cells12.innerHTML;var pos = status.indexOf(1); var pos1=status.indexOf(2); if(pos != -1|pos1!=-1) return false;return true;function downloadMold() document.forms0.operationType.value=exportExcelModel;document.forms0.submit(); function save()var url=/otttv/otttvSave.jsp;
34、var l=window.screen.width ; var w= window.screen.height; var al=l/2-200; var aw=w/3-100; var opt = toolbar=no,location=no,directories=no,status=no,menubar=no, scrollbars=yes,resizable=yes,width=400,height=200+,top=+aw+,left=+al+;window.open(url,otttvSaveWin,opt);重要Table:序号设备广电号设备序列号设备厂商设备型号区域地市创立时间号
35、码类型号码状态状态状态变更时间描述td align=center class=list_rb title= td align=center class=list_rb title= td align=center class=list_rb title= td align=center class=list_rb title= td align=center class=list_rb title= td align=center class=list_rb title= td align=center class=list_rb title= td align=center class=list_rb title=