基于ASP技术的企业手机销售网站的设计与实现

2024-10-11 版权声明 我要投稿

基于ASP技术的企业手机销售网站的设计与实现(共8篇)

基于ASP技术的企业手机销售网站的设计与实现 篇1

一、选题的目的和意义
近几年来,基于 TCP/IP 的 Internet/Intranet 技术以非同寻常的速度被广泛应用于各级 企业及其他组织的信息发布与共享,其中一个很重要的手段就是建立 Web 站点发布信息。传统的静态网页技术已越来越不能满足用户的需求,因此各种动态网页技术应运而生。ASP 就是目前比较流行的动态网页技术之一,而 ASP.NET 是微软新一代的动态网页技术,并且 相对于其他编程技术,它有如下的优势。(1)面向对象性 ASP.NET 将 C#作为一种面向对象语言,在很多方面来看,C#将成为微软的与 Java 相似 的语言。C#是 ASP.NET 开发中一个最重要的功能,微软会将 C#发展成为 Java 的强劲对手。这 也是微软.NET 框架的一个重要组成部分。我们认为 C#是微软在编程市场上击败对手的主要 工具。我们期待着微软能在这个产品后面倾注全力,这样,C#可以成为许多程序员的又一 种选择。C#的诞生无疑将进一步加剧微软和 Sun 产品的战线,但这对用户是有利的,他们 可以选择两者之一来开发新的应用。(2)数据库连接 ASP 另一个亮点是它使用 ADO 对象、ODBC、OLE-DB 和事务处理管理器。因此 ASP Web 数据库应用开发特别简单。ASP.NET 发展了更多的功能,因为有了 ADO.NET。ADO.NET 带来了更强大更快速的功能。JSP 和 JDBC 目前在易用性和性能上同 ASP/ADO 相比已有些 落后,当新版本 ASP.NET/ADO.NET 出现后这样的差别会更明显。所以我们希望 SUN 应尽 快能花大力气来追赶 ASP.NET/ADO.NET 的组合。(3)大型站点应用 ASP.NET 将对大型站点(Web Farms)有更好的支持。事实上,微软已经在这方面付出 了巨大的努力。ASP.NET 可以让用户考虑到多服务器(Multiple Servers)的场合,当用户需 要更强大的功能时,仅仅只需要增加一台服务器。整个.NET 框架已经充分地提供了这个方 法。ASP.NET 提供了外部会话状态(External Session State)来提供内置式 Web Farm 的支持。另外,由于请求的各组件相互间经过了充分的优化,所以速度很快。(4)ASP.NET 还提供更多的其他方面的新特性,例如: 内置的对象缓存和页面结果缓存。内置的 XML 支持,可用于 XML 数据集的简单处理。服务器控制提供了更充分的交互式控制。

二、国内外发展动态和趋势
微软新一代平台的正式名称叫做“新一代 Windows 服务”(NGWS),现在微软已经给 这个平台注册了正式的商标——Microsoft.NET。在.NET 环境中,微软不仅仅是平台和产品 的开发者,并且还将作为架构服务提供商、应用程序提供商,开展全方位的 Internet 服务。在谈及这个平台中使用的新技术
,微软透露,它将在.NET 环境中提供更多新产品和全套的 服务。Microsoft.NET 将开创互联网的新局面,基于 HTML 的显示信息将通过可编程的基于 XML 的信息得到增强。XML 是经“万维网联盟”定义且受到广泛支持的行业标准,Web

浏览器标准也是由该组织创建的。微软公司为开发它投入了大量精力,但它并不是 Microsoft 的专有技术。XML 提供了一种从数据的演示视图分离出实际数据的方式。这是新一代互联 网的关键,提供了开启信息的方式,以便对信息进行组织、编程和编辑;可以更有效地将数 据分布到不同的数字设备;允许各站点进行合作,提供一组可以相互作用的“Web 服务”。根据.NET 构想,未来微软所有产品都将走向“服务化”,而消费者将通过租借的方式使 用 Office 软件,或通过 MSN 用户身份,获得网络音乐服务。然而,根据种种迹象表明,微软早已为.NET 战略后新的划时代战略做了准备,这个新 战略将会比.NET 战略更可怕,因为它将可能垄断未来所有的软件市场!如果将 PC 时代分 为 DOS平台时代和 Windows平台时代的话,按照微软的意思,网络时代将会分为.NET平台时代和这个新的平台时代。ASP.NET 又叫 ASP+,但并不仅仅是 ASP 的简单升级,而是 Microsoft 推出的新一代 Active Server Pages 脚本语言。ASP.NET 作为微软公司发展的新的体系结构 Microsoft.NET 的一部分,其中全新的技术架构会使编程变得更简单。ASP.NET 是在抓住 ASP 的最大优点 并全力使其扩大化的基础上开发出来的,同时也修复了许多 ASP 运行时会发生的错误。目前支持 ASP.NET 开发的平台只有 Windows XP、Windows 2000/2003、Windows NT4(Service Pack 6a),其中的 Web Service 除去这些还在 Windows 98、Windows ME、Windows SE 上获得支持。随着 Internet/Intranet 技术的不断发展,只有服务器的动态网页技术才能 满足各种 Web 应用程序日益提高的要求,因此各种动态网页技术先后出现。相对于 ASP.NET 而言,ASP 技术较为熟悉,使用简单便利。但由于 ASP 本语言自身的局限性,使其功能受 到了很大的限制。而 ASP.NET 的强大功能恰好弥补了 ASP 的不足,因此,ASP.NET 技术代 替 ASP 是一种必然的趋势。ASP.NET 从现有的 ASP 结构体系上跨出了一大步,其整个构造 体系使开发结构化的应用程序变为可能。Web 表单带来了一种更加直接和易于使用的开发 模式;服务器控件增加了提供公共功能的能力,从而使扩展和加强现有功能变得容易;数据 捆绑使创建数据约束型应用程序变得十分简单。它不但具有许多很棒的新功能,而且还有一 个用于开发 Web 应用程序的真正框架。越来越多的开发者开始使用这种技术,它的出

现给 Internet 的发展带来了一次新的浪潮。

三、课题研究的基本内容
该课题为设计并实现一个基于 ASP.NET 技术的动态 IT 培训网站。该网站具有如下模块: 登录注册模块:用来识别用户身份信息的必要手段,用以在线报名、在线咨询以及 学员论坛; 课程信息发布模块: 做为网站介绍自己、宣传自己培训课程的不可或缺的手段之一,让用户第一时间了解该网站推出的培训课程; 在线报名模块:通过该模块,实现学员与培训学校之间的零距离报名; 在线咨询模块: 能为用户解答各种与网站的信息有关的问题,使用户和学校进一步 拉近距离。学员论坛:回答学员问题,提供各个学员之间互相交流的一个平台,是促进培训学 校教学质量提高的一个重要手段。

四、研究内容及拟采用的方法和手段
1.在充分调研和需求分析的基础上,完成网站的如下设计工作。总体功能规划设计。数据库的逻辑设计。

网页框架的规划设计。2.利用 ASP.NET、C#语言、ADO.NET、SQL Server 2000 数据库技术来实现一个动态交 互式的 IT 培训网站。

五、预期达到的水平及所需的科研条件
(1)网站建设的基本目标为: 用户登录注册: 用户通过注册个人信息来设置自己的登录名和密码。通过用户的登 录,来实现网站对用户更好的服务和管理。用户个人服务:用户登录后,出现用户的个人服务界面,包括个人密码修改、自己 的信息修改、个人所报课程的列表信息和提问咨询信息,以及通过网站统计出来的 该用户的喜爱课程类别的一个推荐列表等。课程信息发布模块: 通过后台发布课程信息对数据库进行操作修改,来实现前台对 各个课程信息的发布,让各个用户能在最短的时间内了解网站的各个课程的详细信 息。新闻信息发布模块:通过发布一些教育业内新闻,以及其相关的一些信息,让用户 了解目前的一些情况。在线报名模块:用户登录网站后,通过网页寻找和选择适合自己的课程,然后填写 自己的详细信息以及报名的方式来报自己所要进行培训的课程。通过该模块,用户 可以很方便的查询该课程的任何信息以及报名。教师管理模块: 介绍各个教师的信息及其所教的课程,让用户通过网站了解自己所 喜爱的教师,选择该教师所教的课程。学员管理模块: 介绍该网站培训出来的优秀学员的信息以及他们的个人照片,通过 介绍他们成功的经历和一些经验来激发用户对该网站培训课程的兴趣,让他们觉得 学习该网站的某一课程对他们来说是多么必要。企业招聘信息发布模块: 通过发布一些合适企业的招聘信息让学员能更快地找到工 作。信息咨询

模块:让用户能通过在网页上以留言的方式快速地提出自己不明白的问 题,以便让管理员及时解决。学员论坛:让学员有一个能够互相交流和学习的平台,通过论坛,让他们之间能够 互相交流学习经验,解决学习中不懂得问题,以及一些成功的经验心得。用户访问追踪: 让网站能通过用户对该网站课程的点击次数以及时间来判断大部分 用户的需求,以便网站能根据他们的需求进一步改善网站的各个服务。(2)开发平台 操作系统:Windows Server 2003。数据库开发工具:SQL Server 2000。网页开发工具:Dreamweaver MX。动态网页技术:ASP.NET。Web 服务器:Internet 信息服务(IIS)管理器。

基于ASP技术的企业手机销售网站的设计与实现 篇2

企业宣传是企业日常工作中的重要一环,通过宣传可以让社会各界都了解企业的基本情况,从而扩大企业在市场中的竞争力。目前,很多大中型的企业都通过自己的网站来吸引广大的客户,从而扩展自己的业务市场。下文给出了某发电设备公司网站的设计与实现过程。图1是该网站运行时的首页。

2 开发环境

Visual Studio 2008+Access 2003

3 后台数据库结构

该网站后台数据库采用Access,数据库名称:chenfengdb。存在于网站的App_Data目录中。数据库中包括8个数据表:公司简介表、产品种类表、产品表、问题解答表、留言表、资质证明图片表、联系方式表和后台管理用户表。图2到图9是这些表的结构。

(1)公司简介表(tbIntroduce)用于保存公司介绍的信息,其结构如图2所示。

(2)产品种类表(tbProductType):用于保存所有的产品类型信息, 其结构如图3所示。

(3)产品表(tbProducts):用于保存所有的产品信息, 其结构如图4所示。

(4)问题解答表 (tbQuestions) :用于保存所有的问题信息,其结构如图5所示。

(5)留言表 (tbLeaveWords) :用于保存所有的留言和留言回复信息,其结构如图6所示。

(6) 资质图片表 (tbNewspic) :用于保存所有的证件图片信息, 其结构如图7所示。

(7) 联系方式表 (tbTel) :用于保存公司的联系方式信息, 其结构如图8所示。

(8) 后台管理用户表 (tbUser) :用于后台管理人员的信息, 结构如图9所示。

4 网站的文件夹结构

网站的文件夹结构如图10所示。

5 在配置文件中设置到后台数据库的连接

在网站配置文件web.config的节中添加如下代码:

6 网站主页

主页是进入网站后首先显示的页面,通过主页上的超链接可以进入到其他页面。发电设备网站的主页包含导航栏、滚动图片、产品种类、产品展示和客户留言等内容。

网站的页面采用表格布局,页面中主要使用DataList数据控件来显示后台数据库中的产品种类、问题解答和产品展示等信息。其中用于显示产品列表的DataList控件的前台代码如下:

7 子页的母版页

网站中的其他页面基本都是依托母版页来实现的。图11是子页的母版页界面。

8 后台管理登录页面

图12是后台用户登录时的页面。

其中登录按钮的代码如下:

9 后台管理主页面

后台管理页面依然采用母版页设计,图13是后台管理用户的主操作页面。

其中“删除”按钮的代码如下:

10 结语

在发电设备网站的开发中,许多页面使用了母版页,这样可以使页面风格统一,而且提高了制作效率。显示后台数据信息时主要使用了DataList控件,DataList控件在显示数据时通过编辑模板来实现,数据的显示非常灵活。另外,在网站中也大量使用了JavaScript脚本、CSS样式表等技术。企业宣传网站是网站开发中经常遇到的问题,如何完成此类网站的开发,以上给出了切实有效的解决方案。

摘要:很多大中型的企业都通过自己的网站来吸引客户, 扩展自己的业务市场。讲解了利用ASP.NET+Access设计和实现一个企业网站的过程和方法。

关键词:企业网站,ASP.NET技术,C#语言

参考文献

基于ASP技术的企业手机销售网站的设计与实现 篇3

摘要:该网站采用了功能强大的Microsoft Visual Studio.Net 2005及SQL Server2005数据库管理系统为开发环境,借助ASP.NET3.5应用计算技术手段,实现了教育信息的快速发布和资源共享,为用户在Internet环境下实现管理员对新闻和用户的详细管理,其中包括对新闻和注册用户的添加、修改和删除功能;该网站在B/S的工作模式下,通过权限认证的方式,使得系统管理安全可靠。

关键词:网络教学;课堂教学;ASP.NET

1引言

观察我国网络教学以及各高校网络教学网站建设现状,从教学对计算机网络的依赖程度上来看,可以将其划分为以网络为主和以网络为辅两种类型,前者主要是在远程教育中,后者多是高校内的网络教学。以网络为辅教学仅能够解决教学过程中学生课上埋头抄板书,但自学资源匮乏、课后交流不方便;以网络为主教学能弥补部分地区教师资源的不足,但缺少教学过程的管理,影响教学质量。而提供一些合适的学习资源作为课堂的补充,并指导学生去研究、去探索更重要、更有效。平台、资源与服务作为高校网络教学三要素,已经逐步成为共识,网络教学作为高校教学改革的重要手段与工具越来越受到重视。开发一个交互性、可控性、协作性和开放性,以及学习资源独特的共享教学网站尤为重要。

2总体设计

2.1 设计思路

