班级通讯录管理系统2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

天津职业技术师范大学TianjinUniversityofTechnologyandEducation《软件工程》课程设计班级通讯录管理系统学院:信息技术工程学院专业:计算机科学技术班级学号:1113—23学生姓名:邵彬指导教师:王宏杰二〇一五年七月摘要:通讯录管理系统是用于辅助个人完成其通讯信息有序管理的学生通讯录系统,系统实施的目的旨在帮助用户完成其私人通讯信息管理的数字化,以提供较手工方式下更高的效率和更低的出错率。作为整个办公自动化系统的一部分,通讯录管理系统要实现的目标是:将用户目前在处理通讯录管理工作时所采用的手工处理方式进行计算机化,从而与整个办公自动化系统的数字化趋势相协调,以求为用户提供更为专业和高效的个人管理服务。可行性分析可行性研究的目的使用最小的代价在尽可能短的时间里确定问题是否能解决,通过复杂系统的规模与目标,研究与此类似的系统后,我们具体从下面两个方面考虑。(1)技术上的可行性。由于对通讯录管理系统这一类的联系记录管理系统进行开发已有一定的时期,有很多成功的实例,技术基础也已经非常雄厚,因而技术上的准备应该不成问题。(2)经济上的可行性。由于通讯录管理系统是一个比较小型的系统,是由我一个人进行开发的,所以从人力、物力、财力方面来说都是可行的。(3)操作可行性。这个当然难不倒我们,因为我们有专业的管理员,可行性研究进一步探讨问题定义阶段的问题是否有可行的解。在对问题正确定义的基础上,通过分析问题,导出试探性的解,然后复查并修正问题定义,再次分析问题,改进提出的问题,以便最后保证系统的正常运行需求分析1.市场需求分析过去人们他人信息的管理主要是通过随记,名片等方式。这些方式在查找的时候相当浪费时间,效率十分低下。现在通过通讯录管理系统对他人信息就行管理,不仅节约时间,同时检索迅速、查找方便、可靠性高、存储量大、保密性好。这样极大的提高了通讯录管理的效率。2系统功能性需求分析2.1功能划分本系统的目标使用人群是广大的电脑用户,将有助于改善通讯录管理,对通讯录进行系统化的管理,方便人们互相联系。用户首先通过该系统注册功能建立自己的通讯录。其中涉及到密码的设置,用户在登录的时候会用到用户名和密码。用户在登录该系统后,可以对通讯录联系人信息进行添加、删除、修改、查询等操作。其中密码的设置是为了用户通讯录的安全性。2.2功能描述添加联系人:方便用户添加联系人资料,以方便互相联系。查找联系人:为用户提供方便快捷的查找,方便用户在联系人很多的时候,快速找到想要的联系人资料。删除联系人:保证用户可以及时删除已失效的联系人资料,使得通讯录管理更高效。修改联系人:保证用户可以及时更新联系人的资料,。3系统非功能性需求3.1可用性本系统针对的对象是学生。因此对本系统的可操作性和易用性都提出了很高的要求。过于复杂的操作将不可避免的损失大量的用户,本系统应能让任何用户都不必借助任何操作手册或相关的系统帮助就能顺利地进行各种操作。3.2可靠性系统建成后预计将有大量的用户用该系统进行通讯录的管理,因此对系统的稳定性也有比较高的要求。一旦系统不能正常工作,会给用户群带来巨大的损失也将导致失去用户对系统的信任。4数据字典通过系统需求分析,对通讯录管理系统编制数据字典如下:各主要数据流的定义如表1与表2所示。表1表2总体设计需求概述本系统的目标是建立一个操作简单、管理高效的联系人信息管理平台。使得用户可以在本系统的帮助下,可以非常方便的与他人互相联系。因此,本系统需要实现对联系人信息的添加、删除、查询和修改的功能。功能模块图班级通讯录管理系统主要功能模块包括:联系人添加、联系人查看、联系人编辑、联系人删除、搜索和导入导出,如图1所示:名字:联系人管理信息描述:用户需要对联系人资料进行管理的信息定义:联系人管理信息=【添加联系人信息】【删除联系人信息】【修改联系人信息】位置:联系人管理平台名字:联系人资料描述:当前用户的联系人资料定义:联系人资料=学号+姓名+性别+籍贯+手机号+QQ+邮箱+住址位置:联系人管理平台图1功能模块详细设计业务流程图用户进入通讯录系统主界面后,会看到存放联系人数据的文件列表。系统主菜单中包括添加联系人、搜索联系人、查询联系人,修改联系人,导入导出和退出菜单项。点击添加联系人,则进入联系人添加界面,添加成功后返回主界面。点击查询菜单,会有两个子选项,指定查询方式的模糊查询和不指定查询方式的模糊查询,在指定方式的查询里,输入联系人的名字,或者学号,或者籍贯,即可查找到相关联系人,双击联系人文件会进入联系人列表界面,可以对联系人进行编辑、删除。联系人导入导出是将联系人数据备份到本地文件,也可以从文件导入数据到系统中。。该软件的业务流程如图2所示:通讯录系统联系人添加联系人编辑联系人查看联系人查询导入导出联系人删除主界面图2班级通讯录管理系统业务流程图数据增加流程图添加联系人时,数据由用户输入,点击确定按钮,判断数据是否合法,合法则插入到文件;不合法,提示错误信息,让用户重新输入。流程如图3所示:用户班级通讯录管理系统添加联系人编辑联系人删除联系人联系人列表联系人查询联系人人导出/导出退出通讯录VCcard图3数据增加流程图数据修改流程图编辑联系人时,点击编辑联系人菜单,输入修改后的数据,点击确定按钮,判断数据是否合法,合法,则更新文件;不合法,则返回错误信息。流程如图4所示:图4数据修改流程图数据删除流程当用户选定一个联系人时,单击删除联系人菜单,提示用户是否删除,点击确定按钮,则从文件中删除此条记录。数据删除流程如图5所示:添加联系人界面是否合法保存到文件添加数据修改联系人界面是否合法保存文件修改数据图5数据删除流程图程序试运行主界面查看联系人界面删除联系人是否删除更新文件查看联系人界面添加联系人修改联系人实现编码:/**Tochangethistemplate,chooseTools|Templates*andopenthetemplateintheeditor.*/packagecheck;importjava.io.File;importjava.util.ArrayList;importjava.util.Iterator;importjava.util.List;importjava.util.logging.Level;importjava.util.logging.Logger;importorg.dom4j.Attribute;importorg.dom4j.Document;importorg.dom4j.DocumentException;importorg.dom4j.Element;importorg.dom4j.io.SAXReader;/****@authorAdministrator*/publicclassCheck{//检查是否必须填的信息为空publicstaticbooleanisEmpty(Stringdata){booleanb=false;if(data.equals()){b=true;}returnb;}//检查新添加的记录是否已存在publicstaticbooleanisExist(StringStuID,Stringfile){booleanb=false;SAXReaderreader=newSAXReader();Documentdoc=null;try{doc=reader.read(newFile(file));Elementroot=doc.getRootElement();/**先用xpath查找对象*/Listlist=root.selectNodes(/class/student/@StuID);Iteratoriter=list.iterator();while(iter.hasNext()){Attributeattribute=(Attribute)iter.next();if(attribute.getValue().equals(StuID)){b=true;break;}}}catch(DocumentExceptionex){Logger.getLogger(Check.class.getName()).log(Level.SEVERE,null,ex);}returnb;}publicstaticFileisFolderExist(Filefile,StringfileName){Fileb=null;File[]fileArray=file.listFiles();for(inti=0;ifileArray.length;i++){if(fileArray[i].getName().equals(fileName)){//System.out.println(ffffffffffffffff);//System.out.println(fileArray[i].getName());//System.out.println(ffffffffffffffffff);b=fileArray[i];break;}}returnb;}publicstaticvoidnewFileNum(Filefile,ArrayListal){File[]fileArray=file.listFiles();for(inti=0;ifileArray.length;i++){Stringtemp=fileArray[i].getName();if(temp.matches(新建xml文件\\d*+.xml)){if(temp.equals(新建xml文件+.xml))al.add(0);else{//char[]array=temp.toCharArray();charch=temp.charAt(temp.length()-5);//System.out.println(ch=+ch);al.add(ch-'0');}}}}publicstaticvoidnewFolderNum(Filefile,ArrayListal){File[]fileArray=file.listFiles();for(inti=0;ifileArray.length;i++){Stringtemp=fileArray[i].getName();if(temp.matches(新建文件夹.*)){if(temp.equals(新建文件夹))al.add(0);else{//char[]array=temp.toCharArray();charch=temp.charAt(temp.length()-1);//System.out.println(ch=+ch);al.add(ch-'0');}}}}//publicstaticvoidmain(String[]args){////if(isExist(200930740205,09计算机2班.xml))System.out.println(此学号已存在!);////elseSystem.out.println(可以插入!);//Filef=newFile(G:\\09计机2班综合测评(最终));//System.out.println(+newFolderNum(f));//}}系统测试1测试的作用和意义系统测试是管理信息系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测试阶段被发现并纠正,问题迟早会在运行中暴露出来,到那时要纠正错误将会付出更大的代价。系统测试占用的时间、花费的人力和成本占软件开发的很大比例。统计表明,开发较大规模的系统,系统测试的工作量大约占整个软件开发工作量的40%-50%。而对于一些特别重要的大系统,测试的工作量和成本更大,甚至超过系统开发其他各阶段的总和的若干倍。因此做好系统交付前的系统测试的目的就是在系统在投入生产性运行之前,尽可能多的发现系统的潜在错误,这是保证系统质量的关键,也是减少

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功