SRS文档 软件需求说明书
【摘要】
随着信息时代科技的飞速发展,经济全球化已广为人知,英语作为全球最主要的语言之一,受到越来越多的人的喜爱,不仅为了增长知识,也为了能适应社会发展的需求。但是,学英语最重要的事首先是积累词汇,没有一定的词汇量是没法学好英语的,现在,背单词的问题困扰了一代又一代的学生们,往往把它看作是一种既乏味又复杂的一件事。针对这一问题,我们小组决定发明一个背单词软件,帮助广大学子早日解决背单词带来的烦恼,提高学生们的学习效率。
关键词: ATM、C/S架构、JAVA、Access
目 录
引 言... 1
第一章 概 述... 1
1.1 设计目的及内容... 1
1.1 设计目的... 1
1.2 相关内容... 1
1.3 JAVA语言简介... 2
1.4 JAVA语言的网络运用... 2
1.5 C/S架构... 2
1.6 Access数据库... 3
1.7 Access的特性... 4
第二章 系统调研及可行性分析... 4
2.1 系统调研... 4
2.2 可行性分析概述... 4
2.3 技术可行性分析... 5
第三章 需求及总体设计... 6
3.1系统需求分析... 6
3.1.1系统的功能需求... 6
3.1.2 系统的开发环境... 6
3.1.3 数据库设计... 7
第四章 系统主要功能实现... 10
4.1 用户系统模块的实现... 10
结 论... 10
引 言
背单词系统的目的就是建立一个客户平台,用户使用此平台进行单词翻译、单词查询、加入生词库等。相对于手工辞典操作一样的,不过背单词系统可以更简便的直接的体现给用户,而且使用方便,操作简单。
背单词系统的针对的用户群是使用此软件系统并在系统里开户,用户做为系统的服务群体,按照自己的需求进行单词的查询,翻译。按照用户自己的方式选择所需背记单词的数量,难度。遇到有生僻的单词可以加入生词库方便以后的二次查找,节省时间,方便阅览。
第一章 概 述
1.1设计目的及内容
1. 1 设计目的
本课题背单词系统的目的就是建立一个客户平台,用户使用此平台进行单词翻译、单词查询、加入生词库等。相对于手工辞典操作一样的,不过背单词系统可以更简便的直接的体现给用户,而且使用方便,操作简单。
背单词系统的针对的用户群是使用此软件系统并在系统里开户,用户做为系统的服务群体,按照自己的需求进行单词的查询,翻译。按照用户自己的方式选择所需背记单词的数量,难度。遇到有生僻的单词可以加入生词库方便以后的二次查找,节省时间,方便阅览。
1. 2 相关内容
本系统要求主要实现以下功能模块:
1) 用户能够导入导出词库;
2) 用户可以选择是否显示单词的音标、中文解释等;
3) 用户可以选择屏幕前端显示的单词的更新速度、背景和前景等;
4) 用户可以拖动显示的单词条到屏幕的任何位置;
5) 提供生词本功能,用户可以随时添加生词,并选择生词库作为当前词库。
5)1. 3 JAVA语言简介
Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。
Java 编程语言的风格十分接近C、C++语言。Java是一个纯的面向对象的程序设计语言,它继承了 C++ 语言面向对象技术的核心,Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。但在 J2SE 1.4.2 发布后,Java 的执行速度有了大幅提升。
1.4 JAVA语言的网络运用
Java程序可以获取网络上结点的图象、声音、HTML文档及文本等资源,并可以对获得的资源进行处理。例如Java程序可以每隔一定时间读取某结点提供的最新数据,并以图表的形式显示出来。在编程处理上,一般先生成一个URL类型的对象,然后用 Java中相应的方法(method)获取该对象所代表的资源, Java Applet可以直接从网络上结点获取图象并显示出来。目前,Java更广泛的应用是在服务器端,这是本文研究的主要话题,下文提及的Servlet、JSP等技术都是Java在服务器端应用的具体形式。
1.5 C/S架构
C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高,效率低。C/S的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:
1、只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。
2、客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
3、 对客户端的操作系统一般也会有限制。
1.6 Access数据库
Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。
Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用软件。虽然它支援部分面向对象(OOP)技术,但是未能成为一种完整的面向对象开发工具。
1.7 Access的特性
1) 存储方式简单,易于维护管理
2) Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb或.accdb)的数据库文件中,便于用户的操作和管理。
3) 面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。界面友好、易操作
4) 集成环境、处理多种数据信息
5) Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。支持广泛,易于扩展,弹性较大
总之,Access是一个既可以只用来存放数据的数据库,也可以作为一个客户端开发工具来进行数据库应用系统开发;即可以开发方便易用的小型软件,也可以用来开发大型的应用系统。
第二章 系统调研及可行性分析
2.1 系统调研
首先,背单词系统是面向特定对象群是在此软件系统有使用需求的用户,所以用户登陆系统后,应该能根据自己的需要进行各项操作。鉴于软件系统使用环境一般在网络上或单机使用,为了考虑到软件的安全性,对于每个用户来说,系统的安全性直接影响着自身的利益。特别是网络环境,到处伴随着危险,背单词系统针对这一用户群,采取一些有效的措施,登陆后用户信息反馈到客户端数据库里,做好防止信息被拦截工作。
2.2 可行性分析概述
可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。
可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。
(1)可行性分析阶段的主要工作包括以下几个方面:
①新系统目标可行性分析:
分析新系统的目标是否符合企业的现状和发展的需要。
②社会可行性分析:
社会可行性分析主要是指管理信息系统的开发是否符合国家法律、下策,是否能够与社会大系统实现良好的对接。
③技术可行性分析:
技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。
④经济可行性分析
经济可行性分析主要是对开发新系统所投入的资金与系统投入使用后所带来的经济效益进行比较,确认新系统是否会给企业带来一定的经济效益。
⑤管理可行性分析:
管理可行性分析主要是分析企业现行的管理体制和企业领导是否具有现代化的管理意识和管理水平。
2.3 技术可行性分析
技术可行性分析主要包括四个方面:目前有关的技术能否支持所开发的新系统;新系统开发人员的数量和水平,即人力资源;硬件和软件资源。
(1)技术支持:
首先根据新系统的目标,考虑目前有关的技术能否支持所开发的新系统。这里讨论的技术必须是已经普遍使用的,而不是待研究的或正在研究的。
(2)硬件资源:
开发管理信息系统所需的硬件资源包含以下两个方面:
系统开发人员在管理信息系统的开发过程中所需要的计算机设备及其有关的外部设备;管理信息系统开发成功投入使用后,使用单位所应具备的计算机设备及其有关的外围设备。对硬件资源进行可行性分析时主要考虑计算机的主机内存、类型、功能、联网能力、安全保护措施以及输入/输出设备,外存储器和联网数据通信设备的配置、功能、效率等指标是否符合系统方案设计要求,同时还要考虑计算机的性能/价格比。
(3)软件资源
软件资源的可行性分析主要考虑以下几点是否满足用户的要求:
①操作系统的选择;
②编译系统的选择;
③数据库管理系统的选择;
④高级编程语言的选择;
⑤汉字处理系统的选择;
⑥应用软件包的选择。
本系统在开发前,与中心的领导和有关的操作人员密切沟通,认真听取他们的意见,并吸收他们的积极观点,使本系统的开发在相当大的程度上具有一定的先进性和合理性。
第三章 需求及总体设计
3.1系统需求分析
3.1.1系统的功能需求
用户登录:用户可以申请办理一个学号和密码,然后登录。
单词查询:用户可以查找单词库中的单词。
修改密码:用户可以更改自己学号的密码。
加入生词库:用户可以自由的将生僻单词加入到生词库中
3.1.2 系统的开发环境
选择一个好的编程语言十分的重要,当前,面对众多的编程语言,很多人无从选择,而我们在本系统中选择了java语言。之所以选择java语言是因为在它强大的面向对象功能,使用它能够轻松的将界面显示和业务逻辑分开。
3.1.3 数据库设计
本系统使用的access数据库保存在网站目录下的data/bank.mdb中,该数据库中有4张表,下面分别加以描述。
数据库的逻辑设计
由于概念设计的结果是ER图,DBMS一般采用关系型(本系统所使用的MS ACCESS就是关系型的DBMS),因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。由于关系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果类似是一组关系模式的定义。如数据字典:
英汉表
汉英表
班级表
生词本
3.2系统总体功能结构设计
背单词系统需要满足来两方面的需求,这两个方面分别是用户、单词管理。用户的需求是进行各项功能的操作;管理系统对用户的信息进行操作处理,同时保存在数据库中以便用户查询;管理系统的功能最为复杂,他包括对数据库的维护、用户信息维护及分数发布情况进行维护。
用户可以根据开户申请到的学号和密码登录到系统,登录成功后可进行四种操作,一是查询,二是查看,三是修改密码,四是生词库。其总体功能如图3-1所示:
功能模块一般可分为:
查询,查找,加入生词库,使用生词库。
图3-1 模拟背单词系统功能结构图
在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。
3.3 系统E-R图
系统E-R图
第四章 系统主要功能实现
1 用户系统模块的实现
<a>. 功能
查找
查看
加入生词库
结 论
制作一款软件还真不是一朝一夕的事情,每件事情你都要认真的去做,去跟同学探讨、交流,在制作背单词系统的时候,自己在其中也能学到很多知识,运用老师所交的知识,去制作软件,没有交的可以翻阅书籍,网上找资料,同时自己也能学到一些自己不知道的,不管以后走出社会有没有用到,有没有从事这项工作,这都是一项很值得借鉴的经验。