该网站采用的是B/S(浏览器/服务器)结构进行设计的,与传统的C/S(客户端/服务器)模式相比,B/S结构把处理功能全部移植到了服务器端,用户的请求通过浏览器发出,无论是使用还是数据库维护上都比传统模式更加经济方便,而且使维护任务层次化,管理员负责服务器硬件日常管理和维护,系统维护人员负责后台数据库数据更新维护。

该网站可以作为校园网中的一个子网站,是作为高校教学的一个辅助,为学生提供一个可以在任何时间对课堂上所学知识进行巩固的网络环境而设计的网站。在系统功能分析的基础上,考虑ASP。NET程序编制的特点,得到如图1所示的系统功能模块图。

本网站将现代远程教学中的授课系统,习题与作业,网上疑难交流,远程考试等环节有机地集合在教学平台中,利用多媒体教学,优化课堂教学结构,增加课堂教学信息量,向学生提供形象生动的画面,启发学生的思维,激发学生的学习兴趣,从而主动地寻求和掌握知识,培养学生分析问题和解决问题的能力。

2.2使用环境

软件环境:

客户端:Windows95/98/2000IXP,Internet Explorer(IE)等。

服务器端:Windows NT/Windows2000/Windows2003.Internet0nformationServer(IIS)4.0及其以上版本,IE等;或者Windows98,Personal Web Server(PWS),IE等。

数据库:SQL sever数据库,运行于服务器端。

硬件环境:

服务器CPU:PIII500以上,内存:512M以上。

客户机CPU:P200MMX以上,内存:32M以上。

2.3主要功能

网站主要包含:新闻浏览,精品展示,资源共享,师生互动,联系方式以及网站地图等。如图2。

本网站拥有自己独立的后台,通过此后台,管理员可以轻松地管理各个用户,以及添加修改新闻内容。新闻以列表的形式显示在后台管理界面,可以在列表中对新闻进行添加、编辑、删除等操作。

2.4网站主要特点

2.4.1资源的共享性与独立性这里的资源共享就是指网站中的资源共享栏中提供了最新的教学资料、文档、视频等以供学生随时下载学习。但是,也不是随便每个人都可以下载的,必须是注册用户登录后才可以为其提供下载服务。同样的,在线视频也是必须注册用户才可以收看,这样做既保证了资源的共享性和独立性,又可以减轻服务器的负担,使服务器运行更加稳定。

2.4.2统一的布局风格

前台与后台的页面均采用了继承母版页的方式,使得网页的布局风格以及格式达到统一,同时该网站还使用了css样式表,对网站页面的样式进行了统一的规范,使用户能够更快地熟悉页面的布局与风格,为用户提供最大的方便,滚动的新闻公告栏使用了ajax技术,达到了可以无刷新更新的效果,使用户可以根据自己的喜好将其拖拽到任何自己喜欢的位置,增加了网站的个性。

2.4.3网站安全性

该网站在用户的安全性上采取了明确分配权限的做法,使后台管理员和普通会员的权限分开,即admin和user两种权限。其中user均无法进入后台管理,只有指定的admin权限用户才能进入后台,对后台进行管理,如果登录的user想进入后台,必须进行admin的二次登录才能实现。

3开发环境与相关技术

3.1开发环境

本系统是在Microsoft公司的ASP.NET2.0(ActiveServerPages.NET2.0)开发环境中使用C#语言及MS SQL Server 2005设计开发实现的。采用浏览器/服务器(Browser/Server)模式。

3.2开发工具

数据库:MicrosoE SQL Server 2005;

技术平台:Microsoft NE7 Framework 2.0版本;

开发平台:MicrosoftVisua0Studio.NET2005简体中文版;

开发语言:ASP NET 2.0,ADO NET,采用C#语言实现。

3.3设计方法与技术

本系统采用结构化设计方法。结构化设计方法主要强调三点:

(1)模块内部程序各个部分要进行自顶向下的结构划分;

(2)各个程序部分应按功能组合;

(3)各个程序部分的联系尽量使用调用子程序方式。

3.3.1数据库设计

该网站的数据库需要有存放用户和教学新闻两个表,其中包括很多信息,可将这些信息抽象为下列系统所需要的数据项和数据结构:

(1)用户userl(USERiD,用户名,密码,邮箱,性别,年龄,QQ,MSN,地址)

(2)新闻内容(ID,标题,作者,内容,发表时间,类别)

(2)新闻内容表news:用来保存新闻信息

2.3.2数据库的操作

对Datalist控件进行设置来进行数据库的绑定,然后在后台会自动生成相应代码。

3.3.3首页页面的设计

首页是继承了母版页的一个子版页,所以在风格上与其他的页面达到了统一。首页主要是将各个新闻模块集中展示出来,让用户直观、方便地浏览查看。

3.3.4登录页面界面设计

登录界面要实现具体的登录功能就要与数据库连接,为了使得登录界面更易于操作和人性化,在页面上添加了SiteMapPath控件,使得用户返回更加简便,也可以根据用户的需求,将其改为导航功能,进而实现向其他页面的快速跳转。

2.3.5后台管理模块

后台页面的制作也采用了继承母版页的方式,使网页的结构更加规范统一,使用户能够更快地熟悉页面布局与结构。

3.3.6新闻管理

该模块实现了管理员对网站中新闻的更新管理,通过DropDownList控件选择不同的新闻分类,可以方便地对新闻进行归类管理。

4分析与总结

基于ASP技术的企业手机销售网站的设计与实现 篇4

教务管理系统为满足高校日益繁杂的教务工作,提升信息的流通速度,增 加师生间的沟通和交流,提高各个部门的工作效率而开发的管理信息系统。教务 信息管理系统是融合管理科学、信息科学、系统科学和网络技术为一体的综合性 先进管理手段。该系统是基于B/S(浏览器/服务器)模式的信息管理系统,选用

ASP.NET+SQL Server 2000数据库进行开发。全文设计开发的教务管理系统结

合了面向对象的编程思想,其开发主要包括后台数据库的建立和维护以及前端应 用程序的开发两个方面。通过系统实现,用户可以在网络环境下直接访问操作权 限范围内的各项信息。

在开发系统过程中,严格按照软件工程的开发理念,采用了基于先进的统 一建模语言.IdML的面向对象技术进行系统的分析与设计。UML是一种对面向 对象系统进行可视化、详细描述、构造和文档化的规范建模语言。特别是在统一 建模过程RUP出现后,UML的应用更加广泛。UML可以应用在软件工程的每 个阶段,本文使用Rational Rose 2003对UML中涉及到的视图进行建模。本文详细阐述了基于UML的面向对象的系统分析与设计、数据库设计以及 UML模型向关系数据库的映射方法。在数据库的需求分析中,使用Microsoft Visio进行E.R图的建模。在需求分析中,详细分析了系统所面向的用户对系统 的功能需求,基于此需求,确定参与者及参与者所感受的系统服务或功能单元,经过多次迭代和细化后建立需求模型,制品为用例图。在用例视图基础上,进入 系统分析阶段,识别系统全部的类,建立类图,并对每一个类判定其构造型,建 立系统分析阶段的静态模型。为了描述系统各对象在执行期间不同时间点是如何 动态交互的以及结果如何,建立系统分析阶段的动态模型,包括序列图和协作图。在系统设计阶段,对系统进行分层和刻画子系统,本文所论述的教务管理 系统共分为学生登录模块、教师登录模块、教务管理员登录模块和教材管理员登 录模块。其中教务管理员登录模块中,又分为学生信息管理、师资管理、网上选 课、工作量计算、教学计划管理等几个模块,是整个系统的开发重点。数据库设 计阶段,依据数据库三种模式之间的两种映射关系,将对象模型向数据库模式映 射,建立数据库模型。

本文建立了较为完整的UML模型,对各个开发过程中的分析与建模作了较 充分的阐述,为应用软件提供了清晰的解决方案,因而,本论文对使用UML进 行软件开发的读者具有一定得参考价值和实用价值。

关键词:教务管理系统;统一建模语言;面向对象;ASP.NET

The Des i gn and I mp I ementat i on of Educat i ona I Adm i n i st rat i on System Based on ASP.NET Abstract The educational implementation system is planed for the satisfaction of the increasingly complex educational administration work in tmiversity, for the promotion of the information circulative speed,for the increasing contact and communication between teachers and students,as well as for the improvement of working efficiency amony different branches.The educational administration system is such comprehensively advanced management methods as administrative science,information science,systematic science and network technique,all routed into one.

The system is established by the information administration。which is based on the B/S model,and selects the data base ofASP.NET+SQL.Server2000 to apply.Focus of the thesis is to design the educational administration system,and employs the typical administrative system by the theory of objects·oriented.The development includes two aspects:the establishment and reservation of the backstage data base;the development of front applied programs.By achieving this system,users can directly visit all kinds of information、析m in the authority of operation under the netwok environment.

During the process of development,the thesis bases strictly on the concept of software project,and makes systematic analysis and design,aimed the technology of directed objects on UML.Uniform Modeling Language(UML)is the one to visible,fully describe,build and docnmentalizc for objects-oriented,especially applied in Rational Unified Process.UML Can be used in stage of software engineering project,therefore,the thesis models the views related to UMLby using Rational Rose 2003.

In the practice of systematic design,the thesis fully elaborates the objects-oriented,the plan for the data base and the mapping methods from UML to relational data base. And it also models the E—R diagram with the help of MicrosoR Visio,in the demand analysis of data base.Furthermore,it analyses the functional demands of the users in the system,defines the system services or function units enjoyed by interparticipants,establishes the needed models and detailed division.division.On the basis of the Use Case Diagram,the thesis enters the stage of systematic analysis,distinguishes all the classes诵tll in the system,establishes the Class Diagram,judges the structure of each class,and finally builds the static models in the stage.In order to describe how the objects interact dynamically in different period of time,the thesis continues to establish the static models in systematic analysis stage,including Sequence Diagram and Collaboration Diagram.

It is because of the stratification and carving sub—system that the educational administration system in this sense Can bc divided into students login model,teachers login model,educational administrators login model and teaching material

administrators login model is the focus of administrators login model.The educational development for the whole system,among which can be divided into such models as students information management,teach management,optional courses on line,work load calculation,teaching plan management,and SO on.In the state of designing data base,it shines upon the data base model from object models and establishes them in view of 2 mapping relations among the 3 models in data base.

To skim up,the thesis has established completed UML models,elaborated the analysis and models in the process of exploitation in details,and provided clear solutions to the applied software.Therefore,it is of great help and value to the reads who are intended to develop software by using UML.

Key Words:Educational Administration System;Uniform Modeling Language;0bject-Oriented;ASP.NET

O引言

近年来随着教育普及,高校教育体制改革,各高校扩大招生规模,使得在校 学生人数有了突飞猛进的发展,办学规模逐渐增大,专业设鼍日趋多样化,招生 人数逐年增加,教学计划不断更新,这使得高校教务管理的工作量大幅度增加。并且,随着教育改革的深化,教学管理模式也在发生变化,如学分制的逐步实行、学生可以自主选课等。这就对原有的教学管理模式提出了更高的要求。另一方面,随着计算机网络技术的发展,校园网引进各个高校,为无纸化办公提供了有利条 件。在这样的形势下,开发一个集成化的教务管理系统不仅势在必行,而且成为 一个紧迫的任务。

由于国内各高校的教务管理模式不尽相同,不同学校的实际教务管理情况各 有自己的特点,因而各高校需要针对自己的教务管理模式和特点建立自己的教务 管理系统。教务管理包括对教学资源——如教室、办公用品等的管理,新生注册 和学籍的管理、各学期学生成绩的管理、教学培养方案的执行、教学计划的安排、学生考试的管理、教师评教以及工作量的计算等大量信息。如何高效率的进行管 理,并且有序的存放和处理这些巨大的信息,并使之成为教学管理分析和决策的 手段,为教学活动产生更好的促进作用,是教务管理信息系统主要功能。教务管理系统是以管理信息系统为理论依据的。管理信息系统的发展伴随着 软件工程的发展而日趋成熟。不断增长的复杂性、多样性和相互关联性是当今管 理信息系统的共同特征。而开发一个管理信息系统往往要结合软件工程的理念,使用系统化的方法进行管理信息系统的开发,从而更能有效地控制程序复杂性,减少系统的不合理,减轻维护成本。

从技术层次上,软件工程是从一系列建模任务开始的,由这些任务产生出软 件完整的需求规格说明和软件设计的表示。80年代末期,当面向对象程序设计 语言产生后,人们将面向对象的软件建模方法引入到软件工程的各个阶段。并迅 速发展成为当代软件界研究的热点课题之一。这种开发方法是一种运用对象、类、继承、封装、聚合、消息传送、多态性等概念来构造系统的软件开发方法【11。面 向对象的程序设计立意于创建软件重用代码,它通过在程序中加入扩展语句把函 数“封装“进编程所需要的“对象’’中。从本质上来讲软件开发就是对软件所要 处理的问题集进行正确的认识,并把这种认识正确地描述出来。面向对象的软件 开发就是直接面对问题集当中客观存在的事物来进行软件开发。

面向对象的开发方法的精髓是从不稳定的需求中分析出稳定的对象,以对象 为基础来组织需求、构架系统【2】。这种开发方法包括面向对象分析和面向对象设

计。

面向对象分析的目的是认知客观世界的系统并对系统进行建模,那么就需要 在面向对象分析过程中根据客观世界的具体实例在问题中准确、具体、严密的分 析模型。如图O.1所示为面向对象的分析过程。

图O一1面向对象的分析过程

面向对象的设计是把分析阶段得到的需求转变成符合成本和质量要求的,抽 象的系统实现方案的过程。设计的准则包括模块化、抽象、信息隐藏、低耦合和 高内聚等特征【11。

