上世纪90年代以来,随着网络、通信和信息技术的突破性进展,Internet在全球爆炸
性增长并迅速普及。在这一发展背景下,网上购物应运而生了。网上购物是基于互联网、以交易双方为主体、以银行电子支付和结算为手段、以客户数据为依托的全新的商务模式,以JSP+Servlet+JavaBean开发一个基于MVC架构,设计一个简单的网上购物小车网站。网站主要根据实际的需求,以需求分析、网站的设计目标,并且重点进行网站功能模块的详细设计和实现,Java环境是JDK1.5.0_06,IDE环境是NetBeans5.0和 SQL数据库,实现了查询功能、购买功能、管理功能模块。本论文详尽论述了需求分析、系统分析、概要设计、详细设计、以及测试与调试的整个过程。最后,总结了网站实现的优缺点。本网站具有良好的功能完备性,较好的人机交互界面,测试结果表明,网站设计已经达到要求,具有较好的实用价值。
关键词:购物车网站 系统开发 数据库设计 实用性
目 录
第一章 引 言 .................................................... 1 第二章 需求分析 .................................................. 1 第三章 总体设计 .................................................. 4 第四章 详细设计与实现 ............................................ 1 第五章 系统测试 .................................................. 3 结 论 ......................................................... 4 参考文献 ......................................................... 4
II
大连交通大学软件实践
第一章 引 言
本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。系统利用.Net平台技术进行开发,实现学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。同时还对系统的开发原理、功能特点和设计方案进行了介绍。
第二章 需求分析
学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。
(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等;
(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;
(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。
1
大连交通大学软件实践
本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。
< 图2.1系统用例图 课程信息管理< 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模 式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库的设计通常是以一个已经存在的数据库管理系统为基础的。 2 大连交通大学软件实践 根据用户需求和业务流程,本系统SQL Server 2000数据库管理系统。Java环境是JDK1.5.0,IDE环境是NetBeans5.0,使用了Tomcat 5.5.7作为JSP/Servlet容器,而EJB容器则采用了JBoss4.0.3。此次开发研究使用了JSP+Servlet+JavaBean开发一个基于MVC架构,MVC是一种设计模式,主要有三个主要组件: 模型:负责业务逻辑的状态和管理数据; 视图:负责显示业务领域的表示视图; 控制器:负责控制用户输入的流程和状态。 使用MVC模式时,通常会有某种形式的事件通知,当模型某部分有了变动时,可以通知视图控件。 NetBeans是SUN公司重点开发的JAVA集成开发环境,使用JAVA编程语言编写,具有很好的可移植性,它集成了程序员开发桌面,WEB,企业级和移动应用所需要的一切软件资源,具有以下特性: (1)全面支持构建NetBeans插件模块和基于NetBeans平台的富客户端应用程序。 (2)全面支持SUN Application Server8.2及Tomcat 5x (3)全面支持JAVA企业版应用程序消息服务 (4)增强了对JAVA Server Faces和Struts的支持 (5)提供了更强大的代码编译器 (6)加快了代码编译的速度 (7)重新实现了对CVS的支持 (8)改进的、用户界面友好的IDE外形 (9)继承了编写、测试以及调试JAVA ME程序的功能 3 大连交通大学软件实践 第三章 3.1 系统框架 总体设计 学生选课系统是实现学生选课退课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统有前台和后台两部分,共分为4个模块:管理员模块,教师模块,学生模块和公有模块,分别用于完成各自的功能。以下为学生选课系统总体设计图和各功能模块说明: (1)总体设计图 学生选课系统 前台模块 后台模块 学生登录模块 教师登录模块 管理员登录模块 学生处理模教师处理模块 管理员处理模块 公共模块 块 图3.1 功能结构图 购物流程图是一种表明用户购物过程的流程图,它可以帮助分析人员找出流程中的不合理回路。下面图3.2就是客户网络购物流程图。 图3-1学生选课系统总体设计图 (1) 管理员修改课程信息顺序图 4 大连交通大学软件实践 (1) 管理员修改课程信息顺序图 : BaseUser : 管理员1: 登录 : Admin : Course 3: 进入管理员界面2: 验证登录 点击“修改课程”4: 6: 提示修改成功5: 修改课程信息 (2) 学生用户退选课的顺序图 8: 提示提交成功7: 提交成绩 : 教师用户1: 登录 : BaseUser : Teacher : Elect2: 验证登录3: 进入老师界面4: 点击“提交成绩”5: 准备提交成绩6: 验证是否已提交成绩 5 大连交通大学软件实践 3.2数据库设计 学生选课ER图 (1)数据库表 序号 1 2 3 4 5 6 Student Teacher Users Elect Cource Depart 数据库表 存储学生的信息 存储教师的信息 存储管理员的信息 存储选课的信息 存储课程的信息 存储学校系院信息 数据表存储的内容 6 大连交通大学软件实践 (2)数据库表结构 ①学生表Student的详细数据字段: 表3-3 Student学生用户表 序号 1 2 3 4 5 6 字段名 stuID stuPwd stuName stuDepart stuGrade stuClass 字段类型 nvarchar(20)not null nvarchar(20)not nul nvarchar(20)not nul Int int int 学生学号 学生密码 学生姓名 学生系院号 学生年级 学生班级 说明 备注 关键字 ②教师表Teacher的详细数据字段: 表3-4 Teacher教师用户表 序号 1 2 3 4 字段名 teaID teaPwd teaName teaDepart 字段类型 nvarchar(20)not null nvarchar(20)not null nvarchar(100)not null Int(4) 说明 教师编号 教师密码 教师姓名 教师系院号 备注 关键字 7 大连交通大学软件实践 ③课程表Course的详细数据字段: 表3-5 Cource课程信息表 序号 1 2 3 4 5 6 字段名 courseID teaID courseName courseTime courseAddress courseInfo 字段类型 nvarchar(20)not null nvarchar(20)not null nvarchar(100) not null nvarchar(20) nvarchar(50) Text 说明 课程编号 教师编号 课程名称 上课时间 上课地点 课程简介 备注 关键字 关键字 ④选课表Elect的详细数据字段: 表3-6 Elect选课信息表 序号 1 2 3 4 字段名 stuID courseID teaID Score 字段类型 nvarchar(20)not null nvarchar(20)not null nvarchar(20)not null int 说明 学生学号 课程编号 教师编号 课程成绩 备注 关键字 关键字 关键字 ⑤系统管理员表Users的详细数据字段: 表3-7 Users管理员表 序号 1 2 字段名 adminName adminPwd 字段类型 nvarchar(20)not null nvarchar(20) 说明 系统管理员用户名 系统管理员密码 备注 关键字 8 大连交通大学软件实践 ⑥系院表Depart的详细数据字段: 表3-8 Depart系院表 序号 1 2 字段名 departID departName 字段类型 Int not null nvarchar(100) 说明 系院号 系院名称 备注 关键字 3.3 设计人机交互子系统 (1)用户分类 本系统的用户可分为三类: ①管理员用户; ②教师用户; ③学生用户。 (2)用户描述 ①管理员用户的描述: 管理员用户在整个选课系统中起到管理和维护的作用,对学生和教师的信息进行管理和维护以及开设课设等职责。 ②教师用户的描述: 教师用户在本系统中具有管理选修了自己开设的课程的学生的权限,查看选修了自己开设课程的学生信息有及提交学生成绩。 ③学生用户的描述: 选课系统主要是针对管理学生的,学生在本系统中具有修改自己的信息,以及选课和退选的功能。 (3)设计命令层次 ①系统的人机交互子系统的内容和准则: 本学生选课系统的人机交互子系统在根据不同的用户身份登陆到不同的页面,然后按照不同的用户只能进行用户权限内的操作,其结构图如下: 9 大连交通大学软件实践 第四章 详细设计与实现 本系统采用了三层架构来实现,即分为用户界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数据库打交道,为业务逻辑层提供底层的数据库操作。 4.1 Database类主要是与数据库连接,提供数据库操作功能 4.2 UserBase类是所有系统角色用户的基类,完成用户登录验证与修改密码的功能 4.3 系统登录页面,运行效果如下: 4.4 学生用户选课界面运行效果图如下: 1 大连交通大学软件实践 4.5 教师用户提交成绩界面运行效果如下 2 大连交通大学软件实践 4.6 管理员用户添加课程运行效果如下: 第五章 系统测试 在系统测试中,我们首先对各个子模块进行单元测试,即把每一个模块作为一个单独的实体来测试,保证每个模块作为一个单元能正确运行。然后在完成所有模块后,我们将各子模块集成起来,再对它进行系统测试,找出系统设计或编码上的错误,以及验证系统是否实现了指定的功能。最后找几个其他的同学再对系统进行黑盒子测试,验证系统是否满足用户的功能需求。 在测试的过程,特别是在集成测试之后,发现了许多问题及功能缺陷,最后经过修改调试后都解决了。比如,有一个问题是,在删除教师用户之后,系统里还剩有许多与该教师有关的冗余记录,造成系统混乱。在进行了分析之后,发现是因为在删除教师用户时,没有对与他所关联的记录进行删除造成的,在添加了对其关联记录的级联删除之后,问题得到了解决。 3 大连交通大学软件实践 结 论 通过这次软件工程课程设计的实践训练,进一步掌握软件工程的方法和技术,高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。学习和实践了分析和设计软件系统的各种知识,包括面向对象的系统分析与设计,编码和测试方面的知识。掌握了自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程。加深掌握了.Net平台的三层架构模式设计。进一步加强和提高软件工程文档的编写能力。增强了协作能力和团队精神。本系统基本实现了关键的功能模块,在功能上基本满足了用户的需求,但是由于时间较紧,有些模块以及整个系统还有许多不完善的地方,如界面不太美观,操作性不太友好等。 参考文献 [1] 张海藩.软件工程导论(第4 版).北京:清华大学出版社,2005 [2] 成嘉.UML系统建模与分析设计.北京:机械工业出版社,2007 [3] UML基础与Rose建模案例.北京:人民邮电出版社,2004 [4] 刘乃丽 ASP.NET 2.0 网络开发详解.北京:电子工业出版社,2008 4 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- ovod.cn 版权所有 湘ICP备2023023988号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务