05软件项目国标文档模板-概要设计说明书GB8567——88资料.doc_第1页
05软件项目国标文档模板-概要设计说明书GB8567——88资料.doc_第2页
05软件项目国标文档模板-概要设计说明书GB8567——88资料.doc_第3页
05软件项目国标文档模板-概要设计说明书GB8567——88资料.doc_第4页
05软件项目国标文档模板-概要设计说明书GB8567——88资料.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

概要设计说明书姓名:王金辉学号:2012150001日期:2015.04.221引言21.1编写目的21.2背景21.3定义21.4参考资料22总体设计22.1需求规定22.2运行环境22.3基本设计概念和处理流程32.4结构32.5功能器求与程序的关系32.6人工处理过程32.7尚未问决的问题33接口设计33.1用户接口33.2外部接口33.3内部接口44运行设计44.1运行模块组合44.2运行控制44.3运行时间45系统数据结构设计45.1逻辑结构设计要点45.2物理结构设计要点45.3数据结构与程序的关系46系统出错处理设计56.1出错信息56.2补救措施56.3系统维护设计5概要设计说明书1引言1.1编写目的说明编写这份概要设计说明书的目的,指出预期的读者。当今社会有很多交友软件,存在很多不安全因素,很容易泄露用户信息。而且,没有提供近距离的交友平台。很多同学对上课有厌烦心理,借助这款交友,同学们可以在课余时间,与他人交流,提高上课的乐趣和积极性。现在在一个班级上课的同学都不认识,很不方便学术的交流,所以,应提供同班同学交流认识的平台。1.2背景说明:a. 待开发软件系统的名称;b. 列出此项目的任务提出者、开发者、用户以及将运行该软件的计算站(中心)。a:Secretb:项目任务提出者,梁正平老师。开发者,王金辉也即本人用户:深圳大学周边人群。计算中心或则网络:本人电脑搭建的服务器。C与其他的系统或则机构暂无来往,参考微信手机客户端的实现。1.3定义列出本文件中用到的专门术语的定义和外文首字母组词的原词组。.apk file大意:扩展名为apk的文件是Android应用程序包,每一个Android应用程序包含的所有代码、资源和清单文件都被编译并打包成一个文件,这个文件的名字可任意取,但扩展名必须是.apk。例如,可以取名为myExampleAppname.apk。为了方便起见,一个Android应用程序包文件经常被称之为一个apk。.dex file大意:Android应用程序代码最终将会被编译成一个扩展名为dex(Dalvik Executable)的文件,我们所编写的java文件会自动地被编译成dex文件。Action大意:Action是对Intent发送者所发送的intent(意图)的一种描述。Action是被分配给intent的一个字符串。Action可以由Android系统定义,也可以由第三方开发人员定义。例如,对于一个网页URL使用ent.action.VIEW,或者在一个定制应用中使用com.example.rumbler.SHAKE_PHONE使手机震动。Activity大意:Activity在应用程序里表现为一个“屏幕”,或应用程序的其中一个界面。通常,Activity是可见的、全屏的窗口,它可以处理UI事件、执行复杂的任务。虽然Activity通常是全屏的,但也可以设置使其浮动或透明。adb大意:adb是Android Debug Bridge的简写,即Android调试桥,它是Android SDK中自带的一个命令行调试应用程序。它所提供设备浏览工具、设备上的拷贝工具和为调试转寄端口的功能。如果你是在Eclipse下使用ADT插件进行开发,adb已经集成到你的开发环境中了。Application大意:从组件的角度来看,Android应用程序是由一个或多个Activity、Service、Listener和Intent receiver组成;从资源文件的角度来看,Android应用程序是由Java代码、xml资源文件、多媒体资源(音频、视频、其它文件等)和一个文件清单组成。在编译过程中,这些文件被打包成一个单一的叫做应用软件包的文件中(.apk)。Content Provider大意:Content Provider是一个数据抽象层,通过它你可以安全地将你应用程序中的数据暴露给其它的应用程序。Content Provider构建在ContentProvider类之上,它负责处理指定格式的查询串,并以指定的格式返回数据。Dalvik大意:Dalvik是Android平台的虚拟机。Dalvik是一个只能解释执行dex文件的虚拟机,dex文件针对存储性能和内存管理进行了优化。Dalvik是基于寄存器的虚拟机,并且能够运行经过Dalvik自带的“dx”工具转换过的Java类。虚拟机运行在兼容Posix的操作系统上,依赖于底层的功能(如线程和低级内存管理)。Dalvik的核心类库有意做得与Java标准版非常类似,但它明显更适合小型移动设备。DDMS大意:DDMS即Dalvik Debug Monitor Service,它是SDK自带的一个图形化的调试工具,它提供了屏幕捕捉、日志存储和进程检测的能力。如果你在Eclipse中使用ADT插件进行开发,那么DDMS已经被集成在你的开发环境中了。Dialog大意:Dialog通常以一种轻量级的浮动窗口形式呈现,一个Dialog可以只包含一个用于执行简单动作的按钮(如按钮选择)。Dialog并不会被持久存储在历史栈中。所有对话框类的基类是Dialog。Drawable大意:Drawable是经过编译的可视化资源,可以用于背景、标题或屏幕的其他部分。典型的情况,drawable被装载到另外一个UI元素中,例如将drawable作为背景图片。drawable不能够接收事件,但可以分配不同的其它属性,如“状态”。许多drawable对象是从描述图片的xml资源文件或位图文件中加载得到的。Drawable资源被编译到android.graphics.drawable的一个子类中。Intent大意:Intent是一个消息对象,你可能通过intent启动其它应用程序或其它Activity,或者通过intent与其它应用程序或Activity进行异步交流。Intent对象是Intent的一个实例,它包含了许多方面:您能提供什么、确定应用程序或Activity收到的意图以及处理intent时接受者做什么处理。Intent包括:预期执行的动作(action)、动作类别(category)、数据(data)、数据类型(MIME Type)、处理类等。一个应用程序发送一个意图给Android系统,而不是直接给发送给其它应用程序或Activity。应用程序能够将意图发送给目标应用程序或者将意图作为一条广播发送,该广播能够被许多应用程序轮流处理。根据其它应用程序定义的意图过滤器,Android系统负责解决:对于每一个意图,哪一个意图接收器最适合。Intent Filter大意:应用程序的Intent Filter(意图过滤器)声明在Manifest文件中,它用于告诉系统应用程序的组件愿意接收哪种类型的意图。通过Intent filter,应用程序能够表达出对哪些指定的数据类型、意图的行为、URI格式等感兴趣。当要解决某个意图,系统会对所有应用程序的全部意图过滤器进行评估,然后将意图传递给最匹配的应用程序的Activity。Broadcast Receiver大意:Broadcast Receiver是一个用于接收应用程序广播(不是发送给应用程序的Activity)的类。系统将广播发送给所有对此广播感兴趣的广播接收器,这些广播接口器会按顺序处理该意图。Layout Resource大意:布局资源是一个用于描述屏幕布局的xml文件。Manifest File大意:清单文件是每一个应用程序都必须定义的xml文件,它用于描述应用程序的包名、版本、组件(Activity、intent filters、Services等)、引用的类库等。Nine-patch / 9-patch / Ninepatch image大意:*.9.png是一种尺寸可变的位置资源,它可以用于背景图片或在设备上显示的图片。OpenGL ES大意:你可以使用Android提供了OpenGL ES类库处理快速、复杂的3D图像。它比Canvas对象的使用要难一些,但更适合3D应用。android.opengl和javax.microedition.khronos.opengles两个包暴露了OpenGL ES的功能。Resources大意:资源可以理解为应用程序的“非编程”组件,即并不是通过编写代码产生的。但应用程序代码可以使用特定的引用格式来使用资源。Android系统支持大量的资源类型,最为典型的应用程序资源主要由UI字符串、UI布局组件、图像及其它媒体文件等组成。Android应用程序使用资源来有效地支撑本地化和各种各样的设备,对于不同的手机屏幕大小、屏幕方向(横竖屏)都可以设置相应的资源。Service大意:Service运行在后台(无需任何UI界面)以开展许多持久的活动,例如:播放音乐或者监测网络的活动。Theme大意:Theme是一系列定义多种默认显示设置的参数(文字大小、背景颜色等)。Android系统在R.style中提供了一些标准的主题(以Theme_开头)。URIs in Android大意:Android使用URI字符串作为基本的数据请求(例如检索联系人列表)和动作请求(例如在浏览器中打开一个页面)的方式。URI字符串可以具有不同的格式,但所有请求数据的URI都必须以“content:/”开头。有效的动作URI字符串会被设备上的适当的程序处理,例如,以“http:/”开头的URI字符串会被浏览器处理。View大意:View是绘制在手机屏幕上的一块矩形区域,它能够处理点击事件、键盘事件和其它交互事件。View是大多数组件的基类,如文本框、对话框等。Viewgroup大意:ViewGroup是包含一系列view的容器对象。ViewGroup负责决定它里面包含的view显示在什么位置、占用的大小,以及在适当的时候调用每个view的方法来绘制它们自己。有些ViewGroup是不可见的,它们仅仅用于布局,但有些ViewGroup又有固定的UI,例如滚动的列表框组件。所有的ViewGroup都继承了ViewGroup类,并且位于android.widget包下。Widget大意:Widget即组件,它是一系列View子类(UI组件、布局等)的集合,例如文本框或弹出菜单。Widget要负责测量和绘制它本身,并且还要对屏幕事件做出反应。所有的Widget都位于android.widget包下。Window大意:在Android应用程序中,我们并不会实现或直接使用Window这个类,它是一个抽象类。我们通常都是使用实现了Window类的Dialog和Activity类生成一个窗口(Window)。1.4参考资料列出有关的参考文件,如:a. 本项目的经核准的计划任务书或合同,上级机关的批文;b. 属于本项目的其他已发表文件;c. 本文件中各处引用的文件、资料,包括所要用到的软件开发标准。列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。参考:陌陌,微信,米聊各种社交工具参考界面的设计,以及一些系统内部类关系,功能,模块,如何分类的问题。接着是一些书籍:参考文献 1 Android A Programmers Guide . Jerome (J.F.) DiMarzio DOI:10.1036、 0071599886 2 林城. Android 2.3 应用开发实战J . 机械工业出版社,2011:17-321.3 韩超. Android经典应用程序开发J . 人力资源出版社,2011:5-18. 4 (美)Cay S. Horstmann,Gary Cornell. Java核心技术J. 机械工业出版社, 2008:15-17. 5 刘卫国,姚昱禹. Android与J2ME平台间即时通信的研究与实现J. 中南大 学 信息科学与工程学院. 2008年12期:118-120. 6 刘平. Android手机访问服务器的一种数据交互方法J . 西安财经学院 网络 与现在教育技术中心,2010-09:96-102. 7 刘玉平. Java输入输出流及在网站开发中的应用探讨J. 郴州市科技局, 2009,(18):35-49. 8 赵亮,张维. 基于Android技术的界面设计与研究D . 徐州:徐州建筑职业 技术学院, 2001. 9 陈璟,陈平华,李文亮. Android内核分析J . 广东工业大学计算机学院 实践 与经验,2009:112-115. 10 刘卫国,姚昱禹. Android的架构与应用开发研究J . 中南大学:信息科学 与工程学院 计算机系统应用 2008-11:110-112. 11 张海藩. 软件工程导论(第4版)J. 北京:清华大学出版社,2006:34-38. 12 邝孔无,王晓敏. 信息系统分析与设计(第三版)M. 清华大学出版社, 2006:23-26. 13 亢勇,陈自力,李鹏,路平. 面向对象的软件测试J. 测试技术学报, 1999,(02):15-23. 14 何玉洁. 数据库原理与应用教程M. 机械工业出版社,2005.12 15 KEN ARNOLD,JAMES GOSLING,DAVID HOLMES: JAVA PROGRAMMING LANGUAGE M,POSTS & TELECOM PRESS,2006:231-235. 16 JOHN LEWIS: JAVA SOFTWARE SOLUTIONSM. PUBLISHING HOUSE OF ELECTRONICS INDUSTRY,2007:134-140.2总体设计2.1需求规定说明对本系统的主要的输入输出项目、处理的功能性能要求,详细的说明可参见附录C。数据项说明输入格式是否必填账号用户用于登陆的身份文本是密码用户自定义设置的文本是服务器ip不同服务器ip不同文本是服务器端口号端口号一般为5222文本是好友名称用于查找好友,进行添加的作用文本是2.2运行环境简要地说明对本系统的运行环境(包括硬件环境和支持环境)的规定,详细说明参见附录C。Window 8Openfire服务器Spark电脑客户端Secret手机客户端程序设备一:联想Z4801设备2:华为荣耀62.3基本设计概念和处理流程说明本系统的基本设计概念和处理流程,尽量使用图表的形式。系统设计模型概览系统设计类图: 系统组件图2.4结构用一览表及框图的形式说明本系统的系统元素(各层模块、子程序、公用程序等)的划分,扼要说明每个系统元素的标识符和功能,分层次地给出各元素之间的控制与被控制关系.2.5功能器求与程序的关系本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:程序1程序2程序n功能需求1功能需求2功能需求n程序1程序2程序n功能需求1功能需求2功能需求n2.6人工处理过程说明在本软件系统的工作过程中不得不包含的人工处理过程(如果有的话)。暂无。2.7尚未问决的问题说明在概要设计过程中尚未解决而设计者认为在系统完成之前必须解决的各个问题。这个项目在考虑的过程中,主要考虑了聊天,圈子功能的实现,其他的功能暂时处于未实现阶段。3接口设计3.1用户接口说明将向用户提供的命令和它们的语法结构,以及软件的回答信息。命令语法信息正确信息错误确定按钮点击点击功能成功点击功能失败取消按钮点击取消功能成功取消功能失败登录按钮点击进入系统重新登录注册按钮点击注册成功注册失败删除按钮点击删除成功删除失败3.2外部接口说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持软件之间的接口关系。硬件接口:手机键盘,手机摄像头,手机触摸屏。软件的接口(Asmack ):建立连接XMPPConnection类用来建立到XMPP服务器的连接。要建立SSL连接,要使用SSLXMPPConnection类。下面是建立连接的例子:/建立一个到服务器的连接。XMPPConnectionconn1=newXMPPConnection();/通过一个特殊的端口建立一个到服务器的连接。XMPPConnectionconn2=newXMPPConnection(,5222);/建立一个到服务器的SSL连接。XMPPConnectionconnection=newSSLXMPPConnection();一旦您建立了一个连接,您必须通过方法XMPPConnection.login(Stringusername,Stringpassword)使用用户名和密码登陆。如果登陆成功,您可以通过创建新的Chat或GroupChat对象和其它用户聊天。操作RosterRoster能够让您跟踪其它用户的有效性(存在)。您可以通过使用像“朋友”和“同事”这样的组来组织用户,这样您可以发现每个用户是否在线。使用XMPPConnection.getRoster()这个方法得到Roster。通过Roster类您可以找到所有Roster登陆、他们所属的组以及每个登陆当前的存在状态。读写Packet从客户端以XML格式发送到XMPP服务器的每个消息被称为一个“packet”。org.jivesoftware.smack.packet包中包含了一些类,这些类封装了XMPP所允许的三个不同的基本packet类型(message,presence,和IQ)。像Chat和GroupChat这样的类提供了更高类别的构造能够自动地创建和发送packet,但是您也可以直接创建和发送packet。下面是一个通过改变您的presence来让别人知道您已无效,已经outfishing了:/创建一个新的presence.传入false以指示我们已经无效了Presencepresence=newPresence(Presence.Type.UNAVAILABLE);presence.setStatus(Gonefishing);/发送packet(假设已经有了一个名为con的XMPPConnection实例).con.sendPacket(presence);Smack提供两种方法读取收到的packet:PacketListenerpacket监听器和PacketCollectorpacket收集器。二者都是使用PacketFilter实例来决定哪个packet应该被处理。packet监听器用于事件样式的编程,而packet收集器有一个可以做轮询和阻塞操作的packet的结果队列。所以,当您想对一个有可能随时到来的packet采取一些操作时,使用packet监听器;而当您想等待一个特别的packet到来时,使用packet收集器。您可以使用XMPPConnection实例创建packet收集器和监听器。3.3内部接口说明本系统之内的各个系统元素之间的接口的安排。4运行设计4.1运行模块组合说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运行所历经的内部模块和支持软件。用户类型登录注册修改管理员能能能用户能能能4.2运行控制说明每一种外界的运行控制的方式方法和操作步骤。触控屏:输入密码和用户名,验证码等等。用手点击手机虚拟键盘(触控屏)从而能够达到数字英文的输入4.3运行时间说明每种运行模块组合将占用各种资源的时间。响应时间:10秒内更新时间:10秒内信息提交时间:10秒内5系统数据结构设计5.1逻辑结构设计要点给出本系统内所使用的每个数据结构的名称、标识符以及它们之中每个数据项、记录、文卷和系的标识、定义、长度及它们之间的层次的或表格的相互关系。、学生学号 char(10)姓名 char密码 char性别 int联系人用户id int联系人id int添加时间 datetime添加地点位置当前地点 char选择说说用户id int说说时间 Datetime说说内容 char添加5.2物理结构设计要点给出本系统内所使用的每个数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论