公认的面向对象建模语言出现于20世纪70年代中期,从1989~1994年,其 数量从不到十种增加到了五十多种。建模语言中用的最广的是Booch的Booch 93、Jacobson的面向对象软件工程(OOSE)和Rumbaugh的对象建模技术(OMT-2)。面向对象建模方法出现以来,各种面向对象的分析与设计方法的主 导思想以及所采用的主要概念与原则大体上是一致的,但是也存在不少的差异。统一建模语言UMLCOnified Modeling Language)lE是为结束这种差异的局面应运

而生的。

1994年10月,Grady Booch和Jim Rumbaugh开始致力于这一工作。他们首

先将Booch 93方法和OMT-2方法统一起来,并于1995年10月发布第一个公开

版本UML0.8。1995年秋,OOSE创始人Ivar Jacobson也加入了。三人共同致力 于设计统一建模语言,他们同面向对象方法学的创始人共同合作,为这项工作注 入了强大的动力,打破了面向对象软件开发领域内原有的平衡。目前UML得到 了诸多大公司的支持,如IBM、HP、Oracle、Microsoft等,已成为面向对象技 术领域内占主导地位的规范化建模语言,并且已被OMG组织采纳的建模语言规 范。Booch、Rumbaugh和Jacobson在一些文献中经常被称作“三个好朋友”(three amigos)【3】。UML的发展过程如图0.2所示。本文所论述的系统在需求分析、系 统分析与设计阶段,都采用UML进行建模。

图0-2 UML的主要发展历程

被OMG采纳的UML只是一种建模语言,并不包含对软件开发过程的指导。在讨论UML时,人们往往谈论到统一过程(Rational Unified Process,RUP)。RUP是一个最佳软件开发实践,根据字面理解,可以知道RUP包括3方面的意

思,即Rational、Unified和Process。Rational表示RUP是由Rational公司开发

并维护的;Unified表示RUP采用了现代软件工程开发的6项最佳实践:Process 表示RUP是一种软件开发过程14】。Rational统一过程的动态结构是通过对迭代式软件开发过程的周期、阶段、迭代过程以及里程碑等的描述来进行表示的。

本文基于UML建模方法对我校教务管理系统做了较深入的分析,并基于物 理模型进行了系统的设计与实现。对于建模的工具的选择,本文选择Rational Rose,它提供了UML的所有建模元素的可视化编辑环境,并提供了基于组件的 开发以及对软件开发全过程的支持。除了支持UML的类图、交互图、组件图和

配置图外,Rational Rose是一个独立的工具,通过应用程序接口(API)层与市

场主导的各种IDE结合来支持各种编程语言和其他实现技术【51,从而全面支持面

向对象分析、设计和编码。Rational Rose支持软件系统的面向对象的开发,它通

过用例图、逻辑类图、序列图等支持面向对象的分析和设计,在不同的视图中建 立相应UML图形来反映系统的不同特征。

在开发工具的选择上,本文采用了新的ASP.NET技术,结合.NET框架所支 持的VB语言来实现教务系统的各项功能。ASENET不仅仅是下一版本的Active Server Page(ASP),它还是统一的Web开发平台,方便开发人员开发企业级W曲

应用程序。它是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语 言创建应用程序。另外,任何ASENET应用程序都可以使用整个.NET框架,并 且可以无缝地与HTML编辑器及其他编程工具一起工作。这使Web开发变得更

加方便。

数据库的开发工具上,选用SQL Server 2000开发环境。SQL Server2000是能 够支持企业级关系型数据库的管理系统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用户界面风格与Windows一样非常友好。SQL Server2000在存储大容量数据方面,在数据的安全性和完整性方面,在分布式处 理等都是适合于企业级应用的。而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较低。采用SQL Server2000+ASP.Net开发本系统 是一个较为理想的组合。

综上所述,开发这样一个系统不但可以降低工作量、提高办公效率,而且使 目前分散的教务信息得到集中管理。这对减轻教务工作负担、提高教务管理水平、实现教务管理的现代化具有重要意义。论文分为引言、正文和结束语三部分。

引言部分简要地论述了当前高校管理信息化的必要性、高校教务管理系统开 发的重要意义以及高校教务管理系统开发所使用的技术。正文部分共分4章,其内容安排如下:

第一章:需求分析与建模。本章对教务管理系统进行需求分析,逐步对系统 分析细化,找出参与者和用例等,作出Use Case图。在用例图的基础上,从现 实或原型方面来透视的系统,进一步作出系统的静态模型。还有表示对象类之间 的通信及对话的动态模型。

第二章:系统概要设计。阐述了系统体系结构,和为什么选择采用B/S模式。介绍了系统实现基于的三层架构,即数据访问层、业务外观层和页面层。最后对 系统的层次和模块进行细化。

第三章:系统详细设计。对数据进行全面分析,得到E.R图,建立数据库表,完成存储过程的设计。举例介绍了系统中类的设计,以及几个代表性的功能模块 的设计思想。

第四章:系统实现。本文所论述的系统是用ASP.NET+SQL Server开发的。在这一章中主要是对笔者负责的部分,进行阐述。并以UML建模为基础,实现

系统功能。

结束语对本文工作进行简明扼要的总结,并指出本文存在的不足和改进方向,以及对未来的展望。

本文的创新性在于结合我校教务工作的实际问题,有针对性的对教务工作的 各个环节进行UML建模,从对象模型到动态模型再到系统功能的建模,让系统 分析更全面,系统实现更完善。系统实现采用三层架构,即数据访问层、业务外 观层和页面层。在业务外观层扩展出业务规则层,数据层扩展为数据存取层和存 储过程层,使业务逻辑与用户界面分开,增加程序的可扩展性和可维护性。

1需求分析与建模

需求分析是软件开发过程的重要环节,是软件开发的基础,通过与用户的反 复沟通,勾勒出系统的框架,需求分析的好坏决定了软件设计的成败,好的需 求分析也能减少资金的浪费。

1.1功能需求

教务管理系统系统主要是为完成日常教学任务而开发的,其主要目标是对学 生个人信息、师资信息、教学资源信息、课程信息、学生成绩信息等进行管理 及维护,减轻教学工作的压力,提高教学管理工作的效率。

通过对学校教学管理的业务调查,得知教务管理人员可通过此系统实现对学 生和教学资源的管理与维护,学生可以通过此系统进行个人信息、考试成绩查 询以及完成选课等相关功能,教师可以通过此系统完成个人信息管理、学生成 绩输入、教学任务查询等等功能。系统的总体任务是实现整个教学信息管理的 系统化、规范化和自动化。

在日常教学工作中,教务处有整体规划和辅助教学的任务,各个院系上报的 教学任务和教学计划都要上报给教务处,由教务处根据上报的材料分配教学资 源,如教室等,并且安排教师上课时间和上课的周次,然后再将教师上报的教 材征订单传达给教材科,由教材科根据开课学生人数订教材。教务处还要将一 切安排妥当的事宜公布在网络上,以供教师和学生查询。

因此,该系统主要的使用对象是教务管理人员、学生、教师和系统维护人员。这些使用者对教务管理系统的功能要求是不同的。(1)教务管理人员对功能的需求 ·学籍管理

功能包括:学生注册、学生基本信息管理(包括添加、删除和更新学生信息,可按姓名或学号查询学生信息)、学籍变动管理、毕业管理等。·师资管理

6功能包括:各专业课教师个人基本信息管理、教学任务发布、教学工作量管

理、考评考核管理、科研管理等。

●选课管理

功能包括:教务管理人员依据教学计划和培养计划,设置选课课程并统计生 成己选课学生名单等。

●教学计划管理

功能主要包括:根据培养计划和各个专业上报的教学计划,添加各专业教学 计划,包括教学计划的修改删除等操作。

●成绩管理

功能包括:每门课程结束后,由教师进行成绩登记,然后教务管理人员对登 记的信息进行管理,如教师登录成绩后发现成绩有错误,只能由教务管理人员 核实后进行修改。还有根据成绩就算出学生的学分,以便学籍管理的需要。

●课程管理

功能主要有:安排各个专业所开设课程的上课时间和上课教室。(2)教材管理人员功能需求

功能包括:教材的基本信息的管理(按书名或作者等查询各专业教材、添加 修改删除教材信息等)、统计教材数量、教材费用、教材的入库和出库管理等。

(3)学生对功能的需求

学生有两类,分别是本科生和研究生。每一类学生对于功能的要求还是有区 别的,如研究生有科研和论文的内容。在本文中,只分析了本科生的功能需求。·个人信息管理

功能包括:浏览个人基本信息,具体内容包括姓名、性别、学号、民族、出 生日期、籍贯、所在专业班级等,这些信息是以学籍管理表中的信息为准,所 以不允许学生自行更改,只能进行查询。还包括个人课表查询,成绩查询等。·更改系统登录信息

功能包括:学生登录系统后,修改登录信息,为了保证系统的安全性,只要 求学生修改个人密码。

● 网上选课

功能包括:网上查看可选课程,添加、删除所选课程等功能。

7(4)教师对功能的需求

●个人基本信息的维护

功能包括:教师基本信息的添加和修改等,如出生日期、毕业学校、学历和 学位等信息,但是职工编号和姓名是不允许教师在系统中进行修改的。·教学信息查询

功能包括:教学任务查询、教学自然班名单下载打印、教学质量评价查询和 工作量计算结果的查看等。●学生成绩录入

功能主要包括:本学期学生考试成绩的录入,一旦用录入密码录入成绩成功 后,就不能任意修改学生成绩,必须由教务处管理人员修改。(5)系统管理员的需求

系统管理员主要是对教务管理系统进行维护和更新,并保证系统的安全性,以及数据库的安全性。

从以上可以看出,各种人员对于系统的需求是不同的,对于学生来说,教务 人员的操作是不能使用的,也是不可见的,所以要在用户登录系统时,就做出 判断该用户可以使用哪些功能,这就需要设置不同的登录权限。系统管理人员 具有最高的权限,可以添加、删除用户,并可设置和修改不同的用户权限。因 此在数据库设计中,要有权限的定义。

权限的定义其实是系统安全性的一种需求,采用身份认证机制对一般用户进 行管理,以教工号和学生学号来判断登录者的权限,并且以这两种身份来判断 登录者是否该校的校内人士,如果是校外人士,则具有浏览这样的最低权限。系统的安全性需求还有另外一方面内容——数据安全性,对于数据库服务器,要避免系统崩溃等意外事件发生而导致数据全部丢失,常用的方法是采用 RAIDS磁盘阵列,其次是对数据库系统提供完全、增量等多种备份方式,如把 数据定期刻成光盘保存。对于数据安全性,本文不做详细的阐述。

根据以上对系统的功能的分析,我们可以大体总结出系统的一个大概框架和 系统应该分为哪些子系统。根据所完成的功能和用户角色的不同,我们将系统 分为教师子系统(完成教师登录后的功能)、学生子系统(完成学生登录后的功 能)、教务管理子系统(完成繁杂的教务工作的功能)和教材管理子系统(完成 教材有关的功能)四个子系统。在这四个子系统中又可以划分出多个小模块,例如,教务管理子系统是一个非常大的子系统,我们将它再次细化,可以分成 学生学籍管理模块、网上选课模块、教学计划管理模块、课程管理模块等。用 一个系统结构框图来表示,如图1.1所示。

图1.1教务管理系统总体框图

1.2用例图

图1.1教务管理系统总体框图

需求获取阶段的主要工作是建立待开发系统的模型。本文中采用统一建模语 言对系统的需求进行建模,UML的用例和用例模型是建立这种需求模型的合适 方法。

系统需求建模是为描述系统需求而建立的相应模型,其重要性在于:通过系 统模型可评估系统构件及其相互关系,确定需求如何适应其布局,以及评估系 统的“美学’’等方面【31。

在计算机图形学中,有一句名言,叫做“一幅图顶得上一千个字’’。同样的 道理,在软件开发过程中,模型的重要性也十分明显,它可以达到以下目的: >使用模型可以加强人员之间的沟通

>使用模型可以更早的发现错误或疏漏的地方

>模型为最后的代码生成提供依据 >使用模型可以更好的理解问题 >使用模型可以获取设计结果

面向对象的软件建模方法主要从面向对象程序设计领域演变发展而来,它是 对象问题域进行完整的映射的过程。“对象“的主要特征包括如下内容:

(1)它包括了事物的数据特征和行为特征,对象是系统中用来描述客观事物 的一个实体,具有它自己的静态特征和动态行为,是构成系统的一个基本单位。(2)它通过封装、继承、消息通信等原则使问题域的复杂性得到控制。(3)它用聚合和链接如实反映问题域中事物间的关系,“任何两个对象之间 的关系都包含其中一个对另一个的假设”。

正是拥有上述特征,从而使面向对象建模方法能够完整和直接的映射出问题 域,所以其在模拟现实世界方面具有天然的优势。

UML是用图来进行“说话”的,图是UML的关键。用UML开发的图在软 件开发生命周期(SDLC)的每个阶段中起着关键的文档作用。此外,你可用 UML来开发基于任何SDLC模型的软件系统【6】。1.2.1用例图概述

用例视图指出系统提供给每个利益相关者的功能。由于UML中的各个构件 和概念之间没有明显的划分界限,为方便起见,选用视图来划分这些概念和构 件。视图只是表达系统某一方面特征的UML建模构件的子集。用例视图是视 图中的一种。用例视图约束其他视图,在建模过程中居于非常重要的位置。项 目开始时,项目小组就可以在用例视图中生成业务模型。开发者既可以把用例 视图用于构建一个新系统的功能视图,还可以把已有的用例视图修改或扩充后,产生新的版本,也就是在现有的视图上加入新功能(即在视图中加入新的执行

者和用例)。

用例图是把满足用户需求的基本功能聚集起来的强有力的工具。对于正在构 造的新系统,用例描述系统应该做什么;对于已经构建完毕的系统,用例则反 映了系统能够完成什么样的功能【71。用例图包括用来描述最终用户、分析人员 和测试人员的角度所看到的系统行为的用例。

用例图的基本组成部件是用例、执行者和系统。用例用于描述系统的功能,也就是从外部用户的角度观察系统应支持哪些功能,帮助分析人员理解系统的

