




免费预览已结束,剩余109页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
LANZHOU UNIVERSITY OF SCIENCE & TECHNOLOGY 目录扉页 前言 摘要 Abstract 第一章 开发简介2第一节 需求分析 2第二节 系统开发环境2第三节 开发工具简介3第二章 系统开发方法12第一节 软件生存周期模型 12第二节 软件需求分析12第三节 软件设计14第四节 软件测试 15第五节 软件维护15第三章 软件设计说明17第一节 系统的主要职责 17第二节 数据流图及功能模块图18第三节 模块功能说明21第四章 C语言网上学习系统的设计与实现 29第一节 软件说明书29第二节 数据库设计57第三节 部分关键代码59系统总结与体会 96参考文献 97英文资料 98第一章 开发简介第一节 需求分析目前,在高校的实际教学环节中,仍然过分依赖于传统的面授教学模式,对于网络的开发和应用程度远远不够。随着计算机和网络技术的日益发展,深刻影响着教育、学习的方式和途径,使得日常的面授方式正逐渐向网络化、信息化的方向转变。在“C语言程序设计”课程的教学改革工作中,为充分利用校园网现有的网络资源,将该课程制成网页形式,并配合文字、声音、图片、动画、视频开发一个基于Web的多媒体辅助教学系统,既要美观又要实用,最重要的是它要适合于学生网上浏览学习,有利于提高教学效果和教学质量。经过调查研究及需求分析, c语言网上学习系统的功能如下: 教师部分的主要功能要求: 修改教师自己的基本资料。 对教程进行管理。 在网上回答学生提出的问题。 对在线测试的试题进行管理。 学生部分的主要功能要求:修改个人的基本资料。对个人提出的问题进行操作/在线提出问题。在线进行测试。浏览教程,教师情况(教师的基本个人资料)。第二节 系统开发环境硬件环境: 服务器端: 处理器:Intel Pentium 1.6G或者更高. 内存:256MB. 硬盘空间:40GB以上. 光驱:CD-ROM 48X. 显卡:SVGA显示适配器.客户端: 处理器:Intel Pentium 166MX或更高. 内存:32MB. 硬盘空间:1GB. 光驱:CD-ROM 48X. 显卡:SVGA显示适配器. 软件环境: 服务器端: 操作系统:Windows NT Server 4.0或者Windows 2000/Windows XP. 网络协议:TCP/IP. Web服务器:Internet Information Server 5.0/Personal Web Server. 数据库:Microsoft Access 2003. 浏览器:Internet Explore 6.0. 客户端: 操作系统:Windows98/Me/2000/XP. 网络协议:TCP/IP. 数据库:Microsoft Access 2003. 浏览器:Internet Explore 6.0,Netscape或者其他浏览器.第三节 开发工具简介一、B/S结构B/S结构,即Browser/Server(浏览器/服务器)结构,客户机上只要安装一个浏览器(Browser),服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过eb Server 同数据库进行数据交互。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript等)和ActiveX技术,用通过浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点,须视企业规模和地理分布确定。企业内部通过防火墙接入Internet,在整个网络采用TCP/IP协议。网络结构如下图所示:B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。 B/S模式是一种三层结构的系统。第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQ请求,管理数据库。 综合而言,B/S /采用Internet/Intranet技术,适用于广域网环境 /支持更多的客户。可根据访问量动态配置WEB服务器、应用服务器,以保证系统性能。 /客户端只需标准的浏览器 /采用面向对象技术,代码可重用性好 /系统扩展维护简单 /开发费用较高,开发周期较长 B/S 与C/S 区别: Client/Server是建立在局域网的基础上的,Browser/Server是建立在广域网的基础上的。 ()硬件环境不同:C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例如电话上网, 租用设备, 信息自己管理, 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行。()对安全要求不同 C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强。 一般高度机密的信息系统采用C/S 结构适宜, 可以通过B/S发布部分可公开信息。B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群。 ()对程序架构不同 C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑。B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上。 比C/S有更高的要求,B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统。 SUN 和IBM推的JavaBean 构件技术等,使B/S更加成熟。 ()软件重用不同C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好。B/S 对的多重结构,要求构件相对独立的功能。 能够相对较好的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。 ()系统维护不同 系统维护是软件生存周期中,开销大,相当重要C/S 程序由于整体性,必须整体考察,处理出现的问题以及系统升级难, 可能是再做一个全新的系统。B/S 构件组成方面构件个别的更换,实现系统的无缝升级。 系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。 ()处理问题不同 C/S 程序可以处理用户面固定,并且在相同区域, 安全要求高的需求,与操作系统相关, 应该都是相同的系统。B/S 建立在广域网上, 面向不同的用户群,分散地域, 这是C/S无法作到的,与操作系统平台关系最小。 二、SQL语言 SQL全称是“结构化查询语言(Structured Query Language)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle ,Sybase,Informix,SQL server这些大型的数据库管理系统,还是像Visual Foxporo,PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。1、Structured Query Language包含4个部分: 数据查询语言DQL-Data Query Language SELECT 数据操纵语言DQL-Data Manipulation Language INSERT, UPDATE, DELETE 数据定义语言DQL-Data Definition Language CREATE, ALTER, DROP 数据控制语言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK 2. SQL的优点 SQL广泛地被采用正说明了它的优点。它使全部用户,包括应用程序员、DBA管理员和终端用户受益非浅。 (1) 非过程化语言 SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集。所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。 SQL不要求用户指定对数据的存放方法。 这种特性使用户更易集中精力于要得到的结果。所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段。查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知道表是否有索引,表有什么类型的索引。 (2) 统一的语言 SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。基本的SQL 命令只需很少时间就能学会,最高级的命令在几天内便可掌握。 SQL为许多任务提供了命令,包括: 查询数据 在表中插入、修改和删除记录 建立、修改和删除数据对象 控制对数据和数据对象的存取 保证数据库一致性和完整性 以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。 (3) SQL是所有关系数据库的公共语言 由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。三、Microsoft Active Server Pages(ASP) Microsoft Active Server Pages 即我们所称的 ASP ,其实是一套微软开发的服务器端脚本环境, ASP 内含于 IIS 3.0 和 4.0 之中 , 通过 ASP 我们可以结合 HTML 网页、 ASP 指令和 ActiveX 元件建立动态、交互且高效的 WEB 服务器应用程序。有了 ASP 你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通 HTML 中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。 以下罗列了 Active Server Pages 所独具的一些特点: 1. 使用 VBScript 、 JAVAScript 等简单易懂的脚本语言,结合 HTML 代码,即可快速地完成网站的应用程序。 2. 无须 compile 编译,容易编写,可在服务器端直接执行。 3. 使用普通的文本编辑器,如 Windows 的记事本,即可进行编辑设计。 4. 与浏览器无关 (Browser Independence), 用户端只要使用可执行 HTML 码的浏览器,即可浏览 Active Server Pages 所设计的网页内容。 Active Server Pages 所使用的脚本语言 (VBScript 、 Jscript) 均在 WEB 服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。 5.Active Server Pages 能与任何 ActiveX scripting 语言相容。除了可使用 VBScript 或 JScript 语言来设计外,还通过 plug-in 的方式,使用由第三方所提供的其他脚本语言,譬如 REXX 、 Perl 、 Tcl 等。脚本引擎是处理脚本程序的 COM(Component Object Model) 物件。 6.Active Server Pages 的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。 7. 可使用服务器端的脚本来产生客户端的脚本。 四、VBScriptVBScript是个直译式、以对象为基础的叙述式程序语言 ( Object-based Scripting Language ),是由微软 ( Microsoft )公司所发展。它可以让你设计互动的网页内容,但不能单独执行,必须在浏览器或服务器上执行。VBScript 是由 Visual Basic 的一部份发展而来,它可以透过内建的控制及 ActiveX 的控制对象来构成特殊的功能。VBScript 是 VB 的一个子集,它提供的各种语句和语法、常量和变量、函数和过程的规则与VB完全相同,并且也提供了许多基本的计算、处理函数。VBScript 是标准的脚本语言,广泛应用于动态网页、大型电子商务系统、Windows系统管理等领域。VBScript 在HTML中使用.标记。Script区段可以放置在标头区段 ( 全域范围 ) 或本文区段 ( 区域范围 ) ,可以视程序需要而定,通常浏览器是由上到下加载网页数据,而 VBScript 只能存取已加载的 对象,否则会产生错误讯息。如 : 文件开始 标头区段开始 Script区段开始 Script区段结束 标头区段结束 本文区段开始本文区内容 本文区段结束 文件结束 五、JavaScript为了使网页能够具有交互性,能够包含更多活跃的元素,就有必要在网页中嵌入其它的技术。如:javascript。javascript就是适应动态网页制作的需要而诞生的一种新的编程语言,如今越来越广泛地使用于Internet网页制作上。 javascript是由 Netscape公司开发的一种脚本语言(scripting language),或者称为描述语言。在HTML基础上,使用javascript可以开发交互式Web网页。javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。 运行用javascript编写的程序需要能支持javascript语言的浏览器。javascript短小精悍, 又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。 六、HTMLHTML(Hyper Text Markup Language 超文本标记语言)是一种用来制作超文本文档的简单标记语言。用HTML编写的超文本文档称为HTML文档,它能独立于各种操作系统平(如UNIX,WINDOWS等)。HTML文档(即Homepage的源文件)是一个放置了标记的ASCII文本文件,通常它带有.html或.htm的文件扩展名。生成一个HTML文档主要有以下三种途径:1.手工直接编写(例如用你所喜爱的ASCII文本编辑器或其它HTML的编辑工具)。 2.通过某些格式转换工具将现有的其它格式文档(如WORD文档)转换成HTML文档。 3.由Web服务器(或称HTTP 服务器)一方实时动态地生成。HTML语言是通过利用各种标记(tags)来标识文档的结构以及标识超链(Hyperlink)的信息。虽然HTML语言描述了文档的结构格式,但并不能精确地定义文档信息必须如何显示和排列,而只是建议Web浏览器(如Mosiac,Netscape等)应该如何显示和排列这些信息,最终在用户面前的显示结果取决于Web浏览器本身的显示风格及其对标记的解释能力。这就是为什么同一文档在不同的浏览器中展示的效果会不一样。HTML语句通常由三对标记来构成一个HTML文档的骨架,它们是:头部信息文档主体,正文部分 其中在最外层,表示这对标记间的内容是HTML文档。之间包括文档的头部信息,如文档总标题等,若不需头部信息则可省略此标记。我们还会看到一些Hompage省略标记,因为.html或.htm文件被Web浏览器默认为是HTML文档。标记一般不省略,表示正文内容的开始。七、CSS CSS即Cascading Style Sheets(级联样式单)的缩写,我们又常称这为风格样式单、层叠样式表,顾名思义,是用来进行网页风格设计的。比如,我想让我的链接字未点击时是蓝色的,当鼠标移上去后字变成红色的且有下划线,这就是一种风格。通过设立样式表,我们可以统一地控制HMTL中各标志的显示属性。 在主页制作时采用CSS技术,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制。只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和格式。它的作用可以达到:(1)在几乎所有的浏览器上都可以使用。(2)以前一些非得通过图片转换实现的功能,现在只要用CSS就可以轻松实现,从而更快地下载页面。(3)使页面的字体变得更漂亮,更容易编排,使页面真正赏心悦目。(4)你可以轻松地控制页面的布局。(5)你可以将许多网页的风格格式同时更新,不用再一页一页地更新了。你可以将站点上所有的网页风格都使用一个CSS文件进行控制,只要修改这个CSS文件中相应的行,那么整个站点的所有页面都会随之发生变动。八、IISIIS是Internet Information Server的缩写,它是微软公司主推的服务器。IIS与WindowNT Server完全集成在一起,因而用户能够利用Windows NT Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。IIS支持HTTP(Hypertext Transfer Protocol,超文本传输协议),FTP(Fele Transfer Protocol,文件传输协议)以及SMTP协议,通过使用CGI和ISAPI,IIS可以得到高度的扩展。IIS的一个重要特性是支持ASP。IIS 3.0版本以后引入了ASP,可以很容易的张贴动态内容和开发基于Web的应用程序。对于诸如VBScript,JScript开发软件,或者由Visual Basic,Java,Visual C+开发系统,以及现有的CGI和WinCGI脚本开发的应用程序,IIS都提供强大的本地支持。九、ACCESS 2003Access是Office办公套件中一个极为重要的组成部分。后来微软公司通过大量地改进,将Access的新版本功能变得更加强大。不管是处理公司的客户订单数据;管理自己的个人通讯录;还是大量科研数据的记录和处理,人们都可以利用它来解决大量数据的管理工作。 Access具有良好的界面,采用了与Windows和Microsoft Office系列软件完全一致的风格,用户可以通过菜单和对话框操作,不用编写任何命令便能有效地实现各种功能的操作,完成数据管理任务。Microsoft Office的一个集成化的程序设计语言是VBA(Visual Basic for Applications),使用VBA可以创建非常实用的数据库应用系统。 Access可以作为个人计算机终端和大型主机系统之间的桥梁。通过如SQL、ODBC等特定技术,方便地存储、检索和处理服务器平台上的关键信息,提供了灵活、可靠、安全的客户/服务器解决方案。 Access可以接受多种格式的数据,从而方便了用户在不同系统之间进行数据转换。随着Internet网络应用的发展,Access还增加了使用信息发布Web 向导和用HTML格式导出对象的功能。注意:Access的特点 Access是一个中、小型关系数据库管理系统。Access又是一个完全面向对象,采用事件驱动机制的最新关系数据库管理系统,使得数据库的应用与开发更加便捷、灵活。Access是一个同时面向数据库最终用户和数据库开发人员的关系数据库管理系统。Access是一个典型的开放式数据库管理系统。Access支持多媒体的应用与开发。 Access既可以在单用户环境下工作也可以在多用户环境下工作,并且具有完善的安全管理机制。Access内置了大量的函数。Access提供了许多宏操作。Access提供了联机帮助功能。第二章 系统开发方法 主要开发方法及概念参考软件开发思路可以看作是一种方法,一种思想,就是指导大家如何更好地开发软件的方法和原则。软件开发需要一些有效的工具,就是帮助大家分析,设计软件的工具,如:流程图,数据字典,以及一些辅助软件等。第一节 软件生存期模型软件同其他事务一样也有一个孕育,诞生,成长,成熟,衰亡的过程,这个过程就叫做软件生存期。从概念提出的那一刻开始,软件产品就进入了软件生命周期。在经历需求、分析、设计、实现、部署后,软件将被使用并进入维护阶段,直到最后由于缺少维护费用而逐渐消亡。这样的一个过程,称为生命周期模型(Life Cycle Model)。 典型的几种生命周期模型包括瀑布模型、快速原型模型、迭代模型。瀑布模型(Waterfall Model)首先由Royce提出。该模型由于酷似瀑布闻名。在该模型中,首先确定需求,并接受客户和SQA小组的验证。然后拟定规格说明,同样通过验证后,进入计划阶段可以看出,瀑布模型中至关重要的一点是只有当一个阶段的文档已经编制好并获得SQA小组的认可才可以进入下一个阶段。这样,瀑布模型通过强制性的要求提供规约文档来确保每个阶段都能很好的完成任务。但是实际上往往难以办到,因为整个的模型几乎都是以文档驱动的,这对于非专业的用户来说是难以阅读和理解的。虽然瀑布模型有很多很好的思想可以借鉴,但是在过程能力上有天生的缺陷。 第二节 软件需求分析需求开发又分为需求获取、需求分析、编写规格说明书和需求验证。以下列出和讲解分析常规的步骤,当然应按照项目的大小和特点等实际情况我们应该自己确定合适的步骤 1 需求获取 确定需求开发过程确定如何组织需求的收集、分析、细化并核实的步骤,并将它编写成文档。 2 需求分析 绘制关联图、创建开发原型、分析可行性、确定需求优先级、为需求建立模型、编写数据字典、应用质量功能调配。 3 编写规格说明书 项目视图和范围文档包含了业务需求,而使用实例文档则包含了用户需求 4 需求验证 审查需求文档、依据需求编写测试用例、编写用户手册、确定合格的标准需求分析过程是软件过程的一个很重要的部分。什么是需求分析,简言之就是分析软件用户的需求,细致的进行调查,把用户做什么的要求之中转化为一个完全的,精细的软件逻辑模型,并写出软件的需求规格说明,准确的表达用户的要求。需求阶段我们可以细分为需求调研和需求分析两个小阶段,需求调研需要充分细致的了解客户目标,用户业务内容、流程等,这是一个对需求的采集过程,是进行需求分析的基础准备。需求过程,也有叫做需求工程和需求阶段的,包括了需求开发和需求管理,他们所涉及到的具体工作流如图所示: 需求分析的这个过程,我们可以称它为需求工程,也有叫做需求过程和需求阶段的。需求工程包括了需求开发和需求管理,他们所涉及到的具体工作流如上图标明的那样。第三节 软件设计程序设计就是编程序,这是大家熟悉的,很多人印象中的“做软件”就是编程序,因此可能有人会把程序设计和软件等同起来,这是不对的,软件设计是对软件的整体结构,程序结构,文件结构,接口定义等的设计,是宏观上的设计。而程序设计仅仅是软件设计的实现,所以作软件决不简单等同于编程序。 需求分析阶段解决的是“怎么做”的问题,而设计阶段就是解决“如何做”的问题。软件设计阶段所作出关于软件总体结构等的决策将直接影响软件开发的难度,软件维护的难易程度,它将最终决定软件质量的好坏和软件开发的成败。 软件设计有两个步骤:概要设计和详细设计(过程设计)。概要设计奖软件需求转化为数据结构和软件的系统过程。详细设计通过对结构表示进行细化,得到软件的详细地数据结构和算法。概要设计阶段要完成的工作有:制定规范,首先为软件开发组制定在设计时应该共同遵守的标准(如文档编写规范、函数命名准则等),以便协调组内各成员的工作:软件体系结构的总体设计;处理方式设计;数据结构设计;可靠性设计;编写概要设计阶段的文档;概要设计评审;详细设计阶段要完成的任务是:确定软件各个组成部分内的算法以及各部分的内部数据组织;选定某种过程的表达形式来描述算法;进行详细设计的评审;也就是说概要设计是更高层的设计,而详细设计是更面向实现的设计。软件设计的策略有:自顶向下、自低向上、以及这两种的结合等等。自顶向下:即先从大的模块入手,把系统分成几个大的模块,然后每个大模块在分成小的模块,如此逐步细分下去,知道模块够小,能够实现为止。自底向上:与此相反,先从系统要用到的最底层的小模块设计起,然后组合某几个小模块成为一个大的模块,如此逐步综合,直到设计出整个系统。以上两种策略的综合,即可能先用自顶向下的策略设计出某几个大的模块,某个大模块的设计又采用了自低向上的设计方法,等等。当对系统的总体结构非常清晰是可采用自顶向下的方法。而当系统的总体结构一时难以把握,可以先从小处入手,采用自底向上的方法,一个一个模块的构造,直到构造出整个系统。需要说明的是,在需求分析阶段采用的“原型化方法”,也可以应用于软件设计阶段,实际上在软件开发的大部分过程,原型化的思想都可采用。软件设计的工具有:数据流图、数据字典、流程图、N-S图(盒图)、PAD图、判定表、PDL(程序设计语言)等。第四节 软件测试在软件程序编码完成之后,在软件投入使用之前要进行软件测试。何谓软件测试,简言之:软件测试是为了发现错误而执行程序的过程。识别测试需求是软件测试的第一步。如果开发人员能够提供完整的需求文档和接口文档,那固然好。可以根据需求文档中描述的每个功能项目的输入、处理过程和输出,来设计测试用例。软件输入: 与该需求相关的一切可能输入,可以从这几方面考虑,输入来源、输入参数的数量、输入参数的度量单位、输入参数的时间要求、输入参数的精度和输入参数的有效输入范围。在测试用例设计中,这部分内容作为测试用例输入的依据。 处理过程: 描述对输入数据所执行的所有操作和如何获得输出的过程。测试人员了解处理过程即可,在测试过程中发现 BUG 时候,如果对处理过程了解的深入,对定位问题根源有很大的帮助。 软件输出: 描述每个需求的输出结果,包括输出的位置(如计算机显示器、打印机,文件),输出参数的数量、输出参数的度量单位、输出参数的时序、输出参数精确度、输出参数的有效输出范围、错误消息。在测试用例设计中,这部分内容作为测试用例的预期输出。 性能要求: 与该需求相关的性能要求,比如 “ 插入 ATM 取款卡后, 3 秒钟内弹出提示用户取款的图形界面 ” 。 3 秒钟这一限制,就是对需求的基本性能要求。 运行环境: 软件的运行所需的环境,包括硬件平台的要求、操作系统的要求、数据库的要求,以及其它相关支撑软件的要求。 第五节 软件维护1.什么是软件维护在软件投入运行后对软件所进行的修改就是维护。2.为什么要进行软件维护软件维护的原因可分为四类: 改正性维护; 适应性维护; 完善性维护; 预防性维护;3.如何做到软件的可维护性软件的可维护性就是指软件维护的难易程度。做到软件的可维护性要注意以下几点:建立明确的软件质量目标和优先级;使用提高软件质量的技术和工具,如:面向对象技术,软件体系结构思想等;进行明确的质量保证审查;选择可维护的程序设计语言;做好程序的文档等等。第三章 软件设计说明本系统是一个C语言学习系统。学生方面涉及到C语言的学习、测试、在线提问及查看问题回答等,教师方面涉及到C语言教程的管理、回答问题及试题管理。为了使此系统有更强的友好性,我们在设计面时,考虑到了用户的方便与快捷使用户一目了然,更好更快地进行C语言的学习。第一节 系统的主要职责此系统为一个学习系统,它的最基本功能是使用户完成学习掌握,测试程度等有关C语言的知识。对于此课题,实际上是以Web为中心,采用TCP/IP,HTTP为传输协议,客户端访问Web以及与Web相连的后台数据库,是一种浏览器/服务器即B/S模式结构。B/S模式由浏览器,Web服务器,数据库服务器三个层次组成。在这种模式下,用户端使用一个通用的浏览器,代替了形形色色的应用软件。在HTTP协议的支持下,用户端通过浏览器发出数据请求,由Web服务器向后台数据库服务器取出数据并进行计算,将结果返回浏览器,多级用户的操作均可通过浏览器进行。本系统可采用ASP+ADO+Access2003的web技术为开发手段。建立和运行动态、交互、高效的网络服务器的C语言学习系统应用程序整个系统由两个部分组成:第一个大模块是学习模块,主要针对学习者设计。另一个大模块是教师模块,这里主要涉及到对与教程的管理及答疑的相关环节。针对某一学科,建立起大规模的教育资源,并安装在数据库服务其中,学生可以任意选择系统资源中罗列出的教师教程,发到学生所在的浏览器端,学生可以按自己的计划进行学习,本意章节的最后都会进行章节测试,答完试题之后,可以在提交之后,有成绩的显示,这样可以是学习者增加学习的兴趣。另外,在学习完相关章节后,学生也可以提出自己的问题,存放在提问数据库,等老师查看完并作完回答,下次学生就可以查看自己问题答案,这很好地完成了学生和老师的互动性。在教师的模块中,最主要的是教师同时也担当了管理者的身份,教师可以在教程管理中对教程进行增加,删改等操作。而在答疑中,老师可以查看到学生所提问题,在回答完之后,学生便可以得到相应答案。另外,教师也有教师资料页面,上面会给出此老师所负责的章节及老师的资料。同时,教师还负责各个章节的测试试题管理。学习系统是个比较专业的系统。在这里我们即要考虑到学习者的方便及简洁,也考虑到了教师做管理者的好处,使此系统具有很好的学习和管理性。第二节 数据流图及功能模块图一、系统流程图 学生信息教师信息注册登 陆存储学生信息存储教师信息C语言学习教程后 台数 据问 题信 息测试信 息存 储存 储退出欢迎下次登陆二、数据流图 学生教师注册信息D2 教师信息D1 学生信息学习C语言问题信息测试信息D4 问题信息D3 测试信息退出C语言学习系统学生教师三、E-R图 用户提问提问块测试管理试题管理测试块学习C语言教程修改修改个人资料个人资料测试测试块判分判分块教师回答教四、操作流程图 用户登录学生块教师块资料修改学习提问查看资料修改教程答疑试题返回测试五、模块划分 C语言学习系统用户教师登录用户子系统教师子系统个人资料修改提出问题浏览教程在线测试个人资料修改回答问题试题管理教程管理第三节 模块功能说明 注册模块1)IPO图 功能:如果用户是第一次登录,则需要注册。当用户在首页中选中“注册”一项时,就进行注册。当用户填写完并将结果交给指定程序进行检查结果的合法性。如果填写结果合法,则将表单内容交给页面处理。用户填写的用户名应唯一。将用户名唯一的用户信息写入数据库。注册结果有两种:注册成功,注册不成功;如果注册不成功,提示用户重新注册。 输入:用户名,姓名,密码,学号,电子邮件,所属系别,所属班级。 处理: 验证输入的合法性。当用户提交后,首先检查用户输入是否合法,如果合法,则将结果进行提交。功能图示:用户检查合法性录入数据库不成功提示重新登录从表单获取输入数据。数据验证合法后进入增加用户页面处理。检验用户名的唯一性。连接数据库,打开用户数据表。以输入“用户名”为查询条件创建数据集,查看输入用户名是否存在。若已存在,则返回上一页,重新输入用户名;若不存在,则进行插入操作。功能图示: 用 户 名唯 一 性已存在不存在不成功插 入数据库 登录模块1)用户登录模块IPO图:功能:在本页面中,在登录中输入登录名,密码和身份后,Form表单将数据传到denglu.asp程序段进行处理,验证用户身份,成功则进入系统,否则重新输入。输入:用户名,密码,身份。处理:从Form获取获取输入数据,当按下【登录】按钮后,输入的数据由Form表单提交到denglu.asp页面。在denglu.asp页面首先要使用Request对象获取用户输入数据。判断是否为空,空则重新输入。以条件语句判断输入是否为空,为空则运行脚本语言,显示出错提示框,将页面导向首页,重新输入;若不为空,则进行数据库连接。检索用户数据表,查看用户是否存在。使用ODBC方法连接数据库,根据用户不同,登录身份打开不同的数据库。以用户名为检索条件,,查看用户是否存在.存在则进入系统;若不在,给出出错提示,返回首页,重新输入,或进行注册.输出:登录成功或失败页面)模块所使用的数据表.本页面使用了shu.mdb数据库中的用户,教师两个数据表.功能图示: 数据表检 索教 师学生表教师表存 在不存在进入系统学 生返 回 教程浏览此模块主要负责C语言课程学习的内容,其中可以点击进行相关章节的学习,也可以点击老师姓名查看老师资料,同时学生也可以直接进入测试系统。功能示图: 教 程 浏 览教师资料提问学习测试查 阅问 题进入章节判 断教 师信息表问 题管理表教 程数据库问题模块 修改个人资料)学生修改个人资料模块IPO图 功能:对学生基本信息的修改。可以修改用户的密码,姓名,学号,电子邮件,系别和班级等个人信息。 输入:更改的用户密码,姓名,学号,电子邮件,系别,班级。 处理:(1) 打开数据库,显示个人信息。获取用户的编号,以用户编号为检条件进行查询,选出指定记录集,显示在页面上。(2) 将更改后的信息保存在数据库中。 输出:更改成功或失败的页面。1) 学生修改个人资料页面如图所示。模块使用的数据表:本页面使用了shu.mdb数据库中的用户数据表,班级表。 修改显示个人信息输入新信息保存更新数据库 教师资料浏览在此页面中,你可以了解到教师的详细情况。除此之外,还有文件链接,可以看到本教师负责的章节内容。1) 教师信息浏览模块IPO图。 功能:在页面中,点击教师姓名,就链接到本页面。在不能页面中,用户可以浏览教师的基本情况。 输入:教师姓名。 处理:(1) 获取教师编号。(2) 建立数据库链接。以教师编号为检索条件进行查询,选出指定记录集,显示在页面上。 输出:教师信息显示。功能示图: 用 户 测试试题 作答提交数据库 查看问题模块 查看问题模块提 问 模 块查 看 问 题、查看问题模块(1)IPO图 功能:在本页面,学生用户可以查看自己已提交过的问题。若老师已给出答案,可以进行查看答案。若未提出任何问题,可以进入提问模块页面进行提问。 处理:获取用户编号,以用户编号为查询条件对问题进行查询。显示数据集中的所有记录。输出:用户已提交的问题及相应答复或没有任何问题的提示及连接到页面的超链接。(2)模块使用的数据库。本程序使用了#data.asp数据库中的问题数据表,shu.asp数据库中的教程数据表。、提出问题模块IPO图 :功能:在页面中输入问题,然后将数据提交到增加页面进行处理。输入:用户名,密码,问题标题,问题所在章节,问题内容。处理:在页面中按要求输入数据。验证用户身份,不是系统用户要先注册。连接数据库,打开用户数据表。以输入数据“用户名”为查询条件创建数据集查看输入用户名是否存在。若不存在,则返回上一页,重新输入用户名;若存在,则进行插入操作。将数据插入数据库。输出:问题提交成功或要求注册的提示。功能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 古建筑文物保护措施解析措施
- 部编版一年级语文上册课程实施计划
- 教师课程开发读书计划
- 2025年电子商务人员继续教育个人学习计划
- 金属材料检测质量控制计划
- 企业讲师能力提升计划
- 靖边县第十小学“双培养”家长志愿服务计划
- 科研设备安装工期提前保证措施
- 租地被征用合同(标准版)
- 物业费收缴计划费用结构
- 2025江苏苏州昆山国创投资集团有限公司第二期招聘10人笔试参考题库附带答案详解
- 2025至2030年中国应急产业市场供需现状及投资战略研究报告
- 2025-2026学年译林版(三起)(2024)小学英语三年级上册教学计划及进度表
- 中医院临床路径培训课件
- 2025年甘肃普通高中学业水平选择性考试化学真题及答案
- 2024年合肥演艺集团有限公司社会招聘4人笔试备考试题带答案详解
- 2025年N1叉车司机模拟考试1000题及答案
- 2025年秋期部编人教版六年级上册语文全册核心素养教案(教学反思无内容+二次备课版)
- 养老护理员培训班课件
- 肾挫裂伤护理
- 不买社保的劳动协议书
评论
0/150
提交评论