1、此文档收集于网络,如有侵权请联系网站删除摘 要北方现代报业集团(原北方日报社)是一家以日报为旗帜和核心、报刊种类齐全、宣传力量强大、经济实力雄厚、产业功能完备的社会主义现代化报业集团,集团(北方日报社)成立于1984年9月,是集日报、晚报、晨报、经济报、法制报、期刊等在内的综合性报业集团。目前,集团为了更好的解决广告业务的接洽,提高广告创意水平与质量,准备开发一套广告管理系统以便能够高效快捷的处理广告合同。北方现代报业集团广告部每天承接旗下各类报刊杂志的大量广告业务,并且需要根据广告合同预定版面,版面部根据预约的版面信息审阅与制订版面。同时为了便于预约与审订,还需要提供版面预订情况的检索功能。
2、本文讨论了系统开发中采用的开发模式以及在系统中使用的技术。本次设计应采用MVC三层架构思想构建网站和SQL Server数据库进行开发。关键词:C#,广告合同管理系统,MVC,SQL Server。ABSTRACTNorth Modern Newspaper Group (formerly the Northern Daily) is a daily newspaper for the banner and the core, the press range, powerful propaganda power, economic strength, industrial-featured s
3、ocialist modernization Newspaper Group, Group (Northern Daily) established in September 1984, it is a daily newspaper, Evening News, Morning News, Economic News, Legal News, periodicals, etc., integrated Newspaper Group.Currently, the group in order to better solve the advertising business contact,
4、to improve the level and quality of creative, ready to develop an advertising management system, as the developer of the project should be based on Case System Requirements and Analysis contains a task all use cases. No need to realize the function Task II contains, but the database design and syste
5、m design should facilitate the future implementation of Task II.North Modern Newspaper Groups advertising department to undertake a large number of various newspapers and magazines advertising business every day, and need to book layouts, layout unit according to advertising contracts reviewed in ac
6、cordance with reservation information and the development of the layout of the layout. Meanwhile, in order to facilitate the ranking of the reservation and is also required to provide forum search function bookings.This paper discusses the development of the system and the technology used to develop
7、 models for use in the system. The design should be thought to build three-tier MVC website and SQL Server database development.KEY WORDS:C# ,Advertising Contract Management System,MVC,SQLServer此文档仅供学习和交流目录第1章 绪 论11.1 课题的提出11.2 国内现状研究11.3 系统特点21.4 论文组织结构2第2章 理论及技术基础32.1 C#语言32.2 MVC42.3 MVC架构52.4 SQ
8、L Server数据库6第3章 系统需求分析83.1 系统可行性分析83.2系统基本情况描述9顶层用例分布图93.3 系统功能分析103.3.1 登录103.3.2 用户管理113.3.3 预约管理133.3.4 审定版面管理143.3.5 查询版面管理153.4 软硬件环境要求16硬件16软件16第4章 系统总体设计164.1 整体功能模块分析164.2 功能模块细分与设计174.2.1 管理员管理模块184.2.2 广告合同管理模块184.2.3 预约版面管理模块184.2.4 审定版面管理模块184.2.5 查询版面管理模块184.3 本章小结18第5章 详细设计20数据库设计20第6章
9、 系统测试226.1 测试目标226.2 黑盒测试和白盒测试236.3 测试准则236.4 白盒测试236.5 黑盒测试25第七章 结束语26致谢27参考文献28第1章 绪 论1.1 课题的提出现如今随着新闻行业突飞猛进般的发展,使得新闻不再仅仅局限于纸质报纸这一种方式,在网站上,手机上,微信里,浏览器里都可以阅读最新的电子报纸,让人们在平时可以更加方便的阅读,更加方便的去了解时政要闻,人们也可以有更多的阅读选择,但是由于新的发布的权威性以及时效性,使得老牌新闻报社还是活跃在第一线上,使人们首选的目标。在报社的发布的报纸中,不仅仅是需要在第一时间发出最新的,最真实的报道,同样也有着宣传的作用,
10、然而大量的广告合同接踵而至,若是没有一个合理的管理系统,将会使得效率变低,并且难以保证数据的安全性,因此为了提高广告创意水平,解决广告业务的洽谈,能够高效率,高质量的完整广告合同管理,需要一个系统来管理广告合同。1.2 国内现状研究随着我国中央及政府高度重视新闻事业,对新闻事业的发展予以积极支持与扶持,新闻行业组织努力推动新闻队伍的建设,提高新闻从业人员的能力和业务素质。使得新闻媒体变得多元化,不再仅仅拘束在纸质报纸和电视新闻,并且伴随着科技的发展,电子报刊也应运而生,让报纸、期刊杂志变得更加随手可及。伴随着微信的兴起,电子新闻更加成为了人们阅读新闻的新方式。但是就是在这样的一个新闻载体飞速发
11、展的时代,一个高效的广告管理系统却并没有得到人们的重视,伴随着广告合同的增多,广告的处理效率也慢慢变得越来越低,部分报社选择使用了广告合同管理系统,但大部分报社并不熟悉这一系统,依旧在低效率的管理着广告合同。1.3 系统特点本系统的开发就是专门针对于报纸新闻合同的管理来进行,力争提高管理效率,减轻工作量,本系统分为两种角色登陆:系统管理员和部门用户。所有角色通过登录获得相应的权限。版面分为预约版面,审定版面,查询版面,登录版面。本系统使用MVC框架搭建,灵活运用了其自带的部分功能。并采用三层架构思想,使其结构更加清晰,其中View层活用HTML,CSS,JAVASCRIPT等语言美化界面;使用
12、SQL Server数据库,有效的保证了数据的安全性。1.4 论文组织结构本文共分七章,各章的主要内容如下:第一章“绪论”部分主要综述了系统的开发背景、国内研究现状、系统特点及组织结构。第二章“理论及技术基础”部分对论文研究中所用到的理论、技术简单的介绍。第三章“系统需求分析”部分主要描述了系统的需求分析过程,包括系统的基本情况描述,系统功能分析,可行性分析以及软硬件环境要求。第四章“总体设计”部分对系统的总体设计过程做了阐述,主要包括系统的整体功能模块分析,功能模块细分与设计。第五章“详细设计”部分对系统的详细设计过程做了阐述,主要包括系统的数据库设计和界面设计。第六章“系统测试”部分主要对
13、本系统进行了测试,主要包括测试目标,测试准则以及根据测试目标和测试准则进行黑盒测试和白盒测试。第2章 理论及技术基础2.1 C#语言C#是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究院Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,他借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而它是微软公司.NET windows网络框架的主角。C#继承了C语言的语法风
14、格,同时又继承了C+的面向对象特性。不同的是,C#的对象模型已经面向Internet进行了重新设计,使用的是.NET框架的类库;C#不再提供指针类型的支持,使得程序不能随便访问内存地址空间,从而更加健壮;C#不再支持多重继承,避免了以往类层次结构由于多重继承带来的可怕后果。.NET框架为C#提供了一个强大的、易用的、逻辑结构一致的程序设计环境。同时,公共语言运行时(Common Language Runtime)为C#程序语言提供了一个托管的运行时环境,使程序比以往更加稳定、安全。其特点有:语言简洁、保留了C+的强大功能、快速应用开发功能。语言的自由性、强大的Web服务器控件、支持跨平台、与X
15、ML相融合。C#的特点:1. 完全面向对象。2. 支持分布式,之所以有C#,是因为微软相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上。所以C#一出生就注定了能很好解决分布式问题。3. 跟Java类似,C#代码经过编译后,成为了一种IL(中间语言)。在运行时,再把IL编译为平台专用的代码。4. 健壮,C#在检查程序错误和编译与运行时错误一点也不逊于Java,C#也用了自动管理内存机制。5. C#不像Java那样完全摒弃了指针和手动内存管理。C#默认情况下是不能使用指针的,程序员在有必要时可以打开指针来使用。这样可以保证编程的灵活性。6. 安全性:C#的安全性是有.net平台来提
16、供的。C#代码编译后成为IL语言。是一种受控代码,.net提供类型安全检查等机制保证代码是安全的。7. 可移植性:由于C#使用类似Java的中间语言机制。使得C#也跟Java类似,可以很方便的移植到其他系统。在运行时,再把中间代码编译为适合特定机器的代码。8. 解释性:C#也是一种特殊的解释性语言。9. 高性能:C#把代码编译成中间语言后,可以高效的执行程序。10. 多线程:与Java类似,可以由一个主进程分出多个执行小任务的多线程。11. 组件模式:C#很适合组件开发。各个组件可以由其他语言实现的,然后集成在.net中。C#是在Java流行起来后所诞生的一种新的语言。由于微软在操作系统上占有
17、很大的优势。在以往的开发中累积了不少经验,所形成的.net平台,所以C#在Windows方面可以说比Java具有更大的优势。如果单纯从技术上来讲,C#在网络编程上可以与Java匹敌。C#还在Windows Forms也有一定的优势。C#是一种非常类似于C+的语言,风格是更接近于Java,不管是C+程序员还是Java程序员,都可以很方便的转到C#上来。C#的强大是依赖于.net的发展,而.net的发展是看微软在.net上的决心和投入有多少。从Windows 2003和Vista系统可以看出(前者内置.net1.1,后者内置.net2.0。).Net在Windows编程中具有重要的战略意义。C#目
18、前主要是应用在网络编程上,其他领域比如数据库、窗体编程,都逐渐在增大。2.2 MVC MVC全名是Model View Controller,是模型(model)-视图(view)控制器(controller)的缩写,一种软件设计典范,一种业务逻辑、数据、界面分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分为三个核心部件:模型、视图和控制器。它们各自处理
19、自己的任务。最典型的MVC就是JSP+serviet+Javabean的模式。模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能像EJBs和ColdFusion Components这样的结构对象来处理数据库,被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需要写一次就可以被多个视图提供数据,由于应用于模型的代码只需要写一次就可以被多个视图重用,所以减少了代码的重复性。视图是用户看到并与之交互的界面。对老式的Web应用程序来说,试图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在
20、视图中扮演者重要的角色,但一些新的技术层出不穷,它们包括Adobe Flash和像XHTML,XML/XSL,WML等一些标识语言和Web services。MVC的好处是它能够为应用程序处理很多不同的视图。在视图中其实并没有真正的处理发生不管这些数据是联机存储还是一个雇员列表,作为视图来讲,他只是最为倚重输出数据并允许用户操纵的方式。控制器接受用户的输入并调用模型和视图去完成用户的需求,所以当单击Web页面中的超链接和发送HTML表单是,控制器本身是不输出任何东西和做任何处理的。它只接收请求并决定调用那个模型构件去处理请求,然后再决定用哪个视图来显示返回的数据。2.3 MVC架构MVC最初是
21、在Smalltalk-80中被用来构建用户界面的。M代表模型Model, V代表视图View, C代表控制器Controller。 MVC的目的是增加代码的重用率,减少数据表达,数据描述和应用操作的耦合度。同时也使得软件可维护性,可修复性,可扩展性,灵活性以及封装性大大提高。 通过把数据模式从各种可以被存取和控制的数据中分离出来可以改善分布式系统的设计。MVC设计模式由三部分组成。模型是应用对象,没有用户界面。视图表示它在屏幕上的显示,代表流向用户的数据。控制器定义用户界面对用户输入的响应方式,负责把用户的动作转成针对Model的操作。Model 通过更新View的数据来反映数据的变化。2.4
22、 SQL Server数据库SQL Server是微软公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98的膝上型电脑到运行Microsoft Windows 2012的大型多处理器的服务器等多种平台使用。Microsoft SQL Server是一个全面的数据库平台,使用了集成的商业智能(BI)工具提供了企业级的数据管理。Microsoft SQL Server数据库引擎为关系型数据和结构化数据提供了安全可靠的存储功能,可以建构和管理用于业务的高可用和高性能的数据应用程序。SQL Server是一个关系型数据库
23、管理系统,它最初是由Microsoft,Sybase和Ashton-Tate三家公司共同研发的,于1998年推出了第一个OS/2版本,在Windows NT推出后,Microsoft与Sybase在SQL Server的开发上就分道扬镳了,Microsoft将SQL Server移植到Windows NT系统上专注于开发推广SQL Server的Windows NT版本,Sybase则较专注于SQL Server在UNIX操作系统上的应用。Microsoft SQL Server以后简称为SQL Server或MS SQL Server。随着信息技术的发展,计算机处理数据的方式也发生着变化文件
24、管理系统-数据库管理系统。Microsoft SQL Server是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的SQL语言在客户机与服务器之间传递客户机的请求与服务器的处理结果。众所周知,SQL Server能够满足今天的商业环境要求不同类型的数据库解决方案。它一种应用官方广泛的数据库管理系统,具有许多显著地优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。性能、可伸缩性级可靠性是基本要求,而进入市场时间也是非常关键。除这些SQL Server的优点外,SQL Server
25、还为数据库管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。从数据库管理和分析角度看,将原始数据转化为商业智能和充分利用Web带来的机会非常重要。作为一个完备的数据库和数据分析包,SQL Server为快速开发新一代企业级商业应用程序、为企业赢得核心竞争优势打开了胜利之门。作为重要的基准测试可伸缩性和速度奖的纪录保持者,SQL Server是一个具备完全Web支持的数据库产品,提供了对可标记扩展语言(XML)的核心支持以及在Internet上和防火墙外进行查询能力。SQL Server的有点众多,但是MicrosoftSQL Server和其他数据库产品相比之下也存
26、在着以下的劣势:1开放性。正能运行在微软的Windows平台,没有丝毫开放性可言。2可伸缩性,并行性。并行实施和共存建模并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。3性能稳定性。SQL Server当用户连接多时性能会变得很差,并且不够稳定。4使用风险。SQL Server完全重写的代码,经历了长期的测试,不断地延迟,许多功能需要时间来证明。并不兼容早期产品,使用需要冒一定的风险。5客户端支持及应用模式。只支持C/S模式。但是SQL Server仍具有以下特点:可信任性、高效性、智能性。服务器级别的安全机制、数据库级别的安全机制、数据库对象级别的安全机制。第3章 系统需求分析随着网
27、络科技的飞速发展和移动客户端的盛行,使得报刊行业不再仅仅局限于纸质产品,使得人们对于报刊杂志的阅读更为便利,这也使得大量广告商的加入。利用网络技术来提高广告合同的高效安全管理成为了一个急需解决的问题,本次毕业设计便开发了“广告合同管理项目”3.1 系统可行性分析在现行系统初步调查的基础上就可以提出新系统目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。新系统目标应充分体现报社广告部门的战略目标、发展方向和基本特点,同时,新系统目标应该和现行系统的各项基本功能密切相关,并且可以分期分批实现。需要指出的是,新系统目标不可能在总体规划阶段就提得非常具体,它还将在开发过程中逐步明确和
28、定量化。新系统的目标确定后,就可以从以下三方面对能否实现新系统目标进行可行性分析:(1)技术可行性。根据新系统目标来衡量所需的技术是否具备,一般可从硬件、软件的性能要求、环境条件、技术人员水平和数量等方面去考虑和分析,其中开发人员的技术力量应首先考虑能力与水平,并考虑近期内可以培养和发展的技术人员。(2)经济可行性。估算新系统的开发费用和今后的运行、维护费用,估计新系统将获得的效益,并将费用与效益进行比较,看是否有利。系统的效益可以从经济效益和社会效益两方面考虑。对于车站售票管理系统则应着重分析其社会效益。例如,系统投入运行后可以提供哪些以前无法及时提供的信息,用户查询和使用信息的方便程度提高
29、多少、速度增加了多少,对于管理人员进行决策提供了多少帮助等等。(3)运行可行性。对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现有管理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。按上述三方面进行可行性分析、研究后,我们认为该项目是可行的。3.2系统基本情况描述建立广告合同管理项目网站,为实现不同用户登陆获取不同权限的操作,将系统的角色分为两种:系统管理员和部门用户。所有角色通过登录获取相应的权限。部门用户又分为版面部员工和广告部员工。顶层用例分布图如图3.1所示:图3.13.3 系统功能分析3.3.1 登录用户登录
30、在每一个系统中都占有着很重要的地位,登录设计的好坏直接决定了系统是否能够健全的使用得一个重要的标志3.2.1 登录系统用例名称登录系统功能简述用户进行任何的操作,都必须首先登录到这个系统。此用例用于处理用户的登录后置条件登录成功前置条件无基本流1、 系统显示登录页面(如图4);2、 用户输入“用户名”、“密码”并选择“角色”后单击“登录”按钮;3、 系统验证用户权限:如果验证通过,将根据不同的用户显示不同的主页面(如图5、图6、图7)。扩展流如果验证不通过,系统返回到登录页面,并显示错误信息。备注无图3.2 系统登录图图4图5图6图73.3.2 用户管理对于管理员,主要拥有对用户的添加,修改,
31、查看,删除等操作。系统管理员具有此功能模块的权限。系统管理员可以添加、更改和删除普通用户信息并可以设置普通用户的登录密码。系统只提供一个管理员用户的用户名个密码,在系统部署时通过相应的配置文件指定并初始化。本用例包括添加用户、删除用户两个子用例。添加用户:用例名称添加用户功能简述添加部门用户信息后置条件新增的用户信息存入系统前置条件用户以“系统管理员”的身份成功登录。基本流1、 用户单击系统管理员主界面的“用户管理”菜单项;2、 系统显示用户管理页面(如图8所示);3、 用户单击“添加用户”按钮;4、 系统显示添加用户页面。5、 用户输入用户信息并提交,添加用户的用户类别可以是“广告部员工”或
32、“版面部员工”。6、 系统验证输入信息成功后保存,并返回“用户管理”页面。扩展流如果系统验证输入信息无效则返回“添加用户”页面,并显示错误信息。备注用户的基本信息包括用户名、姓名、密码、电子邮件等。图8删除用户用例名称删除管理功能简述删除部门员工信息后置条件用户信息从系统中删除前置条件用户以“系统管理员”身份成功登录。基本流1 用户单击系统管理员主界面的“用户管理”菜单项;2 系统显示用户管理页面(如图7所示);3 用户通过单选按导选择要操作的用户并单击“删除用户”按钮;4 系统提示“是否删除”信息;5 用户选择“是”;6 系统删除用户信息。扩展流如果系统提示“是否删除”信息时用户选择“否”,
33、则系统将不进行任何操作。备注系统管理员只有一个,所以不能删除。3.3.3 预约管理广告部门员工具有此功能模块的权限。根据广告合同约定的要求,对应的期刊进行预约版面,预约时需要制指定期刊、板块规格、版面类别和广告内容。当版面预约成功后,预约状态应设定为“预约”。预约版面用例名称预约版面功能简述用户输入预约版面信息,并提交系统保存。后置条件预约版面成功前置条件用户以广告部员工身份成功登录。基本流1 用户单击广告部员工主界面的“预约版面”菜单项;2 系统显示“预约版面”界面,如图9所示;3 用户输入预约的版面信息,同时指定预约版面的类别,然后单击“预约”按钮;7 系统保存预约版面信息。扩展流无备注预
34、约成功后将预约状态设定为“预约”图93.3.4 审定版面管理版面部门员工具有此功能模块的权限。根据预约版面的信息,确定发布的版面,并根据排版情况指定版面具体编号,如第16版。当版审订成功后,预约状态设定为“订版”用例名称审订版面功能简述版面部员工审阅并设定具体的版面编号后置条件预约版面通过审订,并将版面编号存入系统前置条件用户以版面部员工身份成功登录,并且已经有预约的版面基本流1 用户单击版面部员主页面的“审订版面”菜单项;2 系统在“审订版面页面”显示已预约的版面;3 用户选中某一个预约版面后的单选按钮,然后点击“审订”按钮。4 系统在“预约版面详细内容页面”(如图10所示)显示该预约版面的
35、详细内容;5 用户浏览预约的内容,通过单选按钮指定该版面是否可以订版,并指定订版后的版面编号。6 系统保存审订信息。扩展流如此期刊的版面编号已经使用,请提示订版重复。备注审订通过后将预约状态更改为“订版”。图103.3.5 查询版面管理广告部员工与版面员工具有此功能模块的权限。可以通过功能查询模块查询版面预约与审订信息,可以根据期刊、版块规格、版面类别等数据查询已预约或已订版的资料信息。用例名称查询版面功能简述查询版面预约与审订信息后置条件无前置条件用户以广告部员工或版面部员工身份成功登录系统基本流1 用户单击主页面的“查询版面”菜单项;2 系统显示“查询版面页面”;3 用户输入查询的条件:包
36、括“期刊”、“版块规格”、“版面类别”和已预约(或已审订)等数据,然后单击“查询”按钮。4 系统在“查询结果页面”显示查询的内容。扩展流检索时使用模糊查询方式。备注无3.4 软硬件环境要求硬件客户端硬件要求:l 中央处理器:PIII500 MHz以上处理器l 内存:128 M以上内存l 硬盘:10G以上可用硬盘空间l 其他:鼠标、键盘应用服务器端硬件需求:l 中央处理器:PIII500 MHz以上处理器l 内存:512 M以上内存l 硬盘:20G以上可用硬盘空间l 其他:鼠标、键盘软件服务器端操作系统:Windows7开发工具:Visual Studio 2013数据库:SQL Server
37、2008WEB应用服务器软件:IIS 6.0(及以上)客户端运行环境:能运行IE6及以上浏览器的操作系统第4章 系统总体设计该阶段的基本任务是,概括地回答“怎样实现目标系统?”这个问题。4.1 整体功能模块分析 根据需求分析的说明,该广告合同管理系统应具有基本功能可以总结为以下几个模块,如图4.1所示:图4.1 根据业务管理实际,广告合同管理系统应包含管理员管理,用户管理,广告合同管理,预约版面,审定版面,查询版面等功能。其中系统管理员对应用户管理,用户信息的增删改查管理;广告部门员工对应广告合同管理、预约版面和查询版面;版面部门员工对应审定版面和查询版面。多有权限都应通过先登录才可获取对应权
38、限。4.2 功能模块细分与设计在这一部分,我们将各个子系统模块进一步划分子模块,划分的子模块与各个模块功能说明如下。4.2.1 管理员管理模块管理员管理主要包括对用户的增删改查功能,并且对管理员施加权限限制,不同的权限给予不同的操作级别。一个系统中只有一个管理员。4.2.2 广告合同管理模块广告合同管理主要包括对员工对与客户签订的广告合同进行管理,该模块包裹新增、修订、取消广告合同等功能,也是后期预约版面的前提。4.2.3 预约版面管理模块预约版面模块根据广告合同约定的要求,对应的期刊精心预约版面,预约时需要指定期刊、版块规格、版面类型和广告内容。当版面预约成功后,预约状态应设定为“预约”。
39、预约版面的状态如图所示:4.2.4 审定版面管理模块根据预约版面的信息确定发布的版面,并根据排版情况指定版面的具体编号,如第16版。当版面审订成功后预约状态设为“订版4.2.5 查询版面管理模块可以通过功能模块查询版面预约与审订信息,可以根据期刊、版块规格。版面类别等数据查询已预约或已订版的资料信息。4.3 本章小结本部分主要对于整个系统的总体框架进行了设计,另外包括了系统的部分的功能,以及系统中所用到的字段。系统的整体框架的设计对于开发程序者来说会有一个系统的整体的概念,对于系统的使用这来说,可以尽早的了解系统所具有的模块,这样可以尽早的发现问题,解决问题。有利于在系统的详细设计的部分,将每
40、个部分用到的字段进行详细的设计,以尽早的理清系统的设计思路。第5章 详细设计详细设计阶段的任务就是把在总体设计阶段提出的比较抽象概括的解决问题的方法具体化,也就是“应该怎样具体地实现这个系统”。在本阶段将包括数据库的设计和每个模块的详细设计,确定实现模块功能所需要的算法和数据结构。数据库设计1数据库表的结构实现由各个关系模式和根据需求分析阶段数据字典的数据项描述,给出各数据表结构。系统总的表的结构如表5-1所示。表名功能说明Unit Type杂志类型contract合同信息magazine杂志信息magstate杂志状态unitsize产品类型users用户信息usertype用户类型表5-1
41、数据库表汇总数据库中的表如表5-2到5-12所示:表名:Unit Type序号列名数据类型允许空说明1idint否ID2Type nameNvarchar(16)是杂志名称3TyoeCountInt是杂志数量表名:Contract序号列名数据类型允许空说明1Idint否ID2LayNoint是3MagIdint是杂志id4MagTextnvarchar是杂志简介5SizeIdint是大小id6TypeIdint是类型id7StateIdint是8Companynvarchar是公司表名:Magazine序号列名数据类型允许空说明1IDint否ID2MagNameNvarchar(32)否杂志名
42、称3IssuDatedatetime否发布日期4MagNoint否杂志编号5FullNamenvarchar(32)否全称表名:MagState序号列名数据类型允许空说明1Idint否Auto_increment2StateNameNchar(10)是城市名表名:UnitSize序号列名数据类型允许空说明1idint否auto_increment2UnitNameNvarchar(16)是单位名称3UnitCountint是单位数量表名:Users序号列名数据类型允许空说明1idint否2UserNameNvarchar(16)是座位类型名3PasswordNvarchar是密码4TypeId
43、Int是类型ID5EmailNvarchar(32)是邮箱6RegDateDatetime是注册日期表名:UserType序号列名数据类型允许空说明1idint否2TypeNameNvarchar(16)是类型名称第6章 系统测试在测试阶段测试人员努力设计出一系列测试方案,目的却是为了“破坏”已经建造好的软件系统竭力证明程序中有错误不能按照预定要求正确工作。测试阶段的根本目标的是尽可能多地发现并排除软件中潜藏的错误,最终把一个高质量的软件系统交给用户使用。6.1 测试目标测试的目标或定义:测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;成功
44、的测试是发现了至今为止尚未发现的错误的测试。6.2 黑盒测试和白盒测试对于软件测试而言,黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性。黑盒测试又成为功能测试。与黑盒测试法相反,白盒测试法的前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。白盒测试又称结构测试。6.3 测试准则为了能设计出有效的测试方案,软件工程师必须充分理解并正确运用指导软件测试的基本准则。主要的测试准则如下:
45、所有的测试都应该能追溯到用户需求;应该在测试开始之前的相当长时间就制定出测试计划;测试应该从“小规模”,并逐步进行“大规模”测试;穷举测试是不可能的;为了达到最佳的测试效果,应该由独立的第三方来从事测试工作。6.4 白盒测试逻辑覆盖是设计白盒测试方案的一种技术。设计测试方案是测试阶段的关键技术问题。所谓测试方案包括具体的测试目的,应该输入的测试数据和预期的输出结果。条件组合覆盖要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。测试的过程中,我们主要采用了等价类划分和边值分析的测试方法。下面我们只列举了部分模块简单的测试用例:1. 后台登录测试(1) 合理的输入条件输入数据:管理员账号(该系统用户存在)、管理员密码(密码正确)、验证码(验证码正确)预期结果:登录成功,转入系统主界面(2) 不合理的输入条件输入数据:管理员账号为空、密码(密码正确)、验证码(验证码正确)预期结果:提示登录失败,账号不存在输入数据:管理员账号(该系统用户存在)、密码(密码错误)、验证码(验证码正确)预期结果:提示登录失败,密码不正确输入数据:管理员账号(该系统用户存在)、密码(密码正确)、验证码(验证码不正确)预期结果:提示登录失败,验证码不正确2. 创建用户的测试用例(1) 合理的输入