1、毕业论文 1 摘 要 本文主要阐述软件工程课程设计管理系统案例库中案例的建设过程。所选项目“机票预订系统”和“教务管理系统之子系统 系内课程安排”都具有典型的信息管理系统的特征。论文从软件工程的角度介绍了这两个案例的开发过程,包括可行性分析和需求分析,系统设计,文件和数据库设计,系统编码实现,测试。本系统采用了 Asp, Access 等技术。整篇论文,作者着重对“机票预订系统”进行了系统分析,开发,并对“教务管理系统之子系统 系内课程安排”进行了初步的分析。设计结果可作为软件工程课程设计训练的一个参考。 关键词: 软件开发 数据流程 数据字典 案例 毕业论文 2 Abstract This
2、text mainly elaborates the case a database of the software engineering course design management system in the construction process of the case example. All have the characteristic of the information management system of the typical model the options eyes“ the ticket reserves the system“ and“ the sub
3、- system of the educational administration management system- the course inside the department arrange“. The thesis introduced these two development processes of the individual cases example from the angle of the software engineering, inc luding the viability assessment and needs analysis, system de
4、sign, document and database design, the system codes the realization, test. This system adopted the Asp, Access etc. technique. The whole sis, the author emphasizes the analysis to“ the ticket reserves the system“ carried on the system analysis, the development, and carried on the first step to“ the
5、 educational administration manages the sub- system of the system- the course inside the department arrange“. Design result can be a reference of the software engineering course design training. Keywords: software projects data-flow diagram data dictionary Case example 毕业论文 3 目 录 第一章 绪论 . 1 1.1 软件工程
6、现状 . 1 1.2 课题意义 . 1 1.3 本课题解决方案简述 . 2 1.4 案例选择 . 2 1.5 本人所承担任务与要求概括 . 3 第二章 案例:“机票预订系统”的建设 . 4 2.1 问题描述 . 4 2.2 可性行分析 . 4 2.2.1 引言 . 4 2.2.2 可行性研究的前提 . 4 2.2.3 技术上可行性 . 5 2.2.4 经济上可行性 . 5 2.2.5 操作上可行性 . 5 2.2.6 法律上可行性 . 5 2.3 需求分析 . 5 2.3.1 目标 . 5 2.3.2 机票预订系统的功能要求 . 6 2.3.3 客户端功能要求 . 7 2.3.4 服务器端功能
7、要求 . 7 2.3.5 机票预订系统的性能要求 . 8 2.3.6 机票预订系统的数据要求 . 9 2.4 系统设计 . 9 2.4.1 系统构架设计 . 9 2.4.2 详细页面设计 . 19 2.4.3 文件和数据库设计 . 30 2.5 测试 . 34 2.5.1 目的 . 34 2.5.2 目标 . 34 2.5.3 运行环境 . 34 2.5.4 测试方案 . 34 2.5.5 测试过程 . 35 2.5.6 测试结果 . 38 2.6 小结 . 38 第三章 案例:“教务管理系统之子系统 系内课程安排”的建设 . 39 3.1 问题描述 . 39 3.2 可行性研究报告 . 39
8、 毕业论文 4 3.2.1 引言 . 39 3.2.2 可行性研究的前提 . 39 3.2.3 技术上可行性 . 39 3.2.4 经济上可行性 . 40 3.2.5 操作上可行性 . 40 3.2.6 法律上可行性 . 40 3.3 需求确定 . 40 3.3.1 引言 . 40 3.3.2 任务概述 . 40 3.4 系统设计 . 41 3.4.1 系统构架设计 . 41 3.4.2 输出设计 . 46 3.4.3 输入设计 . 46 3.4.3 文件和数据库设计 . 46 3.5 小结 . 49 第四章 系统集成与测试 . 50 4.1 目的 . 50 4.2 目标 . 50 4.3 运
9、行环境 . 50 4.4 测试 人员 . 50 4.5 测试项目 . 50 4.6 测试结果 . 50 结 论 . 51 参考文献 . 52 附 录 . 53 致 谢 . 60 毕业论文 1 第一章 绪论 1.1 软件工程现状 1969 年,美国 IBM 公司首次宣布除操作系统继续随计算机配送外,其余软件一律计价出售,从此开创了软件成为独立商品的先河。短短 30 几年的时间,计算机软件的重要性与日俱增。从 PC 机到笔记本电脑,从因特网到移动电话,从先进的武器到现代的家电,计算机软件几乎无处不在,无时不在。世界上最大的软件公司微软公司及其创始人,已成为全球知名度最高的企业和任务之一。在很多发达
10、国家,软件产业已成为社会的支柱产业,软件工程师也成为最受青睐的一种职业。 正是由于软件的发展,使计算机应用逐步渗透到社会生活的各个角落,使各行各业都发生了很大的变化。这同时也 促使人们对软件的品种,数量,功能和质量等提出了越来越高的要求。然而,软件的规模越大,越复杂,人们的软件开发能力越显得力不从心。于是,人们开始重视软件开发过程,方法,工具和环境的研究,软件工程应运而生。 软件工程技术历经三十多年的发展,目前已进入成熟期。软件过程改善的热潮使软件企业对软件工程技术及 case 工具的认识有了质的飞跃,正在被越来越广泛地接收。过程改善和技术提升的结合是软件产业发展的趋势。软件复用和软件构件技术
11、,再工程技术及领域工程技术正逐步成为主流软件技术,是软件工程化,工业化生产技术的核心技术。 “目前,从技术上看,软件开发的主要模式仍以手工作坊式为住,但工程化技术和case 工具的采用呈稳步上升趋势。软件企业的过程改善,规范化,规模化正成为一种趋势。推行软件的工程化,工业化生产技术和模式是软件企业发展并形成规模经济的必由之路,这已成为学术界和产业界的共识。” 当前,学术界和产业界的共识是:在注重软件工程技术研究的同时应注重软件过程的研究;软件开发单位不仅需要技术创新(采用先进技术),更需要将其过程改善放在首位。过程改善和技术的紧密结合才是完善的软件开发解决方案。 进入九十年代以来,软件过 程研
12、究及企业过程改善成为热潮,和软件工程技术研究及企业技术创新受到同等重视,两方面都得到了长足的发展。在技术方面,软件工程技术不断发展,软件工具市场不断扩大。在过程改善方面,已存在若干软件过程模型,并出现了软件企业的认证热潮,例如,美国的 cmm 认证和欧洲的 iso9001/tickit 认证。当前最重要的模型有 tickie, sei的 cmm, bootstrap 和 spice。 “当前,软件工程领域的主要研究热点是软件复用和软件构件技术,它们别视为是解决“软件危机”的一条现实可行的途径,是软件工业化生产的必由之路”。 我国政府支持的国家重点科技攻关项目青鸟工程长期从事对软件工程技术的研究
13、,在上述几方面及其集成上均有卓有成效的成果,保持了和国际前沿同步,同时,为我国软件产业基础设施建设以及软件工程学科建设做出了积极贡献。 1.2 课题意义 软件工程产业的发展水平决定了一个国家的信息产业的发展水平,也决定了本国信息产业在国际上的综合竞争力。软件工程产业是国民经济和社会信息化的基础性,战略性产业,它已经涉足工业,农业,商业,金融,科教卫生,国防和百姓生活等各个领域。“国务院振兴软件产业行动纲要( 2002 至 2005)提出我国软件产业发展目标是:到 2005 年,软件市场销售额达到 2500 亿元,国产软件和服务的国内市场占有率达到毕业论文 2 60%;软件出口额达到 50 亿美
14、圆;培育一批具有国际竞争力的软件产品,形成若干家销售额超过 50 亿元的软件骨干企业;软件专业技术人才达到 80 万,人才结构得到优化;在国民经济和社会发展的关键领域大力发展具有自主知识产权的软件产品和系统。要达到这一目标,我国急需培养大批软件工程技术和软件工程管理人才”。这就说明我国在近段时期内,对软件工程人员的需求是非常大的。而目前国内普通高校每年计算机专业的毕业人数仅 4 万人,供需的悬殊差距造成了 IT 专业人才,特别是高素质的软件工程人才的极度短缺。据教育部 2004 年最新统计资料和近期各地人才招聘会的信息展示,计算机专业仍然是今年供需最热门的专业,最走俏的三类计算机人才是:软件工
15、程师,游戏设计师和网络安全师。面对今年 280 万应届高校毕业生就业的严峻形式,软件行业等领域仍然处于人才需求排名前列。 为了进一步对软件工程课程的熟悉,进一步增加自己的设计,分析,创作能力。希望能创作出软件方面的管理系统,使我进一步的了解软件系统设计与开发过程中如何通过对开发过程的控制来实现资源的合理 配置以及技术的正确运用,以减小并避免系统的开发风险,保证系统功能的正确实现和具有稳定的性能,保证软件达到设计质量和具有可维护性。此外,我想在系统开发过程中锻炼自己的组织团队和管理团队的能力,成为具有合作能力和领导能力的技术型管理人员。 软件工程课程设计管理系统对于我们来将,比较接近我们的专业,
16、对与我们专业知识的强化有很大帮助。 1.3 本课题解决方案简述 本课题的要解决的问题主要是两部分,一是案例库的建设,即要求收集的各类小项目,要求将每个项目按面向对象的方法,给出可行性分析和需求确定,系统设计,输入/输 出设计,文件和数据库设计等标准文档。二是对课程设计的管理,包括学生和教师两大模块。其中,学生模块,主要涉及学生课程设计的选题,项目组工作的评估,学生个人课程设计成绩的评定,管理等;教师模块主要是案例库的管理,如录入,修改等。 在案例库的建设方面有很多种解决方案。本人采用的是 ASP+Access 的方式。在从Web 服务器来看,主要是脚本技术的选择。目前主要有 Asp、 PHP、
17、 Jsp 等脚本技术。而Jsp 基于 Java 的技术,第一次执行时将保存编译结果为字节代码,第二次执行时速度就非常的快,并且跨平台性好。但是他需要 Java 虚拟机,运行时非常耗系统资源,且对数据库的支持不是很完善。 PHP 技术是一项开源技术,特点是免费。但是由于没有一个专业 IT 公司的支持,其技术支持不好,通用性不强。 Asp 技术则是由微软公司开发的技术,具有易用的特点,且支持好( Windows2000 及以上的操作系统都支持),且笔者也熟悉这项技术,故而最终采用 Asp 技术。 从数据库来看,可以采用的技术多种多样,例如 SQL Server、 Access、 Oracle、 D
18、B2等数据库。我们的系统是小型平台,不需要也无法运行如 Oracle、 DB2 等大型数据库,而在 Windows 平台下适用的只有 SQL Server、 Access 等。且本文作者对 Access 技术也比较熟悉,所以采用 Access 技术。 1.4 案例选择 软件工程课程设计管理系统是对案例库的管理,所以就必须要有案例的支持。像机票预定系统、教务管理系统之子系统 系内课程安排、教材采购系统、图书管理系统等系统都具有典型的信息管理系统的特征,适合作为案例来加以建设。而且这些对于我们来讲也比较熟悉,与我们的专业也比较接近,工作量也不是很大。所以我选择了其中毕业论文 3 的两个案例进行系统
19、开发。它们是“机票预定系统”和“教务管 理系统之子系统 系内课程安排”。 1.5 本人所承担任务与要求概括 本人的任务是对两个案例的建设,包括 :机票预定系统和教务管理系统之子系统 系内课程安排。 要对这两个系统一一进行建设。首先是对案例做出问题描述,写出需求分析和可行性报告,其次才进行系统设计,并写出相应文档,画出设计流程图,系统功能图,最后还有对数据库的设计,测试。在对案例进行需求分析的时候,要从功能上、性能上、数据上进行需求分析。在可行性分析时,要从技术上、经济上、操作上、法律上进行分析。在案例系统设计的时候要从结构设计,详细设计和数据 库设计三方面下手。在测试的部分要分为案例测试和与老
20、师,学生模块联结测试。案例测试的时候主要是进行 黑盒测试,即主要是根据程序功能规定来测试的。先根据功能规定设计好测试用例,按照测试用例所设计的运行环境、运行数据来测试程序,最后判断测试结果与测试用例设计的期望结果的差别来确定程序是否符合要求。 最后案例完成后,还要进行和老师,学生模块的联结,由老师,学生模块实现对这两个系统的管理。 下面就对着两个案例分别进行设计。 毕业论文 4 第二章 案例:“机票预订系统”的建设 随着近年来,旅游热潮逐渐升温,人们经常利用节假日,进行旅 行。这时航空公司对自身的销售系统进行提升,开发 “机票预定系统”对自身的销售过程有相当大的帮助,以下这章就是“机票预定系统
21、”开发过程。 2.1 问题描述 “机票预定系统”的主要功能 是帮助航空公司对乘客的信息进行统计,更新。并对自己的航班做出相应的调整,来达到最好的运输效果。 其功能描述如下: ( 1)旅行社将乘客的信息传输到该系统,并在系统中注册。 ( 2)系统为乘客安排航班。 ( 3)旅客交付了预定金后,系统印出取票通知和帐单给旅客 ( 4)旅客在飞机起飞的前一天凭取票通知和帐单交款取票,系统核对无误即印出机票给 旅客 ( 5)航空公司为随时掌握各航向飞机的乘载情况,系统定期进行查询统计,以便适当调整。 ( 6)系统对旅客延误了取票时间的处理 ( 7)系统对班机取消后的处理 ( 8)旅客临时更改机票班次的处理
22、 2.2 可性行分析 2.2.1 引言 (1)目的: 该软件项目可行性研究报告是对项目课题的全面通盘考虑 ,是项目分析员进行进一步工作的前提 ,是软件开发人员正确成功的开发项目的前提与基础 .写软件项目可行性研究报告可以使软件开发团体尽可能早的估计研制课题的可行性 ,可以在定义阶段较早的认识到系统方案的缺陷,就可以少花费几个月 甚至几年的时间和精力 ,也可以节省成千上万元的资金 ,并且避免了许多专业方面的困难 .所 以该软件项目可行性研究报告在整个开发过程中是非常重要的 . (2)背景说明: a 本 系统的名称 : “机票预订系统” b本 系统 的任务提出者 为:航空公司。 开发者 :航空公司
23、计算中心。 用户 :航空公司。 实现该 系统 的 为:航空公司 计算中心 。 2.2.2 可行性研究的前提 (1) 要求 : a功能 :能自动的预订出乘客的机票,安排好航班。 b输出如报告、文件或数据 :取票通知和账单 (2) 目标 : a人力与设备费用的减少; b处理 速度的提高; c管理信息服务的改进; d自动决策系统的改进; 毕业论文 5 e人员利用率的改进。 2.2.3 技术上可行性 使用现有的技术能不能实现这个系统。由于本管理系统的对象单一,仅对 航空公司机票 进行管理。因此,这个管理系统比较适合采用数据库来设计。在计算机硬件和软件快速发展的今天,计算机硬件和软件已经远远满足本管理系
24、统的要求。在数据库编程工具方面,各种可视化编程方法的出现,一改过去程序设计的概念和方法,用户用鼠标就可以快速、简捷地创建应用程序,极大地提高了编程效率。如图 2.1 所示。 图 2.1 可行性分析图 2.2.4 经济上可行性 这个系统的经济效益能不能超过它的开发成本。本“机票预订系 统”是小型数据库应用程序,不需要多少人力和物力就可以设计的。但本系统一旦投入使用,将大大减少航空公司理人员的工作量,提高了工作效率,其经济效益是显而易见的。 2.2.5 操作上可行性 系统的操作方式在这个用户组织内能不 能行得通。在进行需求分析时,就对用户组织进行了调查,针对他们的情况,设计出适合这个用户组织的人机
25、界面,使操作方式简单明了。在加上本系统并不是很复杂,所以早操作方面不应有很大的问题。 2.2.6 法律上可行性 因为本管理系统是:航空公司对机票进行信息管理和航班信息管理的数据库系 统。因此, 航空公司应在乘客安全,信息保密,证件合法等方面加以控制。 2.3 需求分析 2.3.1 目标 机票预订系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有系统管理员 事务航班信息的更新 服务器终端显示数据 产生报表 售票员 查询请 求 数据库 产生报 表 客户机终端显示数据 售票员 表单申 请 客户机终端显示数据 售票员 机票核对事务 在客户端打印机票和帐单 产生报表 帐单 毕业论文 6 的
26、软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。根据可行性研究的结果和客户的要求,分析现有情况及问题,采用 Client/Server 结构,将机票预定系统划分为两个子系统:客户端 子系统,服务器端子系统。 2.3.2 机票预订系统的功能要求 根据航空公司的需要,系统应当包含基本的功能有:用户注册、用户登录和管理员登录,航班查看等。用户则划分为基本乘客和管理员两大类,管理员还兼具有管理职能 当旅客需要订票时,旅行社把旅客的信息做一个备份,再把旅
27、客的订票信息传给航空公司,航空公司则帮旅客安排航班,然后把安排好了的航班机票信息传回给旅行社,旅行社再通过对旅客订票记录的核实,产生取票通知,然后把取票通知发给旅客。具体流程如图 2.2 所示。 旅客清单 航班机票 旅客订票记录 订票 机票信息 航班机票信息 航班机票信息 订票信息 取票通知 订票信息 图 2.2 旅客订票流程图 当旅客获得取票通知后,就可以拿着取票通知到航空公司去取票。但首先航空公司会对旅客的信息进行查询,其中会用到旅客的订票清单。当系统检测到已售出机票的信息后,就会打印机票给旅客。具体流程如图 2.3 所示。 旅客信息记录 旅客 传给航空公司 安排航班 传给旅行社 产生取票通知 旅客