一.引言1.1编写目的这个报告是对我们软件的开发目的、过程的一个综述。我们为了更好的发掘通讯录的功能,进一步实现通讯录的便捷性、实用性以及多元化的优点,我们为传统的通讯录添加了电子邮件、日志文件以及数据库系统这三个亮点。进而打破常规的束缚,让通讯录进一步贴近我们的生活,实现质的飞跃。这份报告文档主要对于我们的软件产品进一步进行详尽的需求可行性分析,对我们的软件产品进行准确的定义。1.2项目风险我们的项目风险的主要风险承担者承担,即任务提出者李明阳,软件开发者王震、牛春苗、李明阳。我们的风险主要是以下几个方面:软件未能完全实现这三个亮点的功能软件未能正确运行软件未能如期完成编写、测试。而我们现阶段的主要风险就是软件还未正确运行,也就是离我们的预期还有一定的差距,我们还在艰苦的编写和测试阶段。但我们有信心如期完成任务。1.3文档约定我们文档采用的排版约定如下:正文采用宋体五号字。一级标题采用黑体加粗二号字,二级标题采用黑体加粗小三号字。重要符号则是采用红色加粗处理。1.4预期读者和阅读建议由于我们的项目跟实际的大企业商业项目有本质的差别,因此预期读者会比较少,组成也比较单一。主要是同学之间互相交流以及交给老师审核。建议我们的同学之间交流学习采用精读的方式,这有利于我们彼此取其精华去其糟粕,从而实现共同进步。建议老师则是主要关注我们的三个亮点,精确查找我们的优点和不足,从而能一针见血地给出我们改进的意见和建议。1.5产品范围我们的产品概括的说,就是一个带有创新功能并且实现数据库管理的通讯录系统。我们开发这款软件,就是为了实现在一个常见的问题中实现创新,并且进一步深化我们这学期的数据库知识的学习,同时结合我们软件工程的具体要求,实现全方位的提升我们的创新能力和编程水平以及统筹规划通力合作多个方面的水平。1.6参考文献我们的参考文献主要是教科书以及网络上的相关实例。比如:软件工程的课本数据库系统概论Java面向对象程序设计还有网上的一些论文和创意。二.综合描述这一部分主要介绍我们正在进行的通讯录系统的作用范围以及该软件产品所运行的环境、使用该软件产品的用户、对该软件产品已知的限制、有关该软件产品的假设和依赖。2.1产品的状况我们的通讯录系统源自于对数据库知识的应用以及简单的通讯录系统的程序样例。我们自己研发的通讯录是一个有别于现有的通讯录系统的新型的、自主型的产品。可以说是现在应用软件的替代品。2.2产品的功能基本的新建联系人、修改联系人、备份联系人、删除联系人功能,对应数据库的增删改查。而且可以批量化的操作,从而实现该系统的高效性。简单的收发电子邮件的功能,对应cs架构,实现正式的及时通讯。每隔固定的时间段进行日志的记录和更新。从而实现建立常用联系人分组索引,实现数据库的快速查询。2.3用户类和特性我们的用户分为经常收发电子邮件的商务型用户和只是用简单的增删改查功能的一般用户还有主要通过后台进行管理和维护的管理员用户。针对这三种不同的用户群,我们会推荐用户不同的使用侧重点,从而实现更加高效的满足用户需求,实现用户群最大化,进而实现利益最大化,也就满足了我们软件开发团队的责任感和成就感。2.4运行环境我们的软件是一款基于windows平台的多功能软件系统,兼容性较好:软件可以运行在64位的笔记本电脑或者普通的台式机上。对于win8.1,win10等较新版本的windows操作系统可以很好的兼容。支撑我们软件的数据库系统用的是sqlserver2014.我们的软件不像是霸道的杀毒软件,会强力清除同类软件;也不会像流氓软件一样,不能成功卸载。2.5设计和实现上的限制我们的软件主要受限于多元的功能和软件的兼容性问题。多元的功能迫使我们不得不考虑界面的安排和美化问题,处理操作的优先级问题,以及加深了编码和测试的难度,当然这也一部分归咎于我们自身的编程水平问题。软件的兼容性要考虑系统的版本、硬件平台如存储器限制数据转换格式标准等问题。这就需要一定的硬件知识,我们在这一方面还有很大的不足。所以我们会尽快自学一些硬件知识,从而突破瓶颈。2.6假设和约束(依赖)我们的通讯录系统实现从后台直接管理和维护数据库,是建立在管理员用户会熟练使用sql语句以及sqlservermanagement软件的基础上。也就是说,要实现从后台直接管理的话,必须具备相关的专业知识。我们的工期具有不超过4个月的约束,这是我们这个项目的硬性要求。人员只有3个,使得我们在面临如此繁琐的一个项目具有较大的压力。三.外部接口需求3.1用户界面我们的通讯录系统的要采用图形用户界面,产品系列的风格稳重。屏幕的布局采用菜单式的传统的布局,包括菜单,标准按钮,导航链接,消息栏。快捷键会采用用户自定义设置的方式。错误信息会显示在消息栏中,提高了界面的交互性。导航链接会提供一些常见问题的解决方案的网页地址,给用户一些有针对性的帮助。3.2硬件接口支持的硬件为64位的笔记本电脑和普通台式机。使用的电子邮件的通讯协议为tcp/udp协议。3.3软件接口该软件系统会与如下的外部组件建立连接:Windows8.1windows10操作系统Sqlserver2014Cs架构IE浏览器或者microsoftedge浏览器3.4通讯接口Qq邮件Microsoftedge浏览器Tcp/udp协议通讯安全或加密问题数据传输速率同步和异步通讯机制四.系统功能需求4.1说明和优先级新建、查询、修改、删除、备份联系人的优先级在本软件系统中的优先级最高。毕竟作为一个专业的通讯录系统,其基本的增删改查功能是必须高效合理地完成的工作。收发电子邮件的优先级为中。考虑到大量收发电子邮件的用户是繁忙的商业型用户,其人群也比较庞大,所以,其优先级也是不能忽视的一个问题。定期进行日志的记录和更新,则是为了更好的改善我们的软件系统,其实用性相比较之下较差,所以在该软件系统中的优先级为低。最后一项在后台直接进行数据的管理和维护的主要用户群体是数据库管理员,其群体虽然不是很庞大,但其重要性不容忽视,毕竟该软件系统的亮点是数据库,所以其优先级为最高。相信这也是应用数据库系统系列软件的中枢。4.2激励/响应序列当用户新建,修改,备份或是删除一个或多个联系人时,对应的是对用户的数据库系统中的记录的增删改查。当用户收发电子邮件时,对应客户端服务器的数据报的接收和发送。当用户在后台进行直接的数据记录的修改时,则是在得到了该通讯录系统的管理员权限后在数据库管理系统上发出相关查询语句的命令。当用户错误操作之后,会在消息栏中显示明确的错误种类。当用户点开相关的导航链接时,则是对系统中的浏览器发送请求,通过cs架构中的url统一资源定位器得到服务器端的响应,从而实现有的放矢的帮助。4.3输入/输出数据输入数据:用户可在图形化用户界面输入联系人的相关信息,也可在后台直接数据相关的sql语句。联系人的信息的数据类型有整形和字符型。通过函数调用处理这些数据,进行分类和存储。输出数据:该软件系统输出的主要是在图形化用户界面输出用户已经存储的联系人数据,还有错误操作时的消息以及导航链接中的网页链接。五.其它非功能需求这部分列举出所有的非功能需求,主要包括可靠性、安全性、可维护性、可扩展性、可测试性。5.1性能需求系统支持的并发操作数量上没有严格的限制响应时间要求不超过3秒。用户查询和修改的记录要求及时加载到存储器中,该通讯录系统占用的磁盘空间不能过大。数据库中表的最大行数受可用存储资源限制。5.2安全措施需求在用户收发电子邮件时,会采取一定的加密技术进行数据的传输。只有有管理员权限的用户才可以在后台直接进行数据记录的修改,要求用户设置相应的操作密码。该系统会定期在云端进行备份用户的联系人数据。5.3安全性需求定义用户身份认证,授权需求。每个用户在第一次登录后,必须更改他的系统预置登录密码,系统预置的登录密码不能重用。5.4软件质量属性基本操作简单易用查询修改高效可移植性较为良好5.5业务规则达到500条记录及以上时,必须通过附加的管理员认证。5.6用户文档安装指南纸质文档,16开本用户手册纸质文档,16开本在线帮助电子文档,与产品一同分发、配置使用教程电子文档,与软件产品一同分发、配置六.词汇表TCP(TransmissionControlProtocol)和UDP(UserDatagramProtocol)协议属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠的数据包的发送。它是事先为所发送的数据开辟出连接好的通道,然后再进行数据发送;而UDP则不为IP提供可靠性、流控或差错恢复功能。一般来说,TCP对应的是可靠性要求高的应用,而UDP对应的则是可靠性要求低、传输经济的应用。TCP支持的应用协议主要有:Telnet、FTP、SMTP等;UDP支持的应用层协议主要有:NFS(网络文件系统)、SNMP(简单网络管理协议)、DNS(主域名称系统)、TFTP(通用文件传输协议)等。七.数据定义原数据元素姓名namechar类别categorychar电话号码telchar序号numberint电子邮件emailchar备注remarkchar组合项一个联系人对应的数据项的集合是数据库中的一条记录。八.分析模型在用户创建联系人的数据表时,根据类别分组的多张表之通过外键连接起来,在后台进行维护时,可根据实体关系图进行相关的分析。九.待定问题列表目前在编码测试阶段的待定问题为是否给用户发出的电子邮件进行加密。由于个人水平的局限性,我们对于信息安全方面的技术了解的很少。如果在后期有时间完成的话,会加入消息加密的技术。庄子云:“人生天地之间,若白驹过隙,忽然而已。”是呀,春秋置换,日月交替,这从指尖悄然划过的时光,没有一点声响,没有一刻停留,仿佛眨眼的功夫,半生已过。人活在世上,就像暂时寄宿于尘世,当生命的列车驶到终点,情愿也罢,不情愿也罢,微笑也罢,苦笑也罢,都不得不向生命挥手作别。我们无法挽住时光的脚步,无法改变人生的宿命。但我们可以拿起生活的画笔,把自己的人生涂抹成色彩靓丽的颜色。生命如此短暂,岂容随意挥霍!只有在该辛勤耕耘的时候播洒汗水,一程风雨后,人生的筐篓里才能装满硕果。就算是烟花划过天空,也要留下短暂的绚烂。只有让这仅有一次的生命丰盈充实,才不枉来尘世走一遭。雁过留声,人过留名,这一趟人生旅程,总该留下点儿什么!生活是柴米油盐的平淡,也是行色匆匆的奔波。一粥一饭来之不易,一丝一缕物力维艰。前行的路上,有风也有雨。有时候,风雨扑面而来,打在脸上,很疼,可是,我们不能向生活低头认输,咬牙抹去脸上的雨水,还有泪水,甩开脚步,接着向前。我们需要呈现最好的自己给世界,需要许诺最好的生活给家人。所以,生活再累,不能后退。即使生活赐予我们一杯不加糖的苦咖啡,皱一皱眉头,也要饮下。人生是一场跋涉,也是一场选择。我们能抵达哪里,能看到什么样的风景,能成为什么样的人,都在于我们的选择。如果我们选择面朝大海,朝着阳光的方向挥手微笑,我们的世界必会收获一片春暖花开。如果我们选择小桥流水,在不动声色的日子里种篱修菊,我们的世界必会收获一隅静谧恬淡。选择临风起舞,我们就是岁月的勇者;选择临阵脱逃,我们就是生活的懦夫。没有淌不过去的河,就看我们如何摆渡。没有爬不过去的山,就看我们何时启程。德国哲学家尼采说:“每一个不曾起舞的日子,都是对生命的辜负。”让我们打开朝着晨光的那扇窗,迎阳光进来,在每一个日出东海的日子,无论是鲜衣怒马少年时,还是宠辱不惊中年时,都活出自己的明媚和精彩。时间会带来惊喜,只要我们不忘记为什么出发,不忘记以梦为马,岁月一定会对我们和颜悦色,前方也一定会有意想不到的惊喜。人生忽如寄,生活多苦辛。短暂的生命旅程,别辜负时光,别辜负自己。愿我们每一个人自律、阳光、勤奋,活成自己喜欢的模样,活成一束光,