行为,即站在系统外部看系统功甜引。在用例模型中系统仿佛是实现各种用例 的黑盒子。我们只关心该系统实现了哪些功能,并不关心内部的具体实现细节。用例模型主要用于工程开发的初期,在进行系统需求分析时使用。用例模型由用例图构成。用例图中显示执行者、用例和用例之间的关系。1.2.2建立用例图

建立Use Case图可以按下列步骤进行:(1)确定系统范围和边界

所谓系统的边界是指系统与系统之间的界限。系统同时又是相对的,在这里,我们只说明第一次迭代的系统边界。教务管理系统以教学计划的实施为线索,对教务管理实行一体化操作,涉及学籍管理、教学计划管理、课程管理、选课 管理、成绩管理、教师管理、教材管理等。这些内容都属于教务管理系统的职 责范围。而学校的其他管理工作,如人事、财务、资产等管理不属于该系统的 职责范围。虽然有系统边界的存在,但是使用Rational Rose画图并不画出系统

边界。

(2)确定主要参与者

参与者(Actor)是指存在于系统外部并直接与系统进行交互的人、系统、子系 统或类的外部实体的抽象。参与者有自己的目标,通过与系统的交互达到目标。参与者包括人参与者(Human Actor)和外部系统参与者(System Actor)。在与系统 打交道的人员中,凡是直接使用系统的人员可以确认为人参与者;凡是与系统 相联,并与系统交互的外部系统,可以确认为系统参与者。

一个参与者可以参与一个或多个Use Case,而一个Use Case可以有一个或 多个参与者运行。在本系统中确定教务管理员、教材管理员、学生、教师和系 统管理员为活动者。(3)确定用例

用例(Use Case)是参与者可以感受到的系统服务或功能单元。它定义了系

统是如何被参与者使用的,描述了参与者为了使用系统所提供的某一完整功能 而与系统之间发生的一段对话。每一个用例都是一个参与者与系统交互中执行 的有关事务的序列【9】。虽然用例描述了活动者与系统交互中的对话,但是,它 只描述了该做些什么,并不描述该如何做。全部的用例构成了对于系统外部是

可见的行为的描述。应当根据系统需求找出全部的用例,并从参与者的角度给 出事件流和用例执行时系统可以提供给参与者的服务。

在教务管理系统中,我们可以确定以下一些主要用例:学生管理(学生基本 信息的维护)、师资管理、课程管理、教学计划管理、选课管理、成绩管理、教 材管理(教材信息查询,教材的入库和出库等),系统维护等。本文只列出几个主要的用例图加以介绍。①系统管理用例 >创建新账号 >设置账号基本信息 >查看账号

>删除账号 >系统维护和更新

建立用例图,如图1.2所示,图1.2系统管理员用例图

②教务管理用例

由于教务管理的事务繁琐复杂,因此功能的划分就很细致,用例数目就比较 多。我们先列出顶层用例,然后再将粒度大的用例进行分析。>登录系统 >学生学籍管理 >教学计划管理 >选课管理 >课程管理 >师资管理 >成绩管理

建立教务管理顶层用例图,如图1.3所示。然后将粒度大的用例进行进一步 分析,例如,师资管理工作,可以包括教师信息管理、评教情况、工作量计算、科研情况等。每一项工作都可以作为功能的细化,而看作是一个用例。因此,以师资管理为例,将教务管理顶层用例进一步细化,如图1.4所示。将顶层的用例模型进一步细化,划分为粒度小的用例,以便深入分析系统的 要求和目标,这一过程也是迭代过程【101。对顶层用例图逐步分解,精细化,直 到能清晰的表达问题,满足系统分析与建立模型的需要。又如,图1.5所示为 细化后的网上选课用例。

图1-3教务管理顶层用例图

图l-4师资管理三次迭代后的用例图

图1.5选课管理用例图

③学生用例 >登录系统 >个人信息管理 >成绩查询 >网上选课

建立学生用例图,如图1-6所示。

图1.6学生用例图 ④教师用例 >登录系统 >个人信息管理 >登录成绩 >教学任务查询 >教学班名单打印 >教材查询

建立教师用例图,如图1.7所示。

图1.7教师用例图

⑤教材管理用例

>登录系统

>教材信息管理 >入库

> 出库

建立教材管理用例图,如图1.8所示。

图1.8教材管理用例图

161.3静态结构模型

系统的静态结构模型主要由类图和对象图表达。类图从抽象的角度描述系统 的静态结构,而对象是类的实例化表示,对象图是系统静态结构的一个快照⋯l。对象图和类图类似,也是表达系统的静态开发视图,但它是从现实或原型方面 来透视的,说明在类图中所发现的事物实例的数据结构和静态快照。当要在动 态建模的交互图中表示动态场景的一个静态画面时,可以使用对象图来重现系 统中存在的实例以及它们之间的相互关系。类图展示了一组类、接口和协作及 它们间的关系,建模中所建立的最常见的图就是类图。类图中包含了三方面的信息:

(1)对象类:对象类简称类,是面向对象模型最基本的模型元素,类有属性、操作、约束以及其他成分等。“属性”描述类性质的实例所能具有的值;“操作” 实现类的服务功能,它可以被本类的对象请求执行,从而发生某种行为。(2)用户接口:用户和系统交互的界面,它也可以用类表示。

(3)联系:表示类之间的关系,这种关系可以有多种,关联、依赖、泛化、聚合都是非常重要的联系。

在建立静态模型时,首先要对类进行识别,类的识别通常是由系统分析员在 分析问题域的基础上来完成的,它是面向对象开发中一项困难较大的活动【12】。对类的识别,通常的方法是从用例中来识别。用例图实际上就是一种对系统描 述的形式,因此,可以根据用例图来识别类。

所有被识别的类只包括三种构造型中的一种:边界类(Boundary Class)、实 体类(Entity Class)和控制类(Control Class)。使用类的构造型可以方便的对 类进行分类。按照类的识别顺序,首先识别出系统的实体类,然后进一步识别 出边界类和控制类。

实体类(Entity Class):实体类的信息和行为通常存在较长的时间,实体类 是现实问题的抽象,这种类型的类通常对应现实世界中的实体,或者需要执行 系统的内部事务f13】。例如学生、教师、教材等。而且每个实体类在数据库中都 有相应的表,实体类的属性对应数据库表中的字段。表1.1列出了教务管理系 统中一些重要的实体类。

边界类(Boundary Class):负责系统与系统外部环境的通信。位于系统与外 界的交界处,工作在系统和角色之间【81。因此,通常又被称为“接口类”。包括 所有窗体、报表、打印机和扫描仪等硬件接口以及与其他系统的接口。在教务 系统中的边界类有,用户登录界面、学生基本信息管理界面、教师基本信息管 理界面、教学工作量信息管理界面、科研情况管理界面、学生成绩管理界面、教学计划管理界面、选课界面等等。

控制类(Control Class):负责协调其他类的工作,通常其本身并不完成任何 功能,其他类也不向其发送很多消息,而是由控制类以委托责任的形式向其他 类发出消息。将教务管理系统中的业务逻辑抽象为以下的一些控制类,如表112 所示。

表1-2教务管理系统中的控制类

对类进行分析完毕接下来,就可以建立初步分析模型。例如,教材管理中,类的初步模型如图1-9所示。

图卜9教材管理用例类的初步建模

课程管理中,类的初步模型如图1.10所示。

教材

图1.10教材管理用例类的初步建模

选课记录

根据初步建模图,确定各个类的属性和方法后,再次建模,如图1.11所示

图1_11确定了属性和方法的类建模

根据己定义的类及其联系,以及对象类的多重性、角色、导航等性质,可以 画出对象类图。如图1.12是教务管理系统的主要类及其关系。图1.12教务管理系统主要的类及其关系图

所有系统均可表示为两个方面:静态结构和动态行为。类图最适合于描述系 统的静态结构:类、对象以及它们之间的关系,而状态、时序、协作和活动图 则适合于描述系统的动态行为,即描述系统中的对象在执行期间中不同时间点 是如何动态交互的。

系统中的对象需要相互通信,通常情况下,~个消息就是一个对象激活另一 个对象中的操作调用【141。对象是如何进行通信以及通信的结果如何,则是系统 的动态行为,也就是说,对象通过通信进行协作及对象在系统的生命期中改变 状态的方式是系统的动态行为。一组对象为了实现一些功能而进行通信称之为 交互。交互图(Interaction Diagram)是用来描述对象之间以及对象与参与者之 间的动态协作关系以及协作过程中行为次序的图形文档,它包括序列图

(Sequence Diagram)和协作图(Collaboration Diagram)两种形式。序列图着

2l重描述对象按照时间顺序的消息交换,协作图着重描述系统成分如何协同工作。

序列图和协作图从不同的角度表达了系统中的交互和系统的行为,它们之间可 以相互转化。(1)序列图的建立

序列图(Sequence Diagram)是由对象、生命线、激活和消息等构成。序列 图的目的就是按照交互发生的一系列顺序显示对象之间的交互【31。下面列出学生选课的序列图,如图1.13所示。教学计划管理的序列图,如 图1.14所示。

图1.13学生选课基本事件序列图

基于ASENET的教务管理系统的设计与实现 图1.14教学计划管理基本事件序列图

图1.15学籍管理模块添加成绩序列图

序列图作为一种描述在给定语境中消息是如何在对象间传递的图形化方式,在使用其进行建模时,可以将其用途分为以下3个方面。

·确认和丰富一个使用语境的逻辑表达:一个系统的使用环境就是系统潜

在的使用方式的描述,也就是它的名称所要描述的。一个使用环境的逻 辑可能是一个用例的一部分或是一条控制流。

● 细化用例的表达:序列图的主要用途之一就是把用例表达的需求转化为

进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的

序列图。

●有效的描述如何分配各个类的职责以及各类具有相应职责的原因:可以

根据对象之间的交互关系来定义类的职责,各个类之间的交互关系构成 一个特定的用例。例如,“用户对象向地址对象请求其街道名称“指出 用户对象应该具有“知道其街道名’’这个职责。

(2)协作图的建立

协作图(Collaboration Diagram)是由对象、消息和链等构成【15J。协作图通 过各个对象之间的组织交互关系以及对象彼此之间的链接,表达对象之间的交 互。

与序列图不同的是,在协作图中明确表示了角色之间的关系,通过协作角色

来限定协作中的对象或链。另一方面,协作图不将时间作为单独的维来表示,所以必须使用顺序号来判断消息的顺序以及并行线程【2】。序列图和协作图表达 的是类似的信息,虽然它们使用不同的方法表示,但可以通过适当的方式将它

们进行转换。

将图1.13和1.14中的序列图转换为协作图,分别见图1.15和图1.16。

1.15学生选课协作图

协作图作为一种在给定语境中描述协作中各个对象之间的组织交互关系的 空间组织结构的图形化方式,在使用其进行建模时,可以将其作用分为以下三 个方面:

·通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达: 一个使用情景的逻辑可能是一个用例的一部分或是一条控制流。这和序 列图的作用类似。

●显示对象及其交互关系的空间组织结构:协作图显示了在交互过程中各 个对象之间的组织交互关系以及对象彼此之间的链接。与序列图不同,协作图现实的是对象之间的关系,并不侧重于交互的顺序,它没有将时 间作为一个单独的维度,而是使用序列号来确定消息及并发线程的顺 序。

·表现一个类操作的实现:协作图可以说明类操作中使用到的参数、局部 变量以及返回值等。当使用协作图表现一个系统行为时,消息编号对应 了程序中嵌套调用的结构和信号传递过程。

2系统概要设计

经过需求分析后,对于系统是“做什么”已经清楚了,这一章的内容主要讨 论系统“怎样做“116]。总体设计的基本目的就是回答“概括地说,系统应该如 何实现?”这个问题。设计工作集中在细化阶段结束、构造阶段之时开始。它 将产生合理、健壮而稳定的构架,创建实现模型的蓝图‘171。

2.1系统体系结构

教务管理系统是由Web后台进行统一管理,所有业务逻辑都集中在Web应 用程序中管理和制定,具有数据的添加、搜索和查询统计等功能,客户端的分 布广泛,数据集中处理,因此在设计时充分考虑各种体系结构的优缺点,B/S 结构对异种机、异种应用的连机、连网及统--N务具有很好的作用,因此选择 B/S结构进行开发实现。

B/S模式是三层结构体系,对比过去C/S结构,B/S在客户机和服务器之间 增加了一个Web服务器。当客户端发出请求时,由Web服务器向数据库服务器 取出数据并计算,然后将计算结果返回给客户端,用户通过安装在客户端的浏 览器浏览计算结果。在B/S模式下,客户端只需装上浏览器以及相应的操作系 统、网络协议软件即可,而所有应用软件的开发、维护、升级等工作由服务器 承担【18】。B/S模式是三层结构体系如图2.1所示。

图2-1 B/S的三层结构体系

教务系统的软件开发在B/S体系结构基础上,程序设计过程采用三层架构,即数据层,业务外观层和页面表示层(应用层)。将UML建模使用到体系结构 的设计中来,也是本论文的一大创新点。

页面表示层表示软件界面,包括大量控件,并以事件为触发机制,在事件响 应程序中调用业务外观层中的接口完成相关操作。图2.2表示了页面表示层与

其它层的交互。

图2—2页面表示层交互图

业务外观层将用户界面和业务功能的具体实现分割开,对业务规划层和数据 访问层的所有调用必须通过此层进行。一般将业务外观层扩展出业务规则层,业务外观层就位于Web层与业务规划层之间,主要完成与Web层交互以及在对 “业务规则“层的调用之间维护临时状态【191。图2.3表示了业务外观层与其它 层的交互。

图2-3业务外观层交互图

数据层为业务外观层和业务规则层提供数据服务,并解决数据存取的问题。

对数据库的操作全部封装到对数据库服务器端的存储过程层调用中【191。图2.4 表示了数据层与其它层的交互。

