《本科生毕业设计(论文)开题报告《移动存储同步备份软件设计与实现》.docx》由会员分享,可在线阅读,更多相关《本科生毕业设计(论文)开题报告《移动存储同步备份软件设计与实现》.docx(49页珍藏版)》请在优知文库上搜索。
1、XX理工大学本科生毕业设计(论文)开题报告学院:软件学院专业:软件工程班级:XXXXXX姓名:XXX指导教师:XXX校外指导教师:二OXX年一月十八日姓名XXX学号XXXX班级XXXXXX专业软件工程导师XXX校外导师(职称)校外导师单位论文选题题目名称移动存储同步备份软件设计与实现题目性质软件开发(J)理论研窕()题目来源结合科研()结合生产实际()结合实验室建设()自拟题目()评审组成员姓名职称工作单位及职务签字评审意见(含:选题意义;选题是否满足毕业要求:技术方案是否可行:进度安排是否合理等)成绩评审组长签字:年月日注:成绩以“合格”“不合格”记:评审组长为高级职称人员。选题为移动存储同
2、步备份软件设计与实现。目标是设计与实现一个移动同步存储软件,实现文件夹内容的实时同步。2.研究方案2. 1本选题的隹要I任务J批注Z3J:宋体,四号,段落前后0.5行一、实现将两个文件夹内的文件内容进行分析。二、设计文件过滤系统。三、可选择的让两个文件夹的内容保持一致。四、实现硬盘与网盘,移动存储设备之间的可自由选择的单向同步,双向同步。五、实现可指定计划压缩备份,加密备份,多重备份,周期备份功能。六、有完成的日志记录及更改内容报表。七、设计与实现软件的界面。_2.2技术方案的分析、隗择I批注I:此部分要分析任务书并给出初步方案要采用node,js实现文件监控,以及软件的实现与封装,使用Rsy
3、nc体现出复杂软件系统的概念,约写二页算法实现文件同步,采用node,js实现网络传输,后台使用Java。云存储。2. 3实施技术方案所需I的医住/1批注IZ5J:此部分说明所需的软硬件环境.需要搭建node,js环境。移动存储设备,以及云端的配置。2.4 存在的主要问题和技术关键目前存在的住要问题!送”批注Z6J:正文,小四,行距22唠一、不热悉node,js,RSynC算法,需要学习然后开始设计实现软件。二、对可选择的单向同步与双向同步的实现还没有想好解决方案。三、对周期备份的实现还没有想好解决方案。四、对于文件过滤系统的实现还没有想好解决方案。2.5 预期能够达到的帧究怛屋二批注力要包括
4、最后提交的成果能够设计并实现文件过滤系统,以及用node,js生成运行在windows平台和安卓平台的移动同步存储软件。3.课题计划进度表时间工作内容寒假期间项目调研,确定解决方案。2024.3.1-2024.4.1学习node.js和云端的使用2024.4.1-2024.5.1实现文件过滤系统和文件监控系统2024.5.1-2024.6.1编写代码,实现软件并测试。2024.6答辩Il4. 峰考文就J批注亿引:近5年内文献经典文献除外外文翻译要求外文资料应与课题相关,且在3年以内,内容应相对完整,不要取长论文的部分段落.基于Hadoop的文件同步存储系统的设计与实现-XXX.基于Androi
5、d平台的云盘客户端的设计与实现_XXX基于云存储的网盘客户端的设计与实现_XXX开题答辩用PPT内容安排首页课题名称、姓名、导师第1页:课题的主要内容第2页:课题任务第4N页:技术方案第N+1页:存在的主要问题和技术关键笫N+2页:预期目标第N+3页:研究进度毕业设计(论文)应支撑毕业要求的指标点(加粗的为高支撑顼)1 .能够了解软件及相关行业的政策和法律法规.(71)2 .能够了解国内外行业标准、规范和技术发展趋势.(7.2)3 .能够掌握并应用一门外语,具有跨文化交流和沟通能力.(10.3)Ill4 .能够了解应用领域背景知识,完成复杂软件系统的需求分析.(6.1)5 .能够用形式化模型和
6、文档等形式呈现软件系统解决方案和成果.(5.5)6 .能够运用恰当工具阐述工作成果,并与业界同行进行有效沟通与交流.(10.2)7 .能够采用适当的方法评价工程实钱对社会、健康、安全、法律以及文化的影响,并理解应承担的责任.(6.4)8 .能够理解软件工程实践和复杂软件工程问题对环境以及社会可持续发展的影响.(73)9 .能够具备进行一定科学研究的能力.(4.4)10 .能够运用科学的学习方法,管理知识和处理信息,做到学以致用.(12.3)IV第1章绪论1第2章开发环境和关键技术32.1 软件开发环境32.2 采用的技术3第3章需求分析43.1 产品功能概述43.2 客户端43.3 服务端53
7、.4 用户类和特征63.5 运行环境63.6 外部接I63.6.1 用户界面63.7 软件接口63.8 其他非功能性需求73.8.1 用户界面要求73.8.2 软硬件要求73i813产品质量要求73.8.4 其他要求8第4章设计94.1 概念94.1.1 工作区、暂存区、本地仓库、远程仓库94.1.2 快照114.1.3 数据库中存储的数据内容124.1.4 暂存区134.1.5 文件状态134.1.6 Add&Commit&Svnc144.2 SYNC144.3 前端154.4 备份(COMMIT)164.5 系统页面时序图164.6 页面获取本地文件,同步时序图177文件备份时序图18第5
8、章实现195.1 CORoDVA应用的介绍195.2 CoRDoVA本地文件目录以及本地文件处理195.2.1 请求文件系统201.1.1 2.1FiIeEmrV对象211.1.2 DireCtOrVEntrV对象221.1.3 FiIeReader对象221.1.4 FiIeWriter对象225.3 前端实现235.3.1 AmaZeUl23532登录页面23533文件系统主页面235.4 备份页面245.4.1 DealWithPae.is前,端处E逻,t245.5 本地文件处理Fiiedeaierjs25Vl5.5.1 新建文件目录I新建文件I查询文件最新修改时间255.5.2 杳看指
9、定目录包括其子目录下的所有文件255.5.3 查看指定目录下的文件或文件夹265.5.4 上传文件到服务器265.5.5 写入文件到本地285.5.6 读取文件内容285.5.7 删除本地文件295.6 同步的实现295.6.1 同步流程图295.6.2 眼务器端(远程仓库)地址315.6.3 获取远程仓库的文件版本315.6.4 对本地文件仓库版本的控制315.6.5 获取远程仓库文件列表315.6.6 同步325.7 文件备份的实现325.8 服务器端的实现335.8.1 跨域处理335.8.2 处理上传文件请求335.8.3 远程仓库的版本控制34第6章测试356.1 测试环境356.2
10、 功能测试35Vll第1章绪论在移动智能终端快速发展的情况下,移动终端的同步存储问题已经成为人们的重要课题。为了实现能够在多个终端上处理文件,移动同步存储系统出现了。伴随而来的网盘,云同步盘,云计算等技术。但是网盘与移动存储同步(简称为同步盘)还是有很大不同的。网盘,功能是给用户提供文件存储,上传,下载,分享等功能。但是大部分网盘并不能很好的解决文件同步问题。或者说网盘和文件同步并不是同一个概念。网盘和同步盘是不同的概念。网盘提供的服务更像是一个存储东西屋子,你可以在网盘中放各种各样的文件,你并不需要将文件放在自己的设备上,而且网盘中的文件非常方便获取,只要我们的设备拥有网络访问功能,就可以随
11、时随地的访问我们存在网盘中的文件。另外还有一个同步盘的概念,同步盘可以理解成网盘加上同步工具,用户使用同步盘的目的是为了协调多个设备的工作,可以使工作更顺利的完成,而且同步盘以及同步工具需要有版本控制的功能,方便用户恢复文件,以及备份功能,使得用户的文件得到很好的保护,以及对于文件版本的管理功能。网盘可以想象成一个独立存东西的空间,而同步盘则可以想象为一个通道,使得通道两端的文件内容版本保持一致。文件同步问题是一个比较复杂的问题。在设计本系统时,我们借鉴Git的思路。它不比较文件差异,而是把data看作是对filesystem的一组snapshoto每次你Commit文件UPdate,或者在保
12、存PrOjeCtState时,它要进行的工作是将文件做一个备份也就是Sn叩ShOt并保存这个SnaPShOt的hash(索引如果file没有change,它不再处理该文件系统,而是只save一个指向之前保存的文件系统的索引。如果与前一个fileedition比较文件结果不同,则将新文件(SnaPShOt)写入到下一个fileedition中。如果对比结果没有差异,则不做任何处理。Git主要利用的是本地device的计算能力,在Git中的大部分的处理逻辑基本上都是与本地file相关的,很少发起与网络相关的请求。所有数据在SaVe时都会计算散列校验和,利用这个校验和来作为引用。这样就可以很。计算散
13、列校验和hash功能建构在Git底层非常重要的环,是不可或缺的。若你在传送过简单的知道文件是否被修改以及程序运行中丢失信息或损坏文件它大部分情况下会增加数据。它有三种state:分别表示文件的不同状态,用来进行相应的处理。提交完成、修改过和在暂存目录中。提交完成的数据已经被存储在版本控制的本地仓库中。修改后的文件会分布在工作目录和暂存目录中。在暂存目录中表示文件的修改并没有被写入新的版本快照。基本的工作顺序是,1.在工作目录中处理修改文件,2.保存文件到暂存目录,将文件的SnaPShOt放入暂存目录中。mit,找到暂存目录中的文件,将SnaPShOt保存到版本控制的本地仓库中。4.push,将
14、本地仓库与远程仓库同步。论文研究内容为:实现android手机和平板,电脑,云端文件同步与备份。设计与实现一个跨平台的混合移动应用:移动同步存储软件,实现文件夹内容的实时同步。并实现将两个文件夹内的文件内容进行分析,可选择性的让两个文件夹内容保存一致。协助个人用户实现硬盘之间,硬盘与移动存储设备之间,硬盘与网盘之间的备份与同步。功能上要求可自由选择部分单向双向同步,设计文件过滤系统,要有完整的日志记录及更改内容报表,可以压缩备份、加密备份,多重备份。可以指定备份计划,做到定时和周期同步备份。论文结构如下:第一章为绪论,主要用来介绍本文的选题背景与研究现状,并对应用的实现做了简要阐述。第二章为开发环境和关键技术。第三章为需求分析。第四章为系统的设计。第五章为系统的实现。第六章为系统的测试。第七章为系统引用的资料。第八章为鸣谢。第2章开发环境和关键技术2.1 软件开发环境运行平台:android手机和windows8系统。开发环境:WindoWS系统,SUbIime文本编辑器,ChrOme浏览器,Myeclipse,tomcat,github项目代码托管。2.2 采用的技术开发语言:html5,css,javascript(客户端),java