通 讯 录设计报告.doc_第1页
通 讯 录设计报告.doc_第2页
通 讯 录设计报告.doc_第3页
通 讯 录设计报告.doc_第4页
通 讯 录设计报告.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

通讯管理系统报告题目: 通讯管理系统 学 院: 信息工程与自动化学院 专 业: 计算机科学与技术 年 级: 2009级 学 号: 200910405229 学生姓名: 指导教师: 日 期: 2012-5-30 目录摘要2一、前瞻31、开发背景简介32、管理信息系统的发展趋势42、开发的目的和意义53、开发工具5二、可行性分析61、可行性研究的前提62、经济可行性63、技术可行性64、目标方案可行性65、操作可行性7二、需求分析71、引言72、设计题目及要求:73、系统功能需求分析:8三、系统设计流程81、概要设计82、界面设计103、详细设计104、测试14四、全文总结21五、参考文献22附录22摘要通讯录管理系统是每一个用户管理通讯录的不可缺少的一个管理信息系统,它的内容对于用户的管理者来说是至关重要的,所以通讯录管理系统应该能够为每一个用户的管理者提供充足的信息和快捷的查询手段,大大的方便用户合理的管理通讯录。随着科学技术的不断提高,计算机科学日渐成熟,网上通讯工具的迅速发展,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对通讯录进行管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高通讯录管理的效率,也是用户理财的科学化、正规化管理,与先进科学技术接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情,对于我们即将计算机专业毕业的学员来说,也是一次将计算机应用于现实管理的一次很有意义的实践活动。关键词:通讯录 管理信息系统 计算机科学 用户一、前瞻1、开发背景简介随着信息活动在国民经济中主导地位的确立和信息产业的崛起信息资源管理(Informetion Resouces Management,简称IRM)作为一个专有名词和独立的学科逐渐发展起来。如何积极开发、合理配置和有效利用信息资源,日益成为社会生活中亟待解决的问题。由于计算机和通信技术的高速发展,推广应用计算机进行信息、管理成为推动信息化工作的重要内容,管理信息系统正是应用计算机信息化过程中出现的新生事物。它是一个利用计算机软硬件资源进行电子数据处理的人机系统,它能提供信息,支持企业或组织的运行,具有管理和支持决策的功能利用计算机能把生产经营过程中的巨大数据流收集组织起来。经过处理转换为对各部门不可缺少的数据,经过对这些数据的分析使其变为各级管理人员做出决策具有重要意义的信息。总之,管理信息系统用于管理中可以大大减轻管理人员的工作负担,提高工作效率,使管理更加程序化、科学化。对一个组织而言,内部管理的好坏直接关系到组织的存在与良好运行,而内部管理中非常重要的一项就是对他人的联系,他人的具体情况,如:手机号、电子邮箱、家庭住址;一旦工作人员没有及时出现在自己的岗位时、及其他情况发生变化,可以迅速联系或找到本人甚至其家人及时了解情况;引入计算机管理信息系统,可以提高工作效率,改善管理情况,使管理工作系统化、科学化、提高整体的管理的水平。本系统是针对通讯录管理系统编写的。对于许多人来说,已经认识到一个好的通讯录是很必要的,可以方便和他人的联系;但是应用计算机来进行管理,他们还无法自己实现,这就需要有专门的管理软件来帮助实现。随着科技的进步和信息产业的飞速发展,通讯录成为了现代生活中一个重要的工具。本通讯录管理系统利用计算机对通讯录进行统一管理,包括添加、修改、查询记录等功能,实现通讯录管理工作的系统化、规范化和自动化,为人们的工作和生活提供便利。整个系统程序采用c语言来实现。c语言是目前国际上比较流行的计算机高级编程语言之一,因其简洁、使用方便且具备强大的功能而受到编程人员的普通青睐。它既适合作为系统描述语言,也可用来编写系统软件,还可用来编写应用软件。2、管理信息系统的发展趋势现代管理信息系统软件的规模越来越大,且管理思想越来越复杂,以至于超出了软件开发者在合理的时间和价值内设计、描述、开发和验证它们的能力。因此,在开发管理信息系统的时候,需要利用可靠的构件,或者是以前开发的很小但经过验证的较小的程序模块,在可接受的时间范围内组建出可靠而复杂的软件系统。 一般情况下,管理信息系统的体系结构采用自上而下的纵向分层、横向分块来设计实现。分层为管理软件的复杂度及重用提供了一个很好的解决方法,在分层系统的等级组织形式中,每一层都给下一层提供服务,对其下层则要求得到服务。分块指按信息系统软件实现的功能将软件分为若干块,每一块既是一独立的子系统,又是大系统的一个组成部分。块与块之间通过数据表进行耦合。 在确定的分层分块的体系结构中,再采取自下而上的方法,首先,对最底层的功能模块,对该功能模块包含的管理思想标准化、模型化,使其具有通用性,再进行构件化设计,并按照软构件应该具有的可移植性、互操作性、扩展性、可配置性和可维护性等特点,进行参数化设置;其次,对该功能的上一层进行构件化改造,减少模块间的重叠,这样层层改造之后,对于类似企业的管理信息系统的开发,只需要针对该企业的个性,对某些局部的构件进行改动就可以完成了2、开发的目的和意义计算机已经成为我们学习和工作的得力助手,使用其可方便的管理通讯录今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域。现在我国的通讯录管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。我作为一个计算机应用专业的毕业生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我所学的知识编制出一个实用的程序来帮助用户进行财务管理。 开发这一系统的好处大约有以下几点:第一、可以存储大量的通讯录信息,安全、高效;第二、只需一档案录入员即可操作系统,节省人力;第三、可以迅速查到所需通讯录信息。根据2003年中国电信的调查报告显示我国的上网人数已达到1870万,互联网已经十分普及,况且现在网上通讯已经出现,本系统为用户将来的上网作了先期工作。3、开发工具 Microsoft Visual Studio是一种可视化的、面向对象和调用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C+编程基础。在 Microsoft Visual Studio环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。二、可行性分析1、可行性研究的前提要求:满足对个人信息的添加、删除、修改、保存、查询;目标:实现无纸化记录联系方式条件、假定、限制:当需要保存的朋友的联系方式达到一定数量,超过了人工纸化记录能承受的劳动压力时,就必需采取新的管理手段;如用计算机对信息进行保存和查询;这样一个通讯录管理系统就可以对通讯方式的信息进行良好的管理。2、经济可行性 开发成本要低廉 效益:大幅度提高了“通讯方式”信息的储存和查询,为用户提供了准确的联系人信息和联系方式等。 预算:很低,个人能承受3、技术可行性 软件需求:操作系统:WINDOWS 2000 Advance Server以上 硬件需求:2G CPU,512M 内存80G硬盘的计算机本系统采用简单的C语言来实现,依靠其简单的语法和结构来实现要求掌握计算机技术:熟悉系统的功能和使用方法是系统正常运行,熟练使用C语言4、目标方案可行性 计算机设备处理大量信息,减少了人力、物理、财力的开销;极大地提高了工作效率。高效率的管理,能提高竞争力和节省时间,本系统的管理可以根据用户所需进行修改和完善。5、操作可行性 本系统采用简单的DOS环境下文字界面,对于一般的人员也能轻松上手。 整个系统有清晰简单的文字提示界面,简单明了,操作简单,不需要对数据库进行深入的了解二、需求分析1、引言需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,恨不得找块豆腐一头撞死. 需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型软件系统的开发中,他的作用要远远大于程序设计.2、设计题目及要求: 建立通讯录信息,信息至少包含姓名、电话、通讯地址等; 能够提供添加、删除和修改通讯录信息的功能; 能够提供安不同方式查询的功能;如按姓名或电话等查询; 将通讯录保存在文件中; 能够按表格方式输出通讯录信息。3、系统功能需求分析:主要包含一下多种功能:添加:添加通讯录记录显示:显示通讯录记录删除:删除通讯录记录查询:查询通讯录记录修改:修改通讯录记录三、系统设计流程1、概要设计系统用例图(工具:powerdesigner)系统功能模块图:修改删除添加显示查询主菜单添加:可以添加通讯录记录,依次输入姓名、电话号码、通讯地址显示:可以以表格形式输出所有通讯录里的记录删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容查询:可以选择用姓名、电话2种方式查询修改:输入欲修改的那个人的名字后,再依次输入姓名、电话号码、通讯地址即可完成修改保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件2、界面设计用户可以根据界面提示进行所需要实现的功能操作,即使是对计算机不太熟悉的人也能对其进行操作,充分体现出了其可操作性3、详细设计模块设计程序所需要的模块:定义联系人结构体添加联系人模块 int add();删除联系人模块 int del();显示模块 int read();修改模块 int change();查询模块 int find();添加联系人模块:显示联系人模块删除联系人模块:查询联系人模块:先选择查询方式,以姓名查询方式为例修改联系人模块:修改通讯录记录4、测试输入数据预期输出实际输出1,1,黄冠军,110,天堂添加联系人界面,将联系人信息保存添加联系人界面,将联系人信息保存1,2,黄亚军,111,地狱添加联系人界面,将联系人信息保存添加联系人界面,将联系人信息保存0保存输入的信息,并返回主界面保存输入的信息,并返回主界面显示联系人:输入预期输出实际输出2显示保存的联系人信息显示保存的联系人信息查询联系人输入预期输出实际输出3,1,110进入查询方式选择界面,显示号码为110的联系人信息进入查询方式选择界面,显示号码为110的联系人信息3,1,111进入查询方式选择界面,显示号码为111的联系人信息进入查询方式选择界面,显示号码为111的联系人信息3,1,112进入查询方式选择界面,提示无该号码进入查询方式选择界面,提示无该号码3,2,黄冠军进入查询方式选择界面,显示名为“黄冠军”的信息进入查询方式选择界面,显示名为“黄冠军”的信息3,2,黄亚军进入查询方式选择界面,显示名为“黄亚军”的信息进入查询方式选择界面,显示名为“黄亚军”的信息3,2,黄季军进入查询方式选择界面,提示无此人进入查询方式选择界面,提示无此人测试数据 3,1,110测试数据3,1,111测试数据 3,1,112测试数据3,2,黄冠军 测试数据 3,2,黄亚军测试数据 3,2,黄季军修改联系人测试:输入预期输出实际输出4,1,皇军,213,岛国将编号为1下的联系人信息修改并保存,提示修改成功将编号为1下的联系人信息修改并保存,提示修改成功4,2,共军,999,公鸡将编号为2下的联系人信息修改并保存、提示修改成功将编号为2下的联系人信息修改并保存、提示修改成功4,3,美军,222,母鸡提示无该编号提示无该编号测试数据 4,1,皇军,213,岛国测试数据4,2,共军,999,公鸡测试数据4,3,美军,222,母鸡查看修改后的信息:删除联系人测试:输入预期输出实际输出5,皇军进入删除界面,删除成功并提示进入删除界面,删除成功并提示5,共军进入删除界面,删除成功并提示进入删除界面,删除成功并提示5,美军进入删除界面,提示无此人进入删除界面,提示无此人四、全文总结 在本系统的开发过程中,由于本人是对JAVA以及C语言里工程项目MFC APPWIZARD不熟悉,无法开发出可操作的GUI,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对学生信息管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。通过开发这个系统,我掌握了的项目基本开发过程,用到的知识巩固了我对Visual C#的学习,但在这次设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。五、参考文献1 史济明等编著,软件工程-原理、方法与应用,高等教育出版社,20022 汪孝宜等,信息系统开发实例精粹(C#版),电子工业出版社,20063 张立,C#2.0宝典,电子工业出版社,20074 李兰友等编著,Visual C#.Net程序设计,清华大学出版社,20035 何玉洁编著,数据库原理与应用,机械工业出版社,2006附录源代码:菜单头部分#define header1 |-电话簿-|n#define header2 |- - - -|n#define header3 | 编号 | 姓名 | 电话 | 地址 |n#define header4 |-|-|-|-|n#define end |-|结构体部分typedef struct teleint num;char name10;char phonenum15;char address20;telebook;菜单输出部分void menu()system(cls);system(color 2F);printf(nnn);printf(tt| 电话薄管理系统 |n);printf(tt| |n);printf(tt| |n);printf(tt|*菜单*|n);printf(tt| |n);printf(tt| |n);printf(tt| 1 增加 2 显示 |n);printf(tt| |n);printf(tt| 3 查找 4 修改 |n);printf(tt| |n);printf(tt| 5 删除 0 退出 |n);printf(tt| |n);printf(tt|*|n);菜单头的输出void printheader() /*输出菜单头*/printf(header1);printf(header2);printf(header3);printf(header4);添加联系人模块代码int add(telebook temp) int i;int m=0; FILE *fp; system(cls); if(fp=fopen(D:rex.txt,ab+)=NULL) printf(打开文件有误!); exit(0); printf(可以输入最多一百个人的信息!n); printf(如果在“编号”项输入0则退出出输入!n); for(i=m;i(100+m);i+) printf(编号:); scanf(%d,&tempi.num); if(tempi.num=0) break; printf(姓名:); scanf(%s,&); printf(电话号码:); scanf(%s,&tempi.phonenum); printf(地址:); scanf(%s,&tempi.address); fwrite(&tempi,sizeof(struct tele),1,fp); m+=100; fclose(fp); system(cls); return 0;显示联系人模块代码int read(telebook temp)/显示,读取存储在文件中的信息int count,i;FILE *fp;system(cls);if(fp=fopen(D:rex.txt,ab+)=NULL)printf(打开文件有误!);exit(0);printheader();for(count=0;fread(&tempcount,sizeof(struct tele),1,fp)=1;count+);/*读取文件内信息的个数。*/if(count=0)printf(nnntt文件内没有信息!nnn);for(i=0;icount;i+)/*读取文件内的信息*/printf(|%-7d|%-10s|%-15s |%-15s|n,tempi.num,,tempi.phonenum,tempi.address);printf(end);fclose(fp);return 0;查找模块代码void find()int n;telebook message120; system(cls);system(color 2F);printf(n);while(1) /*输出查找函数主菜单*/printf(nnnn); printf(|-查找功能-|n);printf(| |n);printf(| 1 按电话号码查找 |n);printf(| |n);printf(| 2 按姓名查找 |n);printf(| |n);printf(| 0 退出 |n);printf(| |n);printf(|-结束-|n);printf(输入您的查找方式:);scanf(%d,&n);switch(n)case 1:find1(message1);break;case 2:find2(message1);break;case 0:return;break;getchar();system(cls);按姓名查找代码int find2(telebook temp)/*姓名查询*/int i,count ,t=0;char a20;FILE *fp;system(cls);printf(n);if(fp=fopen(D:rex.txt,ab+)=NULL)printf(打开文件有误!);exit(0);printf(输入要查找的名字:);scanf(%s,a);getchar();printf(nn);printheader();for(count=0;fread(&tempcount,sizeof(struct tele),1,fp)=1;count+);/*读取文件内信息的个数。*/for(i=0;icount;i+)if(strcmp(,a)=0)t=1;printf(|%-7d|%-10s|%-15s |%-15s|n,tempi.num,,tempi.phonenum,tempi.address);/*输出查询到的信息*/if(t=0)printf(anntt没有要查找的信息.!nnn);printf(end);return 0;printf(end);fclose(fp);return 0;按号码查找代码int find1(telebook temp)/*电话号码查询*/int i,count,t=0 ;char n20;FILE *fp;system(cls);printf(n);if(fp=fopen(D:rex.txt,ab+)=NULL)printf(打开文件有误!);exit(0);printf(输入要查找的号码:);scanf(%s,n);printf(nn);printheader();getchar();for(count=0;fread(&tempcount,sizeof(struct tele),1,fp)=1;count+);/*读取文件内信息的个数。*/for(i=0;icount;i+)if(strcmp(tempi.phonenum,n)=0)t=1;printf(|%-7d|%-10s|%-15s |%-15s|n,tempi.num,,tempi.phonenum,tempi.address);/*输出查询到的信息*/if(t=0)printf(anntt没有要查找的信息.!nnn);printf(end);return 0;printf(end);fclose(fp);return 0;修改模块代码int change(telebook temp)int i,count,t=0;FILE *fp;struct tele ne10;system(cls);printf(-按编号修改-n);if(fp=fopen(D:rex.txt,ab+)=NULL)printf(打开文件有误!);exit(0);printf(-输入新内容-:n);printf(-编号:); scanf(%d,&ne0.num); printf(-姓名:); scanf(%s,&); printf(-电话:); scanf(%s,&ne0.phonenum); printf(-地址:); scanf(%s,&ne0.address); for(count=0;fread(&tempcount,sizeof(struct tele),1,fp)=1;count+);/*读取文件内信息的个数。*/ fclose(fp); for(i=0;icount;i+) /*查找与新信息相同的信息*/ if(tempi.num=ne0.num) /*用新信息替换*/ t=1; tempi.num=ne0.num; strcpy(,); strcpy(tempi.phonenum,ne0.phonenum); strcpy(tempi.address,ne0.address); getchar(); printf(nnttt修改成功.!); if(t=0) getchar(); printf(nnttt没有要修改的信息.!); return 0; fp=fopen(D:rex.txt,wb+); for(i=

温馨提示

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

评论

0/150

提交评论