图2—4数据层交互图

2.2系统模块划分 图2—4数据层交互图

在第一章的需求分析中,初步将本系统划分为4个子系统,每一个子系统面 向不同的用户。接下来在概要设计中,要将这四个子系统进一步细化,细化成

低耦合、高内聚的模块。

系统的总体框图在需求分析中已经列出,具体查看第一章的图1.1。根据总 体框图继续将框图中的每一个模块进一步细化。细化的结果按照模块独立性原

理来进行验证。

模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果【16】。模 块的独立程度可以由两个方面度量,分别为内聚和耦合。耦合强弱决定模块间 接口的复杂程度,接口越简洁,临界值的测试也越容易,不但是程序不容易出 错,后期维护成本也会降低。内聚是衡量一个模块内部各个成员彼此结合的紧 密程度,理想内聚的模块只完成一件任务。

按照软件工程中的这一理论,将教务管理系统进行细化。(1)学生子系统

学生子系统是学生身份登录后所使用的功能,按照功能的不同,将学生子系 统进一步细化,如图2.5所示。

图2.5学生子系统细化后结构图

(2)教师子系统

教师子系统面向的是普通教师,根据需求分析得到的结果,将教师子系统进 行多次细化后得到如图2-6的模块结构。(3)教材管理子系统

教材管理实质是教务管理的一部分,但是由于其管理对象与教务管理的工作 对象有很大差异,属于一种教学资源的管理,因此将教材管理从教务管理中划 分出来作为一个单独的子系统。其用户为教材科管理员,登录后不进入教务管 理界面,而进入教材管理界面。按功能细化后的模块结构如图2.7所示。

图2-6教师子系统细化后结构图

图2-7教材管理子系统细化后结构图

(4)教务管理子系统

教务管理子系统是所有子系统中功能最复杂的一个子系统,涉及了整个日常 教务和教学工作。将该系统第一步细化,按功能分成学生学籍管理、师资管理、选课管理、教学计划管理、成绩管理和课程管理六个大的模块,如图2.8所示。

图2-8对教务管理子系统二次细化

二次细化后的模块并不是最优模块,每一个模块都完成若干项工作,因此还 要再次细化。下面依次列出多次精细化后的模块结构图。① 生学籍管理

图2-9学生学籍管理结构图

②师资管理

图2.10师资管理结构图

③教学计划管理 图2-ll教学计划管理结构图

④学生选课管理

图2-12教学计划管理结构图

⑤学生成绩管理 生成绩管理结构图

⑥课程管理

2-13学

图2.14课程管理结构图

综合以上结构图,可以发现,在每个子系统中都包含了数据的一些基本操作,如添加记录、删除记录、修改记录和数据统计等,还有报表的制作、打印等常 见的功能。根据面向对象思想,可以将这些程序代码进行封装,增加代码的重

用。

3系统详细设计

详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统【16】。这一 阶段应该得出对系统的精确描述。

3.1数据库设计

数据位于信息集成系统的中心,是信息系统的灵魂,因此,数据库设计直接 影响着数据库系统的性能以及整个教务管理系统的功能。所以数据结构应该是 稳定的,变化的只是处理过程。本系统在侧重信息需求的同时兼顾处理需要,这个设计按照关系模型和第三范式理论,直接面向数据设计。数据库设计有如下三个基本阶段:

>需求信息的收集一一与客户、最终用户以及公司中定义数据库需求的管 理者进行调研的过程。收集的信息主要有,业务如何处理、业务规则、当前所使用的数据库信息等。

>数据建模一一通过可视化的方式分析业务数据,并最终将业务模型转换 为数据模型的过程。所产生的数据模型用来创建表、视图和数据库所需 的其他对象。

>数据库设计和规范化一一业务模型转换为物理模型的过程。并减少冗余 数据。

ANSI/SPARC模式规定,数据库可分为三层:内模式、中间模式和外模式【201,简单的说,数据库模式是指数据库中一组相关对象。在模式结构中,对象之间 并不是互相独立的,它们之间存在相互关联的关系。它统一地考虑了所有用户 的需求,并把这些需求所涉及的记录、记录间的联系有机地结合为一个整体,描述概念模式的常用方法是E.R图(Entity.Relationship approach,实体-联系方 法)【19lo 外模式也叫应用软件接口,是数据库的外层,是与用户进行互动的一层。子 模式是模式的子集。外模式允许在用户应用软件和数据模型之间创建关系。

35内模式也叫物理模型,具体描述了数据如何组织并存入外部存储器上,处理

数据库的物理存储和数据访问。内模式一般由系统程序员根据计算机系统的软 硬件配置决定数据存储方式,并编制程序实现存取。

中间模式也叫逻辑模型,是数据库的基本模型,它主要处理用来定义数据库 结构的一些数据结构,例如,表和约束条件。

数据库三个模式之间存在两种映射,一是模式与子模式之间的映射,这种映 射把概念数据库与用户数据库联系起来,另一种映射是模式与内模式之间的映 射,这种映射把概念数据库与物理数据库联系起来【211。有了这两种映射,才把 用户对数据库的逻辑操作转换为对数据库的物理操作。3.1.1数据库需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据 库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据 处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。仔细分析本系统的有关信息,设计如下面所示的主要数据项和数据结构:

●学生基本信息

包括的数据项有:学号、姓名、性别、出生年月、籍贯、政治面貌、学院编 号、专业编号、班级编号、家庭住址、联系方法、照片、备注等。·学院信息

包括的数据项有:学院编号、学院名称、专业编号、专业名称、各专业班级 编号、班级名称、班级人数等。·教师信息

包括的数据项有:员工编号、姓名、性别、出生年月、籍贯、政治面貌、职 称、学院编号、职务等。·课程信息

包括的数据项有:课程编号、课程名称、课程类型编号、理论学时、实验学

时等。

·教学计划

包括的数据项有:学院编号、专业编号、班级编号、课程编号、开设时间等。●教材信息

包括的数据项有:教材ISBN编号、教材名、作者、出版社、版次、库存量

等。

·评教信息

包括的数据项有:员工编号、评教时间、评教成绩等。·工作量信息

包括的数据项有:员工编号、计算学年、课程编号、理论学时、实验学时、总工作量等。·科研信息

包括的数据项有:项目编号、项目名称、项目负责人、项目完成时间、项目 内容、获奖情况等。·选课信息

包括的数据项有:课程编号、教师姓名、最大人数、已选学生数等。●成绩信息

包括的数据项有:学生学号、课程编号、成绩、是否重修等。·系统用户信息

包括的数据项有:用户ID、用户权限、用户密码。根据以上的数据结构和数据项,进行下面的数据库设计。

3.1.2 E.R图设计

E.R方法是一种用来在数据库设计过程中表示数据库系统结构的方法,又被 称为实体.联系模型。它的主导思想是使用实体(Entity)、实体属性(Attribution)以及实体之间的联系(Relationship)来表示数据库系统的结构。

实体有描述其特征的属性,一个或多个属性表征一个实体。在E.R图中,实 体用长方形表示,属性用椭圆表示。

联系是指实体之间的关联,E.R模型清楚地定义了联系,每个联系都有名字。联系的元是参加联系的实体的数目,大多数联系是二元的,有三种类型:一对 一联系、一对多联系和多对多联系。联系用菱形表示。

对关系数据库而言,就是要将E.R模型转换为关系模型,并对其进行优化。将E.R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系 转化为关系模型,这种转换一般遵循如下原则:

(1)一个实体型转换为一个关系模型。实体的属性就是关系的属性,实体的 码就是关系的码;

(2)一个一对一联系可以转换为一个独立的关系模型,也可以与任意一端对 应的关系模型合并;

(3)一个一对多联系可以转换为一个独立的关系模型,也可以与多端对应的 关系模型合并;

(4)一个多对多联系转换为一个关系模型;

(5)--个或三个以上实体间的一个多元联系转换为一个关系模型;

(6)同一实体集的实体间的联系,可以按照一对一、一对多、多对多三种情 况分别处理;

(7)具有相同码的关系模型可合并。3.1.3系统的E.R模型

教务管理系统中对于学生信息管理、选课管理以及成绩管理的相关功能在第 一章的需求分析和建模中也做了详细说明。这几个子系统中所涉及到的角色主 要是教务管理人员、教师和学生。实体主要有学生、教师、课表、成绩、教学 计划5个,具体的E.R模型如下列各图所示。图3.1教务系统E.R图图3-2学生选课成绩管理E-R图

图3.3学生选课E.R图

3.1.4数据库表建立

图3.3学生选课E.R图

教务管理系统数据库表数量很多,在这里仅列出具有代表性的几个重要模块 中的数据库表。

表3.1用户登录信息表

表3-2学生基本信息表

表3.3课程信息表

表3.4成绩信息表表3.5教材信息表表3-6教师信息表表3.7科研信息表表3.8评教信息表表3-9工作量统计表

表3—10教学计划信息表3.1.5数据完整性设计

数据的完整性是指存储在数据库中的数据的正确性和可靠性,它是衡量数据 库中数据质量好坏的一种标准。满足数据完整性要求的数据应具有以下特点:

>数据类型准确无误

≯数据的值满足范围设置 >同一表格数据之间不存在冲突 >多个表格数据之间不存在冲突 数据完整性可以分为以下四类:

(1)实体完整性(Entity Integrity):实体完整性的目的是确保数据库中所有实 体的唯一性,也就是不应使用完全相同的数据记录。可以通过设定主键、唯一 键、唯一索引等多种方法来实现实体完整性,其中最常用的是使用主键。如,本文中的学生信息表,学生的学号是唯一的值,是学生信息表的主键。(2)区域完整性(Domain Integrity):区域完整性是要求数据表中的数据位于 某一个特定的允许范围内。可以使用默认值(Default)、核查(Check)、外键、数据类型和规则(Rule)等多种方法来实现区域完整性。如,限制“sex”性别 字段的数据值可以是“F”或“M",那么,输入的其他数值将被SQL Server拒

绝。

(3)参考完整性(Referemial Integrity):参考完整性是用来维护相关数据表之 间数据一致性的手段,通过实现参考完整性,可以避免因一个数据表的记录改 变而造成另一个数据表内的数据编程无效的值‘221。可利用外键、触发器和存储 过程来实现。如,在教师数据表和工作量数据表中,如果要删除教师数据表中 的一条记录,而同时在工作量数据表中存在需要参考该记录的记录集,那么该 删除操作将会失败。

(4)用户定义完整性:这种数据完整性由用户根据实际应用中的需要自行定 义。可以用来实现用户定义完整性的方法有:规则、触发器、存储过程和数据 表创建时可以使用的所有约束。

通过使用这些强制的完整性定义,数据库管理系统将提供更可靠的数据,同 时避免在多个用户同时操作数据库时可能发生的数据不一致。3.1.6数据库表的实现

经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。接下来

要在SQL Server 2000数据库系统中实现该逻辑结构。利用SQL Server 2000的

SQL查询分析器实现。下面是创建表格的SQL语句,由于篇幅原因,只列出部 分语句。

