J2ME个人通讯录管理程序.doc
《J2ME个人通讯录管理程序.doc》由会员分享,可在线阅读,更多相关《J2ME个人通讯录管理程序.doc(27页珍藏版)》请在沃文网上搜索。
1、J2ME课程设计报告J2ME个人通讯录管理程序专 业: 计算机科学与技术 班 级: 06级应用2班 组 号: 200601 指导教师: 汤蓉 二00九年 十二 月 二十 日摘要1)介绍项目意义背景。此个人通讯录管理程序的编写,有利于用户通过手机来管理通讯录,方便用户对通讯录进行增加、删除以及对所需的信息进行快速地查询,满足快节奏、高效率的现代生活的需求|。该应用程序采用RMS(记录管理系统)存储机制存储数据,满足一般通讯录的使用需求。2)本文作的主要工作:(1)从软件工程的角度,流程化的记录了该项目的完成过程。(2)从程序开发者的角度,记录了程序的开发过程,便于以后项目的更改和维护。(3)从用
2、户的角度,分析了软件进展情况,方便用户的阅读和使用。3)本文组织 第一章 前言第二章 需求分析第三章 概要设计第四章 详细设计第五章 源代码及可执行程序第六章 特殊问题解决方法第七章 使用说明及测试结果第八章 结论目 录1.前言11.1编写目的11.2背景11.3定义12.需求分析22.1任务概述22.1.1方案选择22.1.2目标22.2用户的特点22.3开发进度时间安排22.2需求规定32.2.1对性能的规定32.2.1.1精度32.2.1.2时间特性要求32.2.2输入输出要求32.2.3数据管理能力要求32.2.4故障处理要求42.3运行环境规定42.3.1设备42.4其他42.4.1
3、42.4.253.概要设计53.1系统用例图(主要功能)53.2接口设计73.2.1用户接口73.2.2外部接口83.2.2.1软件接口83.2.2.2硬件接口83.2.3内部接口83.3运行设计83.3.1运行模块组合83.3.2运行控制83.3.3运行时间93.4系统数据结构设计93.5系统出错处理设计93.5.1出错信息93.5.2补救措施103.5.3系统维护设计104.详细设计104.1系统详细设计与框图104.2 设计主 iBook类114.3数据模型部分的设计124.4界面设计135.源代码(关键部分)156.特殊问题解决方法206.1.问题1206.1.1 问题描述206.1.
4、2 解决方案216.1.3 解决结果216.2.问题2216.2.1 问题描述216.2.2 解决方案216.2.3 解决结果217.使用说明及测试结果217.1.使用说明217.2.测试结果228.结论22231. 前言 1.1编写目的说明编写这份软件需求说明书的目的,指出预期的读者。1) 定义软件总体要求,作为用户和软件开发人员之间相互了解的基础。 2) 提供系统初步设计和对用户影响的信息,作为软件人员进行软件结构设计和编码的基础。 3) 作为软件总体测试和项目验收的依据。预期的读者 项目开发人员,最终用户。1.2背景说明:a 待开发的软件系统的名称:个人通讯录管理程序b 本项目的 提出者
5、 汤蓉 开发者 200601钱思成小组 用户 使用支持java扩展程序手机的个人用户c 该软件系统同其他系统或其他机构的基本的相互来往关系:需要支持java2.0扩展的手机平台。1.3定义l MIDP(Mobile Information Device Profile):移动信息设备框架l RMS (Record Management System) :记录管理系统l MVC(Model-View-Controller):模型-视图-控制器2. 需求分析2.1任务概述2.1.1方案选择1.功能方案在比较前人的方案和现可选方案后,发现对于手机存储数据方面大多采用RMS(记录管理系统),这种存储机
6、制被视为一种简单的面向记录的数据库模型。由于它的高效,快捷,和使用的普遍性,所以本应用程序使用RMS来管理和解释数据。2.技术方案主要考虑代码的框架问题。可选方案有二:一是普通框架,按功能模块划分程序代码,二是采用MVC模式,将视图,模型分离的方式控制程序运行。 考虑到该程序包含较多的界面,为了方便的实现界面的导航,同时为了便于代码的分工和面向对象的思想,所以选择了现在较为流行的MVC模式开发。2.1.2目标此个人通讯录管理程序的编写,有利于用户通过手机来管理通讯录,方便用户对通讯录进行增加、删除以及对所需的信息进行快速地查询,满足快节奏、高效率的现代生活的需求|2.2用户的特点熟练的进行手机
7、操作,能使用一般手机程序。2.3开发进度时间安排第10周完成任务书并开始软件的初步设计第10-12周完成需求分析报告并进入代码实现阶段第12-14周概要设计报告,继续进入代码实现主要阶段并同步进入测试阶段第15周完成该软件的开发工作,并完成总报告2.2需求规定 2.2.1对性能的规定2.2.1.1精度说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度。输入的姓名的长度 小于20个字节移动电话号码 大于11位整数固定电话 大于8位整数 Email 要求符合email格式2.2.1.2时间特性要求a 响应时间:能在一般手机平台上达到小于1s的相应时间2.2.2输入输出要求输入的姓名的
8、长度 小于20个字节,支持中文,英文,数字,字符混和。如: 风中aik2009移动电话号码 大于11位整数 如: 1380138000固定电话 大于8位整数 如: 85964131Email 要求符合email格式 如:aik 2.2.3数据管理能力要求说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作出估算。能存储和管理最多200条记录2.2.4故障处理要求出现下列bug一定更正。A 出现手机死机bug。B 出现数据显示出错,C 不能按照预定的规定进行操作,或操作出错D 以上未列出的,但严重影响系统功能的bug。2.3运行环境规定2.3.1设备实际
9、运行终端手机 :索爱W800及其系列。虚拟调试:JAVA虚拟机。2.4其他2.4.1工作时序图图12.4.2系统的部分静态类图图23. 概要设计3.1系统用例图(主要功能)如图3-1所示:图3-1 系统用例图3.2接口设计3.2.1用户接口在用户界面部分,根据需求分析的结果,用户需要一个用户友好界面。在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要的以及出错信息。如下图为系统欢迎界面(图3-2-1)。 图3-2-1 欢迎界面如下图为系统主界面(图3-2-2) 图3-2-2 系统主界面3.2.2外部接口3.2.2.1软件接口 数据导出:个人通讯信息导出成备份文本信
10、息格式。3.2.2.2硬件接口 1) 键盘(输入设备)2) 屏幕(输出设备)3.2.3内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。3.3运行设计3.3.1运行模块组合1) 输入数据用到的模块:连接数据库模块;验证数据模块;存储数据模块2) 查看数据用到的模块:连接数据库模块;调用数据模块3) 控制器用到的模块:界面向控制器提交请求的模块;控制器接受处理界面请求的模块。3.3.2运行控制通过用户选择不同的功能,调用界面控制类进行页
11、面间的切换。3.3.3运行时间对于一般的单个记录的操作,延时可忽略不计。但如果涉及到的查询记录,或者用户进行的操作相当耗费CPU的时候,延时会很明显。如果某项操作耗费时间已经超过1分钟还没结束,用户应自行决定放弃此操作或退出本软件。3.4系统数据结构设计View向UIController控制器传递的动作和数据组成,定义如表3-4:请求动作动作名称描述EVENT_NEW_RECORD_SELECTED选择查看新纪录EVENT_SAVE_RECORD_SELECTED选择保存新记录EVENT_NEWPHONE_BACK_MAINUI新纪录页面返回主界面EVENT_SEARCHUI_BACK_MAI
12、NNUI查询页面返回主界面EVENT_CLEAR_RECORD清除记录EVENT_CLEAR_RECORD_YES清除记录 选择是EVENT_CLEAR_RECORD_NO清除记录 选择否EVENT_DELETE_RECORD删除记录EVENT_DELETE_RECORD_YES删除记录 选择是EVENT_DELETE_RECORD_NO删除记录 选择否EVENT_DISPLAY_INFOMATION详细信息列表EVENT_DETAIL_BACK_LIST详细信息返回列表EVENT_SEARCH_RECORD查询记录EVENT_SEARCH_RECORD_ANYWAY查询记录ADD_NEW_R
13、ECORD选择添加新纪录HELP选择帮助表3-4 系统动作3.5系统出错处理设计3.5.1出错信息用一览表的方式说明每种可能的出错或故障情况出现时,系统输出信息的形式、含意及处理方法。如表3-5-1:序号出错或故障情况系统输出信息及处理1添加新记录如果用户名和手机号为空客户端调用进行处理,系统弹出错误的提示,要求用户重新输入。2查询用户输入的用户名为空客户端调用进行处理,系统弹出错误的提示,要求用户重新输入。3在插入的过程中,SQL语句有可能抛出异常例如主键重复,不能为空的语句没有输入数值系统会抛出异常信息,并给出提示信息,只要用户返回上一个页面,重新输入正确的数据,进行同样的操作即可得到正确
14、的结果。4系统其他异常报错退出表3-5-1 出错信息3.5.2补救措施系统通过不同的界面提示信息,提示用户更正操作,让后台屏蔽异常或抛出异常状态,使得管理员在调试的过程中发现问题3.5.3系统维护设计说明为了系统维护的方便而在程序内部设计中作出的安排,包括在程序中专门安排用于系统的检查与维护的检测点和专用模块。 各个程序之间的对应关系,可采用矩阵图的形式;4. 详细设计4.1系统详细设计与框图4.1.1系统静态类图(如图4-1所示) 图4-1系统静态类图4.2 设计主 iBook类iBook 类是程序的基本执行单元,是本程序的主类,它是通过扩展javax.microedition.midlet
15、.MIDlet类来实现的。其类图如图4-2所示:图4-2 iBook 类该类是应用程序的主类,startApp(),pauseApp(),destroyApp()三个方法构成了一个控制MIDlet生命周期的状态机。同时该类初始化了控制器和模型对象。4.3数据模型部分的设计4.3.1 Account类 存储的基本信息封装而成的类 其类图如图4-3-1所示图4-3-1Account类 该类设计了要用户账户要存储的信息:用户名(userName),手机号(mobilePhone),邮件(email)和电话(phone)。以及相应的get和set方法等。 4.3.2索引类 Index类中有两个数据成员
16、key和recordID 其中key对应Account类的userName项,recordID为Account记录存储中的记录ID。其类图如图4-3-2所示:图4-3-2索引类 其中的serialize()和deserialize()方法分别为序列化函数和反序列化函数。serialize()方法实现把对象序列化为字节流以便在网络中传输。deserialize()方法用于把对象的字节流转化成对象。4.3.3设计控制器 UIController控制器类接受来自View的请求,并调用Model类提供的相应的方法来进行处理,并把处理的结果返回给View。其类图如图4-3-3所示:图4-3-3控制器类该
17、控制器类的handleEvent()方法通过一个switchcase语句来对不同的事件进行导航。该控制器的内部还定义了一个内部类EventID,该类的每一个值用于标识一个事件。4.4界面设计4.4.1 设计欢迎界面 WelcomeUI类是实现应用程序的欢迎界面的实现类。主要任务是在屏幕指定位子显示欢迎信息。其类图如图4-4-1所示:图4-4-1 欢迎界面类4.4.2 设计确认对话框 ConfirmationDialog类是应用程序确认对话框,其主要任务是实现Windows系统中常见的确认对话框的功能,其类图如图4-4-2所示:图4-4-2确认对话框类4.4.3 设计搜索界面 SearchPho
18、neUI完成通信录的搜索功能,其类图如图4-4-3所示:图4-4-3搜索界面类4.4.4 设计添加电话号码界面 NewPhoneUI类主要完成用户号码的添加任务。其类图如图4-4-4所示:图4-4-4 NewPhoneUI类4.4.5 设计电话号码列表显示界面NewPhoneUI类实现了一个显示列表,它显示符合查询条件的号码列表。其类图如图4-4-5所示:图4-4-5 NewPhoneUI类5. 源代码(关键部分)UIController类中的内部类EventID( 该类的每一个值用于标识一个事件)代码如下:public static class EventID private EventID
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- J2ME 个人 通讯录 管理程序