软件工程专业大四上学期课设之一,随便乱写的, 告评分不高,仅供参考。
一、软件工程实践课程任务目标
- 掌握软件工程问题调研、问题分析和原型设计;
- 掌握从技术、经济、 会等方面对系统软件的评估;
- 掌握运用软件工程原理、方法与技术进行软件系统设计实践能力;
- 培养学生项目管理与团队协调沟通的能力;
- 掌握数据库模式设计与实现;
- 掌握软件工程项目的测试流程;
- 熟练掌握UML建模、开发、数据库设计和测试工具的使用。
二、软件工程实践需求分析能力培养
1.实践目的
掌握UML软件建模工具的使用,掌握问题的分析、可行性研究和相关技术约束评估,熟练绘制数据流图;学习快速原型工具的使用和需求分析文档撰写。
2.实践基本能力要求
(1)针对XXX系统进行文献查阅和调研,问题细化,团队协调和沟通,需求分析进行详细设计;
(2)安装 VISIO 2008 以上版本软件,熟练应用VISIO绘制DFD图,绘制XXX系统业务流图,完成系统的软件逻辑模型;
(3)安装 Axure RP Pro 或者 Balsamiq Mockups 原型设计软件,学习绘制软件原型,完成XXX系统的软件原型设计。
3.实践方式
需求文档撰写和项目组成员讨论;
4.实践 告格式与内容
(1)XXX系统任务分析;
(2)XXX系统需求分析;
(3)XXX 系统的软件逻辑模型;
(4)XXX 系统的软件原型设计;
(4)提交XXX系统需求分析设计书。
三、软件工程实践系统功能设计
1.实践目的
系统功能的详细设计和概要设计,学习UML绘制类图、功能图、活动图,掌握面向对象分析与设计方法,协调团队之间的合作与分工以及项目的管理。
2.实践基本能力要求
(1)具备面向对象分析与设计能力;
(2)安装Star UML和Rational Rose软件,熟练使用UML软件工具,对目标系统进行设计;完成类图、序列图、状态图、活动图等软件建模图形的绘制;
(3)学习 UML 模型和源代码的双向工程。
3.实践方式
实验上机和项目开发;
4.实验 告格式与内容
(1)基于UML对目标系统进行概要和详细设计,绘制软件模型;
(2)描述UML模型和源代码的逆向工程、正向工程;
(3)提交绘制的图形和设计文档。
四、软件工程实践编码规范约束设计
1.实践目的
学习PHP、.Net、JAVA 等集成语言环境,熟悉各语言的编码规范,进行系统编码规范约束设计。
2.实践基本要求
(1)熟悉各种语言的编程环境;
(2)学习各语言的编码技巧和调试方法;
(3)设计系统编码规范与约束。
3.实验方式
上机编程与文档设计;
4.实验 告格式与内容
选择PHP、.Net、JAVA 三种语言和集成编程环境其中之一,介绍环境的基本使用方法,调试技术。
五、软件工程实践项目版本控制
1.实践目的
掌握SVN源代码版本管理工具,会部署Tortoise SVN服务端、客户端,实现不同IDE环境下的集成。例如:Ankh SVN(VS2008 插件) + Visual SVN Server 在Visual Studio环境下进行代码版本管理。
2.项目版本控制的基本要求
(1)安装SVN服务器和客户端软件,建立代码仓库,创建用户及授权;
(2)学习代码的同步、管理和协同开发方法;
(3)在Visual Studio环境下对所选系统的源代码进行版本管理;
(4)在Eclipse环境下对所选系统的源代码进行版本管理。
3.实践方式
上机实践和项目开发协同管理;
4.实践 告格式与内容
(1)Visual Studio环境下源代码版本管理;
(2)Eclipse环境源代码版本管理。
六、软件工程实践项目测试
1.实践目的
熟练掌握IBM Rational Robot、IBM Purify、Win Runner、NUnit、JUnit、CPPUnit、Webstress等各类软件测试工具的使用;编写项目测试计划、设计测试用例;掌握软件自动化测试方法,完成对系统的功能测试和性能测试。
2.软件工程实践项目测试的基本要求
(1)下载、安装IBM Rational Robot、IBM Purify、Win Runner、NUnit、JUnit、CPPUnit、Webstress、QTP、Load Runner和Test Manager等测试工具,熟练掌握其使用;
(2)掌握IBM Rational Robot中测试脚本录制、测试代码编写方法,针对实验代码进行自动测试;
(3)了解程序运行错误分析软件IBM Purify的工作原理,使用IBM Purify 进行代码错误检测,分析检测结果;
(4)采用Win Runner等黑盒测试工具进行所选系统的黑盒测试;
(5)运用NUnit、JUnit、CPPUnit工具软件进行白盒测试用例设计及自动测试;
(6)运用Webstress工具软件进行性能自动测试;
(7)了解Test Manager测试管理工具的使用方法;
(8)学习.Net、JAVA等集成开发工具中的软件测试、调试。
3.实践方式
上机实践和测试文档的撰写;
4.实践 告格式与内容
(1)说明测试脚本录制、测试代码编写、针对实验代码进行自动测试的步骤、方法和实现情况;
(2).Net 或者JAVA等集成开发工具中的软件测试、调试方法;
(3)针对目标系统,使用各种测试工具的测试过程。
七、软件工程实践系统数据库设计
1.实践目的
掌握数据库分析和设计并熟练掌握数据库的安装、操作和使用;完成对表的设计、实体关系图设计;学习使用数据库软件(例如:Power Designer)的使用。
2.实践基本要求
使用数据库软件(Power Designer)设计数据库物理模型,并创建数据库。
(1)安装数据库软件Power Designer;
(2)设计目标系统的CDM;
(3)设计目标系统的PDM。
3.实验方式
上机实践和数据库设计文档;
4.实验 告格式与内容
(1)数据库实体关系设计;
(2)数据库表的设计;
(3)使用数据库软件(Power Designer)构建目标系统数据库模型。
- 工资管理系统
- 宾馆客房管理系统
- 人事管理系统
- 学生学籍管理系统
- 员工档案管理系统
- 银行储蓄管理系统
- 考试管理系统
- 民航(铁路)订票系统
- 商场销售管理系统
- 水电管理系统
- 证券交易分析系统
需求说明书
一、给出完成系统的主要业务流程
图1 系统主要业务活动图
二、给出完成系统的主要用例
图2 系统用例图
三、根据每个用例给出相应的时序图
图3 注册时序图
图4 登录时序图
图5 学生在线考试时序图
图6 学生浏览历史试卷时序图
图7 学生浏览历史错题时序图
图8 考试管理时序图
图9 管理员设计考试时序图
图10 统计分析时序图
软件工程实践 告
1. 实践题目及实现功能
实践题目:考试管理系统
本系统的用户可分为管理员和普通用户两类。
共分为两个界面:一个界面用于管理员登录,主要负责进行基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于普通用户登录,主要负责在线考试、查询以往考试成绩等。
从总体上考虑,系统应实现下列功能:
对管理员来说,包括试卷管理、题库管理、成绩管理、学生管理、考试安排。
试卷管理:管理员可以从课程,各种题型的数量等方面对某份试卷提出一定的要求生成试卷规则。同时,管理员还可以对库中已有的试卷进行修改和删除,添加新试卷等。
题库管理:管理员可以对题库中的试题进行三种基本操作:添加新的考题、删除旧的考题、修改原有考题、其中试题类型包括判断题、填空题、选择题;对于每种类型的试题,教师可以设置题干、答案等属性。
成绩管理:管理员可以查看考生的考试成绩,并针对不同的课程进行成绩统计,包括考试人数、最高分、最低分、平均分以及各分数段得分人数等。
学生管理:管理员可以对用户的资料进行查询和删除。
考试安排:管理员可以发布指定时期的考试任务,学生只能在规定的时间内完成考试。
对普通用户来说,包括在线考试、查询以往考试成绩、错题浏览等。
在线考试:学生可以任选时间进行在线测试,考试结束后,系统会根据已有的标准答案进行在线判卷,考生可以立刻知道考试成绩。
查询以往考试成绩:学生可以在线询问以前参加过的每门课程的考试相关信息。
错题浏览:系统自动汇总学生以往所有错题,方便学生后期复习。
2. 软件需求分析
2.1考试管理系统任务分析
传统的考试方式一般要经过人工出卷、考生考试、人工阅卷等过程。对于一些课程来说,随着考生数量的增加,教师出卷阅卷的工作量将会越来越大,并且其工作十分繁琐和非常容易出错。在线考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化系统的建设,目的是充分利用学校现有的计算机软、硬件和 络资源实现无纸化考试以避免传统手工考试的不足。与传统考试模式相比, 上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。
2.2考试管理系统的软件逻辑模型
在需求分析过程中,通过用例建立系统模型,展示系统外部角色对系统的功能需求。
1、识别参与者与用例,在本系统中,把教师(出题者)、学员(考试人员)、考试管理员、系统管理员等确定为参与者;系统主要用例:考纲管理、考点管理、题库管理、专题测试管理、试卷管理、试卷生成、考试管理、成绩管理、公告管理、统计分析、学生登录、学生考试、模拟考试、考试信息、考试过程管理、注册、基本信息管理、班级管理、角色管理。
2、建立用例图,利用 Microsoft Office Visio 建模环境,创建系统的考生用例图、教师与考试管理员用例图、系统管理员用例图、客户端脚本对象用例图如图1~3所示,其中图3为一级用例图。
图1 系统管理员和客户端浏览器用例
图2 考生用例
图3 教师与考试管理员用例
2.3考试管理系统的软件原型
①前台首页模块设计
考生通过“考生登录”模块的验证后,可以登录到 络在线考试的前台首页,如图4所示。前台首页主要用于实现前台功能导航,在该页面中只包括在线考试、成绩查询、修改个人资料和退出4个导航链接。
由于本系统的前台首页主要用于进行系统导航,所以在实现时,采用了为图像设置热点的方法,这样可以增加页面的灵活度,使页面不至于太枯燥。下面将对如何设置图像的热点进行详细介绍。为图像设置热点,也可以称作图像映射,是指一幅图像可以建立多个超链接,即在图像上定义多个区域,每个区域链接到不同的地址,这样的区域称为热点。
图像映射有服务器端映射(Server-side-Image Map)和客户端映射(Client-side-Image Map)两种。目前使用最多的是客户端映射,因为客户端映射使图像上对应的坐标以及超链接的URL地址都在浏览器读入,省去和服务器之间互传坐标和URL的时间。
图4 前台首页图
②考生信息模块设计
考生信息模块主要包括考生注册、考生登录、修改个人资料以及找回密码等四个功能。考生首先要注册成为 站用户,然后才能被授权登录 站进行一系列操作的权限;登录后考生还可以修改个人的注册资料。如果考生忘记了登录密码,还可以通过 站提供的找回密码功能快速找回密码。考生信息注册模块的系统如图5所示:
图5 考生信息注册图
考生信息模块的Action实现类Student继承了Action类。在该类中,首先需要在该类的构造方法中分别实例化考生信息模块的StudentDAO类。Action实现类的主要方法是execute(),该方法会被自动执行,这个方法本身没有具体的事务,它是根据HttpServletRequest的getParameter()方法获取的action参数值执行相应方法的。
③在线考试模块设计
在线考试模块的主要功能是允许考生在 站上针对指定的课程进行考试。在该模块中,考生首先需要阅读考试规则,在同意所列出的考试规则后,才能选择考试,在选择考试课程后,系统将随机抽取试题,然后进入考试页面进行答题,当考生提交试卷或者到达考试结束时间时,系统将自动对考生提交的试卷进行评分,并给出最终考试成绩。在线考试模块的系统流程如图6所示:
图6 在线考试流程图
考生登录到 络在线考试的前台首页后,单击“在线考试”超链接,将进入到考试规则页面,在该页面中单击“同意”按钮,即可进入到选择考试课程页面,在该页面中将以下拉列表框的形式显示需要参加考试的课程.在该页面中,单击“开始考试”按钮,将关闭当前窗口,并打开新的窗口显示试题,如图7所示:
图7 考试试题图
④考试题目管理模块设计
络在线考试系统的后台首页是管理员对 站信息进行管理的首页面。在该页面中,管理员可以清楚地了解 站后台管理系统包含的基本操作。
a)管理员信息管理:主要包括管理员信息列表、添加管理员、修改管理员和删除管理员。
b)考生信息管理:主要包括查看注册考生信息列表和删除已注册的考生信息。
c)考生成绩查询:主要用于根据准考证 、考试课程或考试时间模糊查询考生成绩。
d)课程信息管理:主要包括查看课程列表、添加课程信息和删除课程信息。
e)套题信息管理:主要包括查看套题信息列表、添加套题信息、修改套题信息和删除套题信息。
f)考试题目管理:主要包括查看考试题目列表、添加考试题目、修改考试题目和删除考试题目。
g)退出管理:主要用于退出后台管理系统。
为了方便管理员管理,在 络在线考试系统的后台首页中显示考生成绩查询页面,其运行结果如图8所示:
图8 后台首页图
管理员登录系统后,单击“考试题目管理”超链接,进入到查看考试题目列表页面,在该页面中单击“添加考试题目”超链接,进入到添加考试题目页面。在该页面的“属性课程”下拉列表框中选择“计算机专业英语”,在“所属套题”下拉列表框中将显示该课程对应的套题名称。添加考试题目页面的运行结果如图9所示:
图9 添加考试题目图
3. 面向对象的软件分析与设计
3.1系统类图
以用例模型为输人,对用例模型进行分析,把系统分解为相互协作的分析类时,以MVC模式识别系统的类、对类进行划分、建立初步模型、确定类的属性和操作、确定类之间的联系,最后建立类图。系统的类图如图4所示,实现时,类主要体现在视图所对应的后置文件中,除了数据库操作、加密算法等公共业务类以外。
3.2时序图
在线考试系统中,用顺序图更能表示系统服务流程,通过图4可以识别出系统里的对象,考试服务子系统的各对象执行的顺序如图5所示,先定义考纲,再定义试卷。考试终端子系统的工作时序为:考生登录,如有考试自动切换进入考试界面,否则由考生选择专题进行测试。一旦进入考试,客户端脚本对象开始倒计时,考生可以自由选择考题类型和考题进行作答。与此同时,考试数据将实时备份至客户端,并在设置时间隔内异步备份至服务端,如图6所示。专题测试在服务端的定义与试卷定义及生成执行时序类似,而专题测试的考试终端仅获取考题,考试结東后给出评价分数。
3.3状态图
图10 在线考试系统服务端类图
图11 考试管理子系统的顺序图
图12 考试终端子系统顺序图
图13 考试与测试的状态图
图14 一般数据对象的状态图
3.4描述UML模型和源代码的逆向工程、正向工程
图15 UML模型的正向工程图
图16 源代码的逆向工程图
4. 集成编程环境、编码规范及程序清单
4.1环境的基本使用方法,调试技术
选择MySql作为后台的数据库,选择MyEclipse作为应用程序开发工具,应用JAVA、JSP、JavaScript、Html、Tomcat服务器技术,整个系统完全基于B/S (Browser/Server)模式进行设计,采用strus框架进行架构。
&n
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!