(1)创建系统用户表格Admin CREATE TABLE[dbo].[Admin](【usedd】【int]NOT NULL,【pwd][varchar](20)COLLATE Chinese—PRC—CI—AS NULL,[group]【char](5)COLLATE Chinese—PRC—CI—AS NULL)ON[PRIMARY】

(2)创建学生基本信息表格Student~Info CREATE TABLE【dbo].【Student_lnfo】([stuid】[int]NOT NULL,【stuname]【varchar】(1 O)COLLATE Chinese—PRC—Cl—AS NULL,[Sex】[char](4)COLLATE Chinese~PRC—CI—AS NULL,【age】[tinyint】NULL,【studepartment】[int](4)COLLATE Chinese—PRC—CI—AS NULL,[stucid】[int](4)COLLATE Chinese_PRC CI_AS NULL,【smgid】[int](4)COLLATE Chinese—PRC—CI—AS NULL,[birthday】[datetime]NULL,【address][varchar](50)COLLATE Chinese—PRC—C1一AS NULL,[phone][varchar](12)COLLATE Chinese—PRC—CI—AS NULL,[Jiguan】[varchar](1 o)COLLATE Chinese._PRC_CI_AS NULL)ON[PRIMARY](3)课程信息表格Course—Info CREATE TABLE[dbo].【Course_Info]([cid]【int](4)NOT NULL,[cname][varchar](30)COLLATE Chinese—PRC—CI—AS NULL,【ctypeid】【int](4)COLLATE Chinese—PRC CI_AS NULL 【clong][int](4)COLLATE Chinese—PRC—CI—AS NULL)ON[PRIMARY](4)成绩信息表格Score—Info CREATE TABLE【dbo].【Score_Info】(【stuid】【int]NOT NULL,【cid】【int】(4)COLLATE Chinese_PRC CI AS NOT NULL,【score】【smallint】NULL [restudy】【char](2)COLLATE Chinese—PRC—CI—AS NOT NULL)ON[PRIMARY】

(5)教材信息表格Book—Info CREATE TABLE[dbo].【Book._Info】(【bid】【varchar](1 5)COLLATE Chinese—PRC—CI—AS NOT NULL,[bname】【varchar](30)COLLATE Chinese—PRC—CI—AS NULL,【bwriter】【varchar]O o)COLLATE Chinese—PRC—CI—AS NULL,【bpublishl[varchar】(30)COLLATE Chinese—PRC—CI—AS NULL,【bci】【int](4)COLLATE Chinese—PRC_CI_AS NULL,【bcoum】【int】(4)COLLATE Chinese—PRC—CLAS NULL,)ON[PRIMARY】

(其他表格创建略)3.1.7存储过程的设计

存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工

作容易得多。存储过程是SQL语句和可选控制流语句的预编译集合,以—介名

称存储并作为一个单元处理【23】。存储过程存储在数据库内,可由应用程序通过 一个调用执行,而且允许用户声明变量、有条件执行以及其他强大的编程功能。Admin表相关存储过程。对Admin表进行的操作有,增加管理员(或用户)、验证管理员(或用户)、删除管理员(或用户)、修改管理员(或用户)权限、修改管理员(或用户)密码、得到所有管理员(或用户)、通过用户名查找管理 员(或用户)信息等等若干操作。由于篇幅原因,我们只列举部分的设计思路

和方法。

(1)增加管理员。在系统中系统管理员有权限添加管理员,建立存储过程在 Admin表中添加管理员,用户名为参数@usefid,用户密码为参数@pwd,用户 权限为参数@group。SQL脚本:

CREATE PROCEDUREjw_addadmin@usefid int(4),@pwd varchar(20),@group varchar(5)as insert into Admin values(@usefid int,@pwd,@group,0,”,”)90(2)验证管理员。添加管理员时,需要验证管理员是否已存在,通过选择Admin 表中是否有同名管理员用户来验证,查询条件为从Admin表中得到userid字段 等于参数@userid的数据,如果所得数据集为零说明管理员名不冲突,大于零时 说明已存在此管理员。

SQL脚本:

CREATE PROCEDUREjw_addadminvalidate@userid int(4)AS select事from Admin where userid=@userid go(3)得到管理员相关信息。当登录管理后台时,系统需得到管理员信息,以 验证管理员权限和是否有权利登录,验证管理员主要是通过用户名和密码来匹 配管理员信息,如果数据为空说明不存在此用户或密码错误,数据不为空则此

用户存在,得到管理员信息。SQL脚本:

CREATE PROCEDURE jw_getinfo@usedd int(4),@pwd varchar(20)AS select事劬m AdmiIl where usedd=@userid and pwd:@pwd 90(4)通过用户名查找管理员信息。在系统中,需得到管理员信息,即在Admin 表中得到userid字段等于参数@userid的数据。SQL脚本:

CREATE PROCEDUREjw_seladminbyuserid@userid int(4)AS select幸from Admin where userid=@:userid 90 463.2类设计

本系统是以面向对象设计思想为基础的,需求分析是用UML进行建模,因 此在模型基础上就可以进行类设计。

根据概要设计中的各个模块图,可以发现,每个子系统在对于数据库的操作 时都存在一些共同的行为,如添加、更新、搜索等,根据面向对象的封装特性,可以将这些行为封装成组件。同样,对于一些非数据库的操作,例如在教务管 理子系统中有工作量的计算,这样的操作也可以封装成类,使用设计模式使得 程序更加灵活、易于修改,并且易于复用。准确的说,就是让业务逻辑与界面 逻辑分开。

数据访问层类设计:数据访问层负责链接到数据源,构建类型化数据集,然 后该数据集从对象的方法中返回【22】。

建立一个数据访问组件visitjwdata,可以创建这个类的实例来使用。它的每 一个实例都是到数据源的一个链接。可以为每一个数据表定义一个这样的实例。该组件包括了三个方法,getdata引用数据集;deldata从后台数据源中删除数据 集;updatedata将数据集的变化添加到后台数据源中。类图如图3.4所示。

图3.4数据访问组件visitjwdata 另外,将数据库中的表格看做是对象,字段就是该对象的属性。数据库记录 就是一个实例化对象。

在第一章的静态建模中,我们分析系统中的主要类,并作出类图,根据静态 结构建模中创建的类,VB.NET语言实现。

3.3模块设计

第一章动态行为模型中的序列图和协作图对系统设计有很重要的帮助。序列 图是模块通信流程的一种抽象表示,从序列图中很容易看出各个对象之间承上 启下的关系,因为序列图主要是以时间作为单独的维来表示的。协作图和序列 图有着密切的关联,它是序列图的另一种表现形式,是通过协作角色来限定协 作中的对象或链。虽然它们的表示方法不同,但可以在Rational Rose中通过适 当的方式相互转换。

由于静态结构模型属于系统分析,动态行为模型属于系统设计,因此在这一 章里,我们就以第一章详细的建模为基础,不在对详细设计作过多的论述。在 模块设计中我们采用流程图来表达模块的算法,这里只列出几个代表性的模块。(1)登录模块

与数据库中的Admin表格关联,检查用户id字段和12令字段,结合SQL语 句实现。流程如图3.5所示(2)选课模块

根据登录的学生身份读取学生信息数据库表的院系、专业和班级字段值,通 过这些信息显示选课界面中相关的课程,并在学生提交自己的选课后,判断所 选课程是否符合要求,一方面选课总数限制,另一方面选择的课程为选满。流

程如图3-6所示 .5登录流程图

(3)教材管理模块

与数据库表教材信息表关联。教师在选用教材时,首先查询数据库中是否有 合适的教材,若没有则填写教材征订表提交给教材管理人员,由教材管理人员 进行课本的采集。

书本的出库业务流程如图3.7所示。

3图3-6选课流程图

图3.7出库业务流程图

4系统的实现

本系统在开发工具上,选择了Visual Studio.NET 2005。Visual Studio.NET是 一套完整的开发工具,用于生成ASP.NET Web应用程序、XML Web services、桌面应用程序和移动应用程序1241。Visual Basic.NET、Visual C++.NET、Visual C群.NET和Visual J撑.NET全都使用相同的集成开发环境(IDE),该环境允许

它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.NET Framework的功能,此框架提供对简化ASENET Web应用程序和XML Web services开发的关键技术的访问。

Visual Studio.NET是用于快速生成企业级ASENET Web应用程序和高性

能桌面应用程序的工具。Visual Studio支持Microsott.NET Framework,该框架 提供公共语言运行库和统一编程类。公共语言运行库是.NET框架的基础。运行 库可以看作一个在执行时管理代码的代理,提供核心服务,而且还强制实施严 格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性【25】。以运行 库为目标的代码称为托管代码,而不以运行库为目标的代码成为非托管代码。类库是一个综合性的面向对象的可重用类型集合,用户可以用它开发包含从传 统的命令行或图形用户界面应用程序到基于最新的ASP.NET技术在内的应用 程序【25】。在数据库的开发上,本文论述的系统将采用Microsoft SQL Server2000作为 系统的DBMS支撑,SQL Server2000是能够支持企业级关系型数据库的管理系 统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用 户界面风格与Windows一样非常友好1261。SQL Server2000在存储大容量数据方 面,在数据的安全性和完整性方面,在分布式处理等都是适合于企业级应用的。而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较 低。采用SQL Server2000 4-ASP.Net开发本系统是一个较为理想的组合。

4.1登录模块

在用户登录界面中,最关键的问题是用户的验证,在这里可以将用户的验证 独立成一个模块。在该系统中,将用户分为几种不同的权限,每一种权限的用 户所面对的用户操作界面是不同,系统所提供的功能也是不同的,因此在数据 库中等门添加用户权限的字段,为的就是在用户登录时,比对数据表中的权限 值来判断是何种用户,从而展现给用户不同的操作界面。

实现思想:根据用户名即usefid字段和用户密码即pwd字段是否符合数据 库中的数据来决定该用户是否为已注册用户,如果不一致则有两种可能:一是 该用户的用户名或密码输入错误,二是该用户可能是未注册用户,数据库中还 没有该用户的信息。遇到这两种情况中的一种,都要弹出提示,指示用户要么 重新输入用户名和密码,重新登录;要么就要进行信息注册。若用户的名和密 码与数据库中数据相符,则进行下一步判断,验证同一条记录的另一个字段即 group权限字段,根据权限字段的值决定显示何种操作界面。如图4一l所示。

图4—1教务管理系统登录页面

这一模块中有一个功能“注册”功能,选择“注册”后,会出现一个注册页 面,这一页面中有多个表单输入框,用户在进行输入后,表单提交到Web服务 器端时,要验证表单字段的合法性,在这里使用ASENET的验证控件.这样可 以防止用户向数据库表提交错误类型的数据。验证控件会在客户端(浏览器)和服务器端都默认执行验证。从用户角度看,这一功能非常好,因为无论何时 把一个无效的值输入表单字段都能立即得到反馈。

每个验证控件都包含一个lsValid属性,如果验证过程中未发现错误,这个 属性将会返回True值。如果页面中所有的验证控件的lsValid都返回True,那 么Page.IsValid属性就是True。因此模块代码中通过检查Page.IsValid属性判断 是否将表单值填入数据库表。图4.2所示为注册页面中添加了验证控件的效果。

图4-2验证控件

4.2教师功能模块

教师登录系统成功后能够执行的操作,共有4个主要菜单,成绩录入、信息 维护、信息查询和选课(自然班)名单打印。(1)基本信息管理

主要功能是输入教师的一些基本信息,供教务部门查阅和调用。其中有一些 档案中的基本信息,是直接从数据库中读取的,不能随意更改,另外一些不重 要的信息由教师选择是否添加和更新。这里也是使用了表单验证控件防止非法 的数据写入数据库当中。图4.3是教师基本信息管理的页面。(2)信息查询

主要完成教师对自己工作上的一些信息的浏览。如本学期课表、教学计划、选课情况、教学质量信息等。(3)成绩录入

主要功能是对本学期教学班成绩的输入,每个学期学校教务部门对每门课程 每教学班下发专门的成绩录入密码,教师获得密码后登录成绩,然后使用密码 提交,提交后不能再修改。(4)选课(自然班)名单打印

选择该菜单后进入如图4-4所示界面。在这一页面中,根据教师选择的学年 学期以及教师所教授的课程名,弹出符合选择条件的学生班级人员列表。也可 以在班级选择栏中,找到要查找的班级列出班级列表。

图4-3教师基本信息管理界面

图4-4教师所教班级学生名单

每个学期的学期未,教务处会开放选课功能,并规定学生在限定的时间内进 行网上选课。在指定的时间内,学生可以多次进行网上选课。选课的条件有:

(1)选修课程数的限定:根据每学年的培养计划,设簧不同年级的限选门数。(2)选修年级的限定:不同的年级学生在登录选课模块后,查看到的所选课 程名称是不同的,某些课程只面向固定的年级。

(3)选修人数的限定:每个选修课程可以设置最大选课人数,并可咀选择选 课人数满时的解决办法,如禁选,或者允许继续选择,当选课结束时由教务人 员筛选。

(4)选修名单已经确定,或者被管理员设置禁选的课程,在选课时间范围内 只接受己选中的学生退选要求。

设计思路:学生登录后,根据学生的身份,及判断学生过去的选修记录来显 示该学生的选课界面,首先从课程信息表中找到课程类型(ctypeid字段)为选 修课的这类课程,并且满足crime字段的值为本学期.这样的课程以表格形式 显示;其次,对显示的每--1]课程添加复选框,允许学生选中或者退选。复选 框checked属性若为True,说明被选中,否则未被选中。在接到学生提交的选 课信息时,检查学生的选择是否有效,即判断学生的选课总数是否超出该年级 的限选门数,并判断选课人数是否超出限选人数,也就是判断该课是否设为满 即禁选。如果满足以上条件,将本次选课记录写入数据库中。在本功能模块中,还存在一种校验功能.检查学生所选课程是否时间矛盾,如果矛盾则及时通知 学生,以便重新选课.图4-5学生选课界面

4.4教学计划管理模块

教学计划是根据每个专业制定的学生培养计划和教学课程大纲而延伸出来 的与课程安排、教师排课、成绩等信息有着密切关系的文件,是教务管理的核

心内容。

教学计划中每学期的所教授的课程明细是由教务管理人员根据学生培养计 划和教学课程大纲列出,然后送达各个院系。由学院的教研室主任根据各个教 师的实际情况分配教学任务。然后将教学任务返回教务处。教师在接到教学任 务后,根据教学课程大纲中的教学要求,详细写出自己课程的教学授课计划,并从教务管理系统输入,这样教务处和学生都能看到了。

教学计划分成了两大部分,教务处制定的总的计划和教师制定的课程详细计 划,这些都可以通过网络向全校人员公布。

在教学计划管理页面上,有些信息是教务管理人员在后台输入的,是教师不 能修改的,这部分信息就是教务处制定的总的计划。教师指定的课程详细计划 是可以由教师修改添加的。如图4-6和4.7所示,为教务计划页面的部分截图。

基于ASP技术的企业手机销售网站的设计与实现 篇5

摘 要:人才的需求、供应,离不开人才和企业两个主体,然而这两个主体之间的衔接并不是很好。人才感觉自己找不到适合自己的企业,企业感觉老招聘不到自己需要的人才。这在很大程度上阻碍了人才和企业两方面的发展,所以应运而生了猎头这个行业。作为猎头,需要大量的人才和企业职位信息以尽可能为双方提供更大的选择范围。所以猎头网站作为很好的信息收集工具,成为猎头公司不可或缺的组成部分。论文详细论述了一个基于Notes的猎头公司网站的开发设计过程。系统包括用户注册/登录、简历投递、职位搜索、系统管理、职位发布、简历查询、电子邮箱等功能。

论文组织如下:首先阐述了该系统的开发背景、意义;其次介绍了相关的开发工具及技术基础;接着对系统的需求进行了分析,并提出了具体的设计方案和数据库模型;然后展现了整个系统的具体实现,包括数据库的设计和连接,各功能模块的实现;最后对该软件进行了严格的测试。

关键词:猎头;职位;人才;招聘

1,引言

随着经济的发展和社会的进步,招聘媒介也经历了较大的发展和飞跃。上世纪九十年代中期以前,企业招聘主要手段是内部推荐、当街张贴海报。九十年代中期以后,逐渐发展到在报纸、杂志上刊登招聘广告,在电台、电视台上做招聘宣传,举办大型的人才招聘会,以及进入二十一世纪以后,在互联网上的网络招聘、猎头服务、人事代理、招聘外包等。

业内人士认为,随着经济社会发展与对人才需求的变化,现场招聘越来越显现出局限性。首先,参加现场招聘会的求职人才范围太窄。绝大多数的求职者是大专以下学历的低端人才,有些求职者还是一般技术工人。虽然有的招聘会也设有中高级人才招聘区,但符合条件的求职者很少,根本不能满足用人单位的需要。其次,由于招聘成本较高,使得现场招聘会很难成为经常性的`招聘形式。另外,现场招聘会对人才主体缺乏有效性,也让求职者对现场招聘失去兴趣。

目前,我国通过人才网站进行招聘求职的单位和人才越来越多,招聘成功率不断提高。随着互联网技术的发展和普及,招聘网络化已成为一种越来越普遍的招聘模式。网络招聘的全天候、即时性,大大提高了招聘工作的速度和效率,使招聘企业可以在短时间内寻获到所需的人才。网络招聘将是未来人才招聘的发展之路。因此猎头网站的发展之路也相当宽广。

2 Notes基础知识

2.1 简单介绍

DOMINO是一个以电子邮件为基础发展起来的标准群件平台,从1982年开始发布第一个版本,至今已经有数十年的历史,正式注册用户过亿。

它最大的优点就是提供了大量内置的如SMTP、POP、LDAP、HTTP、HTTPS等集成的系统服务,所以使用户快速构建跨平台的解决方案成为可能。

整个平台由DOMINOSERVER(DOMINO服务器)、ADMINISTRATOR(DOMINO管理工具)、DESIGNER(DOMINO开发设计工具)、NOTES(DOMINO客户端)组成,在一些针对性应用方面还有LOTUS-WORKFLOW(DOMINO工作流设计系统)、LOTUS-DOMINO.DOC(DOMINO文档管理系统)、LOTUS-QUICKPLACE(DOMINO协作平台)、LOTUS-LEI(DOMINO数据交互系统)、LOTUS-LEARNINGSPACE(DOMINO培训系统)等强有力支持。

本网站是使用其中的DESIGNER(DOMINO开发设计工具)开发的。

2.2 主要开发元素介绍

2.2.1 帧结构集

帧结构类似于HTML开发中的框架设计,帧结构集是帧结构的集合。帧结构是较大帧结构集的一个区段或窗格,并且可以独立滚动。通过使用帧结构集,设计者可以在帧结构之间创建链接使彼此相互关联。帧结构集可以在用户转向或链接到其他页面或数据库是仍然保持某个页面的显示状态。帧结构一般不采用3-D边框,边框宽度设为0。

2.2.2 页面

页面是用来显示信息的设计元素。与收集信息的表单不同,页面主要用来向用户展示信息,因此用户不能在页面上创建任何字段或者子表单,但可以创建HTML控件。因此页面可以用所见即所得的HTML制作工具来进行开发设计。页面适用于静态信息或者作为其他元素的容器。可以使用页面作为用户应用的开始界面或者作为提交文件后的提示界面。

2.2.3 主表单

表单是用于在数据库中输入和查看信息的载体。表单可以包含:

1)存储数据的字段。

2)标注字段或者提供指示的文本。

3)存储用户想要在多个表单上使用的表单元素集合的子表单。

4)可以结合图形和字段的布局区域 它们所采用的方法可以提供更大的设计灵活性。

5)可以使表单更容易理解的图形。

6)汇总或者组织信息的表格。

7)对象 OLE 预定 Notes/FX(TM)字段 文件附件 URL 以及可以扩展Notes文档范围的链接。

8)可以自动执行函数的动作按钮。

9)可以强化文档外观的背景颜色和图形。

10)在表单中包含其他设计元素的嵌入式元素。

在应用上细分DOMINO系统中表单一般分为主表单和子表单,而主表单又分为数据存放表单和数据展现表单。其中数据存放表单一般的设计处理方式是数据字段设计在该主表单中,公共控制信息(如流转控制)设计成子表单(component)。再将该子表单加入到主表单中。确保整体设计结构清晰,在内容上主要包含的内容有:数据信息、按钮操作、用户界面、功能子表单等。而数据显示表单的设计处理方式是用于在浏览器中进行数据浏览的表单,为了保证界面的友好性,一般采用CSS定义整体风格。

2.2.4 视图

视图是访问数据库中文档的入口,每一个数据库至少必须包含一个视图,基于所选择的准则,视图可以显示数据库的文档子集或者所有的文档。基于文档的内容,也可以对文档进行分组和排序。

2.2.5 文件夹

文件夹是用来存储文档的容器。文件夹与视图具有相同的外观,而且其设计方法也与视图大致相同。其区别仅在于应用的时候视图具有可以自动选择并显示文档的文档选择公式,而文件夹则不是,它是通过用户手动的添加来显示文档的。所以在设计的时候,其设计知道方法可以大致跟视图相类似。

2.2.6 代理

代理Agent可以让用户在Domino中自动执行许多任务。它们是可以在数据库中为用户执行特定任务的独立程序。例如可以归档文档、改变字段值、发送邮件消息、删除文档或者执行与外部应用进行交互这样的功能更为强大的动作 。代理还能够进行设置在服务器上基于安排或者在出现特定事件时自行运行。

2 需求分析

作为一个猎头网站,来访用户应该有:匿名用户,个人用户,企业用户以及管理员用户。在此,我对不同用户的不同权限以及需求做以下说明:

2.1 匿名用户

匿名用户能访问公共信息,如网站新闻,部分猎头信息,企业招聘信息。

2.2 个人用户

个人用户能创建个人简历,查看/修改/删除个人简历(可同时拥有多份简历),以及使用目的性较强的职位搜索功能。并能对有意向的职位进行职位申请操作,申请职位所需的简历也可通过对话框列表进行选择,因此可使简历变得有针对性。

2.3 企业用户

企业用户能填写猎头服务登记表,向猎头公司申请猎头服务。并且能自行发布/修改/删除招聘信息。

2.4 管理员用户

管理员拥有前三类用户的所有权限,并且还能发布/修改/删除站内新闻、对企业用户提交的猎头服务登记表进行审核。若审核通过,可根据企业委托信息来发布猎头职位,以及利用个人简历搜索功能收集适合该委托的人才资料。

3 网站设计

网站特点

本网站架构在标准群件系统(Lotus Domino/Notes)基础上,它是管理非结构化文档型数据的理想办公平台,并且能与关系型数据库进行交互,保证数据的安全性、保密性,并能跨平台、跨网络协议运行。

基于ASP技术的企业手机销售网站的设计与实现 篇6

告-课程设计

在线订餐系统网站设计与开发 师大在线订餐网 网站设计与开发

一、课程设计背景

民以食为天。餐饮业是一种个性化、多样化的服务产业,电子商务则是最能凸显个性化、多样化服务的商务方式。随着网络技术的发展和普及,方便、快捷、个性化的网上订餐正在进入人们的生活。目前,网上订餐业务还处于形成期,成长空间还很大。而就其中的蕴含的营销思维来说,有许多值得我们去挖掘东西。

另外,订餐网站是一个基于互联网的B/S模式的网上订餐系统,能为客户提供网络浏览菜品介绍、点菜订餐、餐品、服务评价等服务。客户通过登陆网站进行订餐事务,从而使餐馆订单增加而获利。本次课程设计,由于在技术上我们尚属于初学者,故小组采取分工合作方式进行,充分考虑小组意见后决定以在线订餐作为我们的课题,如此即可在网站开发过程中实践asp相关的课本知识,又可以考虑融入一定营销理念,从而达到跨学科实践学习的效果。

二、网站建设的目标

1、实现asp网页与数据库的连接访问。

2、实现策划书内的在线注册、订餐、后台产品发布、信息发布功能。

3、通过本次课程设计,掌握ASP网络程序设计技术,4、能综合运用各种知识编写一个相对独立的网络程序。

5、正确使用Dremweaver 开发ASP网络程序

三、网站功能分析

1、首页

首页是企业网站的第一窗口,决定客户对企业文化第一印象认知度的关键页面,首页的布局和页面风格的设定,对网站整体定位起着决定性的作用。本站为订餐网站,所以在色彩选用上以橙红色为主(此颜色能唤起人们的食欲),添加一定广告动画和闪动特效的导航文字以使网站视觉效果有所提升并使得客户更易点击,更具人性化。

2、美食菜谱

本网站为在线订餐网站,对菜谱进行一定说明十分有利于促进餐品的宣传及推广,通过感性的文字对网在内推出的美食进行介绍,将对增加网站订单起到不

可小量作用。

本栏目介绍的内容为:美食图片,配料,所属菜系,营养价值,推荐理由。添加评论连接,及时了解客户对该美食的砍翻等,另外,栏目内还设有会员登陆、订购入口,方便客户即时订餐。

3、最新美食

本栏目旨在通过对客户对美食的评价,总结后找出最受欢迎的口味即时推出新的美食产品,并在此宣传推广,内容为美食图片,配料,所属菜系,营养价值,设有评论,订购入口,功能与“美食菜谱”内容差不多。

4、特价美食 该部分主要为针对网站因时而开展的活动而设立的,一个具有促销手段的栏目,内容为一些优惠的美食,或具有特殊意义的食品宣传页面,同样设有评论,订购入口。

5、会员注册

网站各页面均提供访问者注册会员连接,通过广告、会员促销等手段吸引访问者注册会员,访问者只需输入简单注册信息,即可成为本站会员。所有会员的信息资料均存储于系统数据库中,以直观的表格形式呈现于后台,管理员可以很方便的对会员信息进行管理,可以查询、修改、删除会员的信息。

6、美食专题

这个栏目分为三个版块“健康贴士”、“美食介绍”、“本站动态”,其主要功能是发布一些有关饮食健康的文章、建议等,发布有关食品安全、食品新闻,发布本网站活动新闻及促销轰动信息等,点击相关标题后可打开新窗口显示详细新闻内容。

7、关于我们

关于我们这个栏目包括“师大在线订餐网简介”、“客户留言”、“帮助中心”、“联系方式”这4个栏目,介绍师大在线在线订餐的基本情况、以及所倡导的关于食品安全,服务理念等。

四、网站技术分析 运行平台:

网络环境:Microsoft Windows XP;

Web服务器:Microsoft IIS 5.0及以上版本;

工作站:Microsoft Windows 2000及以上版本; 客户端(浏览器):Microsoft Internet Explorer5.0及以上版本。2 开发平台:

Web服务器: Internet Information Service6.0(IIS6.0)。客户端(浏览器): Microsoft Internet Explorer6.0。开发工具: Dreamweaver 8 辅助工具: PhotoShop CS,Fireworks 8,Flash 8 3 开发工具:

本系统的开发工具为动态服务器网页ASP。ASP(Microsoft Active Server Pages)是服务器端脚本编写环境,使用他可以创建和运行动态、交互的Web服务器应用程序。ASP的主要特性是能够把HTML、脚本、组件等有机地组合一起,形成一个能够服务器上运行的应用程序,ASP中的命令和脚本语句都是在服务器种解释执行,执行后的结果产生HTML页面送到浏览器;ASP提供方便的访问数据库方法,使开发基于数据库驱动的Web应用程序容易且高效率。(来源:奇虎问答)4 数据库系统

本次课程设计,由于设备及技术的限制,因而我们采用操作方便的Access数据库系统,Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。(来源:百度百科)

另外,Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。所以本次课题设计,本组主要考虑用ASP+Access的结合,以求得最方便完美的技术实现!

五、网站详细设计 简介

在线订餐是目前的流行趋势,它由于其方便快捷正逐步走入大多数人们的日常生活。而网站的架设十分轻松,作为ASP技术的初学者,我们选取这一课题,以获得知识的最大应用。在线订餐系统功能之中,应首先包含用户登陆界面,用户进行登录后,可以完成察看各类快餐信息,察看购物栏内容、订购餐品、显示订购单及删除指定定单等相应功能。473

网站建设课程设计报告 在线订餐系统分析(1)网站整体结构图:

(2)操作流程图:

(3)数据库结构图: 相关文件(仅列举购物篮主要源文件)

(1)conn.asp 一个连接数据库的文件。创建db对象 和打开数据库文件 shop.mdb(2)index.asp 产品列表文件,统计数据库和显示出数据库里面的产品,并排除数量为0,且按时期降序显示,登陆框。关键代码:

Dim strSql,rs strSql =“Select * From product”

Set rs=db.execute(strSql)(3)cart.asp 购物篮主界面,包括已经订购的产品名称、数量、单价、总价和一个删除连接以及一个修改按钮,还有一个返回继续购物的连接。关键代码为:

Dim products,productsNum,numTemp,sum

products=Session(“products”)

productsNum=Session(“productsNum”)

sum=0

If IsArray(products)=True Then

'这表示它是数组

numTemp=Ubound(products)

Dim I,rs,strSql

'下面逐一显示

For I=0 To numTemp

'需要从product表中返回名称、价格等信息

strSql=“Select * From product Where id=” & products(I)

Set rs=db.Execute(strSql)(4)cart_delete.asp 删除功能调用页面。文件执行后重定向到cart.asp。关键代码为:

<% '调用子程序,添加货物

Call Delproduct(Request.QueryString(“productId”))'重定向到购物篮页面,也可以用Redirect Server.Transfer “cart.asp” %>(5)cart_edit.asp 修改按钮 和 删除链接 功能实现调用页面。文件执行后重定向到cart.asp。关键代码为: <% '本文件根据在数组中的数序一一修改 Dim products,productsNum,numTemp,I,num products=Session(“products”)productsNum=Session(“productsNum”)numTemp=Ubound(productsNum)

For I = 0 To numTemp num=CInt(Request.Form(“num”& I))

Call Updateproduct(products(I),num)Next '重定向到购物篮页面 Server.Transfer “cart.asp” %>(6)addproduct.asp 添加商品到购物篮 功能实现调用页面。文件执行后重定向到cart.asp。代码为: <% '调用子程序,添加货物

Call Addproduct(Request.QueryString(“Id”),1)'重定向到购物篮页面 Server.Transfer “cart.asp” %>(7)function.asp 功能函数文件:包含各个统计函数,添加函数,删除函数。4 网站运行部分截图:

六、网站建设的总结评价

1、站点立意 师大订餐订餐网是一个基于互联网的B/S模式的网上订餐系统,能为客户提供网络浏览菜品介绍、点菜订餐、餐品、服务评价等服务。客户通过登陆网站进行订餐事务,从而使网站获利。另外,订餐网站中蕴含丰富的营销知识,有许多值得我们去挖掘东西。本次课程设计,由于在技术上我们尚属于初学者,故小组采取分工合作方式进行,充分考虑小组意见后决定以在线订餐作为我们的课题,如此即可在网站开发过程中实践asp相关的课本知识,又可以考虑融入一定营销理念,从而达到跨学科实践学习的效果。

2、技术难点

(1)数据库的设计,犹豫经验的缺乏,导致数据的冗余、不合理。

(2)在线订餐中的“购物车”的技术实现,由于其涉及到Session、cookie对象的使用,而这部分只是于我们较为匮乏,故在这一段程序编写时遇到障碍。

(3)用户登陆验证功能的实现过程中,if语句的使用不合理,导致验证出错。(4)小组成员的差异,导致一定的合作失效。(5)硬件设备的性能限制

3、技术体会

在本次课程设计过程中,我可谓收获良多,这将对我以后的学习起到重要作用。下面我将对本次课程设计在技术上的体会作简要说明。

首先,在建立一个网站之前,我们需要具有一些基础知识和技能,其中包括:HTML, Javascript or Vbscript,CSS+DIV,数据库应用,还有一些关于基础美工的知识等。因为在建站的过程中,应用以上技术的地方比比皆是,可以说,如果没有它们,建立动态网站几乎是不可能的。对于HTML,我觉得应多了解其中的含义和较为常见的应用,不应过于深入的研究它的每个标签,每个属性的具体含义,因为这些可以在编程过程中去查阅相关资料(我常常把不懂的代码扔到百度中查!)。对于ASP来说,很多功能的实现都需要大量的编程,也就是说它的模块化程度不高,当然它也有自己的类和功能函数,但缺乏继承,所以有一定局限性,这就需要我们用javascript脚本合作完成,而ASP在脚本交叉上也非常开放,这就为我们在网页程序编写提供了方便。

基于ASP技术的企业手机销售网站的设计与实现 篇7

Dreamweaver是MACROMEDIA公司开发的集网页制作和管理网站于一体的所见即所得的网页编辑器, 优点是直观性, 使用方便, 容易学习, 是目前学习网页制作的基础。采用Dreamweaver, 可快速制作美观动感的页面布局、方便快捷生成CSS样式、导入Flash动画作为网页标志性图片等, 但也存在着最致命的弱点是安全性问题和数据库访问效率问题。

目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点, 同时改进了以前ASP的安全性差等缺点。ASP.NET是一个已编译的基于.NET Framework环境, 可以用任何与.NET兼容的语言创作应用程序, 语法在很大程度上与ASP兼容, 同时它还提供一种新的编程模型和结构, 可生成伸缩性和稳定性更好的应用程序, 并提供更好的安全保护。

如何实现干净、准确的HTML代码, 具备所见即所得的高效率、直观性, 又能实现高效的数据库访问和安全性一直是网页设计师梦想。

2. DreamWaver所见即所得进行页面组织和布局

在DreamWaver中采用DIV+CSS样式进行页面组织和布局, 编写HTML代码和脚本, 使页面布局设计更直观, 效率更高。页面布局一般包括图片导入、主导航栏、流动看板、侧导航栏、内容区、页脚等。内容区显示数据库中对应内容, 与数据库的交互采用ASP.NET技术实现, 除此之外, 页面的其它内容均可在DreamWaver实现。

采用DIV+CSS样式进行页面组织和布局, 优点如下:

使用层div进行页面代码的组织, 布局由CSS等文件进行控制, html中产生输出的代码一般要比使用table的页面少70%。结构的重构性强, 垃圾代码少。以当前流行的移动鼠标实现内容切换样式为例, 如1所示, 采用div、ul、li组织页面结构, 生成的代码更简洁。部分源视图代码如下:

样式表只是简单的文本, 采用CSS样式, 使得内容和结构实现了分离, 通过减少图像用量制作出体积更小、下载更快的网页。

采用样式可以更快更容易地维护及更新网页, 页面代码采用样式表后, 若要更改样式, 只须更改样式表代码, 而不需要每个页面进行更改。

用只包含结构化内容的HTML代替嵌套的标签, 搜索引擎将更有效地搜索页面内容。

3. 采用ASP.NET技术实现逻辑功能和数据库访问

在实际网站开发中利用DreamWaver所见即所得的功能进行页面布局和制作CSS样式, 效率更高, 但进行数据库连接访问时, 则采用ASP.NET技术有更高效率, ASP.NET的代码后置使得逻辑功能与页面代码分离, 使网站具有更好的安全性, 使代码更清晰, 维护更方便。

ASP.NET进行数据库访问几个关键技术问题实现如下:

3.1 配置数据库连接字符串

在网站配置文件Web.config中配置数据库连接字符串如下:

也可通过ASP.NET的数据源控件配置数据库连接字符串。

3.2 页面生命周期分析及长文件名的处理

分析ASP.NET页面加载的生命周期过程如图2所示, 采用数据控件显示数据库的内容, 在页面加载过程完成后实现了与数据库的绑定, 控件与数据库内容绑定后, 往往还需要通过编程方式调整内容的显示方式。以主页文件名的显示为例, 当文件名太长时, 需要进行截短, 则可在页面呈现过程事件PreRenderComplete事件或PreRender事件中编写逻辑代码更改文件名显示长度。以DataList数据控件为例, 数据控件绑定到数据库, 当所显示的文件名的长度超过26个字符时, 只截取文件名的前24个字符, 并加"…"字符, 实现方式如下:

将DataList控件与数据源控件绑定后, 在ItemTemplate项加入一个超链接按钮HyperLink1, 设置Text属性为:Text='<%#Eval ("Title") .Trim () %>', 使超链接按钮与数据库文件名绑定, 再设置其它相关属性, 脚本代码如下:

在后置代码页面, 编写PreRender事件或PreRenderComplete事件, 代码如下:

3.3 存储过程实现

存储过程是存放在数据库服务器上的预先编译好的SQL语句。使用存储过程, 可以直接在数据库中存储并运行功能强大的任务。由于存储过程可以将一系列对数据库的操作放在数据库服务器上执行, 因而可以降低对Web服务器的负载, 提高了整个系统的性能。存储过程具有以下优点:

可以在单个存储过程中执行一系列SQL语句, 在使用时只须传输存储过程名、参数和参数值等数据, 减少网络的数据交换。

封装了基本事务, 增加了代码的重用性、共享性。

可以在一个存储过程内引用其他存储过程, 这可以简化一系列复杂的语句。

存储过程创建时在服务器上进行编译, 所以执行起来比单个SQL语句快。以点击新闻标题查看新闻为例, 创建存储过程如下:

后置代码页面编写SelectedIndexChanged事件代码如下:

4. 语法兼容性问题

由于语法兼容性问题, 由Dreamwaver生成的源代码转换成ASP.NET会有一些语法警告或错误, 但基本不影响运行效果, 如在Dreamwaver中的HTML代码:<SCRIPT LANGUAGE=javascript>, 转换到ASP.NET中会有提示缺少type类型的警告性错误, 根据提示更改为:<script type="text/javascript">;Dreamwaver中通过使用HTML的图片标记img方式导入图片时, 如果在中没有添加alt图片代替标签, 则在ASP.NET必须要加alt=""或alt="图片代替提示内容", 否则也会语法警告……, 语法的兼容性问题可根据错误或警告提示进行修改。

5. 小结

本文提出采用DreamWaver和ASP.NET相结合的方法布局和设计网页, 综合利用了二种开发平台的优势, 通过实践证明, 这种开发方式特别适合初入门的网页设计师快速高效设计出精美直观高性能的网站。

参考文献

[1].Stephen Walther.ASP.NET技术内幕[M].机械工业出版社, 2002.

基于ASP技术的企业手机销售网站的设计与实现 篇8

【关键词】教务网络管理系统;ASP.NET;B/S模式;设计

引言

随着我国高等教育的快速发展和专科教育的普及,高职院校的办学规模在不断地扩大,高职院校在校生的人数正逐年增加。这就使得高职院校教务网络管理工作变得越来越繁重。本文针对目前高校教务管理的现状,结合教务管理创新的要求,开发出一套ASP.NET平台下基于B/S结构的教务网络管理系统。能够为各级教学管理部门提供准确、及时的信息和科学的分析处理数据;大大减少教务管理的手工操作,减轻教务人员的工作量,提高教务工作的效率。本文将探讨教务网络管理系统的设计思路,主要从相关技术介绍、需求分析、系统体系结构设计和系统实现4个方面展开讨论。

1.相关技术介绍

1.1ASP.NET技术。ASP.NET代表一个集合,一个环境,一个可以作为平台支持下一代Internet的可编程结构。ASP.NET的最终目的就是让用户在任何的地点、时间,利用任何的设备都能访问所需的信息、文件和程序。在ASP.NET环境下,程序员可以轻松的写出清晰的代码,可以方便的重用和共享代码等等,这就让程序员从复杂的代码中解放出来,更容易开发出web应用,从而更快的让计算机向web实现战略性转移。

1.2ADO.NET技术。ADO.NET是一组用于和数据源进行交互的面向对象类库。ADO.NET的设计目标是:简单地访问关系型和非关系型的数据库,将关系型数据库和XML文件访问统一起来,帮助开发程序人员在互联网上使用高效的多层数据库应用程序[1]。使用ADO技术,用户只需要登陆网站的后台管理程序与数据连接后,就可以实现对相应信息的查询、修改、插入、删除等操作。更重要的是开发人员根本不需要任何高深的数据库知识,只需懂得基本的互连网操作便可以做到,这样大大方便了教务网络管理的广泛应用。

2.需求分析

高职院校教务网络管理系统开发的目的是满足高职院校日常教务管理的需求,为了达到这个目的,开发人员必须充分理解系统的总体目标和用户的工作流程和机制。任何系统的开发首先要做的事都是确定用户对系统需求,即确定系统所要实现的功能。

(1)功能性需求。针对不同用户的需求设计不同的功能。校级管理用户(教务处管理员)、院系级管理用户(教学秘书)、教师用户、学生用户,每种用户对应不同的使用权限和网络的瞬时突发和非周期性更适合自适应采样,可根据网络行为动态调整采样率。(2)性能性需求。包括操作需求、扩展性和兼容性需求和對接性需求。

3.系统体系结构设计

3.1功能模块设计

(1)用户登录模块。用户选择登录身份:管理人员、教师教辅人员、学生和门户维护员,不同的身份权限不同。(2)部门管理子系统。部门管理子系统相当于系统的后台管理,部门管理员身份包括教务处管理员和各二级院系的教学秘书。其中教务处管理员具有最高管理功能,可以管理学校的一切教学事务。部门管理子系统主要包括教学计划设置、课表编排设置、学生成绩录入、考试事务安排、学生学籍录入、实践教学安排、教材管理等功能模块。(3)教师管理子系统。在用户以教师身份登录系统后,即进入教师管理子系统。系统主要包括个人信息、教学任务、教学安排、考试安排、成绩录入、网上评教等功能模块。(4)学生管理子系统。在用户以学生身份登录系统后,即进入学生管理子系统。系统主要包括个人信息、网上报名、网上选课、网上评教和成绩查询等功能模块。

3.2B/S体系结构设计。系统基于B/S模式,分布性比较强、维护较方便、开发简单且共享性强、总体拥有成本低。同Internet/Intranet完美的集成,可以充分利用网络资源,实现信息的实时发布。同时B/S结构满足地理位置分散、通讯介质各异的应用,可以最大程度地减少客户端的维护量[2]。减少数据库并发用户由于Web服务器采用的HTTP协议是一种无连接协议,通过此共享数据库连接方式,明显地减少数据库并发连接数。系统监控和管理方便可通过局域网、广域网等实时远程监控和管理应用系统。

3.3数据库设计

(1)数据库概念结构设计。概念结构设计是将数据抽象为信息结构,E-R模型是描述结构模型的基本工具。(2)数据库逻辑结构设计。教务管理系统数据库表数非常多,包括教务动态、管理规定、信息下载、教师信息、学生信息、专业信息、班级信息、课程信息、选课信息、成绩、教室信息、教学计划、学院信息、学籍信息和教材信息等等。

4.系统实现

4.1登录模块。教师、学生用户可以通过输入账号和密码登录教务管理系统。实现界面如图1所示:

4.2部门登陆管理模块。通过部门登陆管理模块可以实现教学计划设置、课表编排设置、学生成绩录入、考试事务安排、学生学籍录入、实践教学安排、教材管理等功能。部门登陆管理模块主菜单的实现界面如图2所示:

4.3课表编排功能模块。通过课程编排功能模块,可以实现基本课程信息数据导入,设置学年学期的排课计划,设置学期教学任务,确定课程任课指导老师,课表编排,辅助调课,课表分析,打印课表等。系部教学秘书可以随时修改和打印各个老师的课表,以及班级和教室使用的总课表。

5.结语

教务网络管理工作是高职院校管理工作的核心,本文设计并实现了一个基于B/S结构的高职院校教务网络管理系统,利用ASP.NET和ADO.NET技术开发的教务网络管理系统经过一段时间的反复调试、改进,从功能上达到了预期的目标,基本实现了高职院校教学网络管理中的相关要求,利用该系统,教务工作者分工合作,可以有效地完成日常的教务管理工作。

参考文献

[1]杨政.基于ASP_NET高校教务管理平台的设计与实现[D].华东师范大学出版社,2009,11:10-12.

[2]王准.基于教务管理系统探讨—C/S和B/S软件体系结构在管理类软件设计过程中的选择[J].消费导刊,2010(3).

上一篇:第一学期英语教研组工作计划下一篇:幼儿园果蔬娃娃教案