机票预定信息系统
- 格式:doc
- 大小:300.00 KB
- 文档页数:15
《可视化建模与UML》课程结业报告课题名称: 航空客运订票系统建模姓名: ***学号: *******班级:****: ***完成日期: 2013.06.16目录第一章概述 (3)1.1系统开发的摸底和开发背景 (3)1.2系统功能 (3)1.3系统结构框架 (4)1.4开发环境 (5)第二章用例模型 (6)2.1用例模型简介 (6)2.2用例图的的含义及其作用 (6)2.3用例图及用例描述 (7)第三章类模型 (10)3.1类模型简介 (10)3.2类图的作用 (10)3.3类图 (11)第四章交互模型 (13)4.1交互模型简介 (13)4.2序列图简介 (13)4.3序列图的作用 (13)4.4序列图描述及其序列图 (14)第五章行为模型 (20)5.1行为模型简介 (20)5.1.1活动图简介 (20)5.1.2活动图的作用 (20)5.1.3状态图简介 (21)5.1.4状态图的作用 (21)5.2行为模型图 (21)5.2.1活动图及其描述 (21)5.2.2状态图及其描述 (23)第六章构件图和部署图 (25)6.1构件图简介 (25)6.2部署图简介 (25)第七章课程学习小结 (27)7.1课程小结 (27)7.2学习心得 (27)参考文献 (28)第一章概述1.1系统开发的摸底和开发背景随着科技与经济的发展,越来越多的人选择乘飞机,这跟我国的经济增长有很大关系,人们在追求快节奏的生活方式,所以做飞机无疑成了首选。
而且随着网络的盛行,航空订票系统就显得尤为重要,我们开发这个系统主要是为了方便大家,让大家能够快速、清晰、准确地了解航班信息,而不至于像以前那样排队等候,从而避免耽搁乘客大量的等待时间。
航空客运业务诞生已有进一个世纪了,作为现有交通工具中最方便快捷的一种,它确实地给大家的生活、出行带来了极大的方便。
随着航空客运业务多年来的发展,其售票业务也同样不断地发展。
1.2系统功能机票预订系统是在现代社会生活节奏不断加快,对机票预订工作的自动化和准确化要求也日益强烈的背景下,为了实现机票预订工作的网络化,以及实现网络查询和统计一体化而开发的管理信息系统。
数据结构课程项目实施方案一、项目名称: 机票订购系统二、项目要求及系统基本功能•利用数据结构的知识独立完成一个应用系统设计•程序正常运行,能够实现基本的数据增加、删除、修改、查询等功能•体现程序实现算法复杂度优化•体现程序的健壮性系统预期实现基本功能:(结合本系统预期具体实现,描述出对应基本要求(增、删、改、查等)的具体功能)1.增加航班信息2.修改航班信息3.查询航班信息4.订购机票5.退订机票6.备份恢复航班信息7.进入系统需要密码,并且密码可修改8.分为Admin和Client用户,不同用户权限不同,并且可修改三、项目组成员及任务分配(基本分为组织实施组织、程序功能模块编写、系统说明撰写等。
其中程序功能子模块实现每一个成员都要分配)组长:许峥10160400113主要任务:排序账户信息的修改修改和删除航班信息主程序调试项目报告制作组员:高家乐10160400109主要任务:程序的主题框架增加航班信息查找航班信息主程序调试源代码编写组员:杨柳10160400102主要任务:数据的备份与恢复LOGO制作菜单的制作以及主程序调试流程图制作四、系统设计算法描述(用文字结合框图描述系统功能主要实现算法思路等,即使用自然语言描述系统实现)1、修改航班信息:可以用来修改航班的具体信息,可以按照航班号来查询航班的主要信息以便修改。
2、查询航班信息:可以用来查询航班的具体信息,可以按照航班号来查询具体信息。
3、增加航班信息:可以选择在任何一个航班的后面插入该航班的信息,同样可以按照航班号来插入。
4、删除航班信息:可以按照航班号来删除航班的信息。
5、顶退票功能:可以订购和退订机票。
6、系统登录及密码管理:本程序分为Admin和Client两个账户,不同账户不同功能,而且账户名,密码以及权限都可以修改。
7、保存及备份:本程序可以保存和备份航班信息,而且可以指定路径,所保存的信息包括航班的各项信息。
五、系统实现程序程序流程图(主要以程序流程图的形式体现各函数之间的运行调用关系)程序源代码/*程序名称:飞机订票系统*//*团队成员:组长:许铮*//* 组员: 欧阳益*//*完成时间:2011年6月3日*/#include<stdio.h>#include<conio.h>#include<windows.h>#include<string.h>#include<stdlib.h>#define ACCOUNTS 2#define MAX 20typedef struct{char name[20];double id;}guestinf;typedef struct{char PlaneID[5];char PlantUp[5];char PlaneDown[5];double value;int chair;char start[MAX];char end[MAX];guestinf gueinf[MAX];}plane;typedef struct{char name[20];char password[10];int type;}account;void welcome(){printf("\t\t\t☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n");printf("\t\t\t ☆☆☆☆☆☆\n");printf("\t\t\t ☆☆☆☆☆\n");printf("\t\t\t ☆☆☆☆☆☆☆☆\n");printf("\t\t\t ☆☆☆☆☆\n");printf("\t\t\t ☆☆☆\n");printf("\t\t\t ☆☆☆☆☆☆\n");printf("\t\t\t☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n");system("color 48");Sleep(300);system("color 48");Sleep(300);system("color 7C");Sleep(300);system("color 0F");}int password(){system("color 0c");FILE *pw;account accounts[ACCOUNTS];/*存储账户信息*/account pwtry;/*存储用户输入的账户信息*/strcpy(accounts[0].name,"Admin");strcpy(accounts[0].password,"neusoft");accounts[0].type=1;strcpy(accounts[1].name,"Client");strcpy(accounts[1].password,"ese10001");accounts[1].type=2;int i;pw=fopen("password.txt","r");if(NULL==pw){printf("本程序的Admin的初始密码为neusoft,Client初始密码为ese10001\n");pw=fopen("password.txt","w");fprintf(pw,"%10s %10s %1d",accounts[0].name,accounts[0].password,accounts[0 ].type);fprintf(pw,"%10s %10s %1d",accounts[1].name,accounts[1].password,accounts[1 ].type);fclose(pw);Sleep(3000);return 1;}else{for(i=0;i<ACCOUNTS;i++){if(feof(pw)){printf("load error");break;}else{fscanf(pw,"%10s %10s %1d",accounts[i].name,accounts[i].password,&accounts[i] .type);}}int repeat=max(strlen(accounts[0].password),strlen(accounts[1].password));printf("\n\n\n\n\n\n\n\n\n\n\n\n");printf("\t\t\t\t请输入用户名");scanf("%s",);printf("\t\t\t\t请输入密码");for(i=0;i<repeat;i++){pwtry.password[i]=getch();printf("*");if('\13'==pwtry.password[i])break;}printf("\n");for(i=0;i<ACCOUNTS;i++){if(0==(strncmp(accounts[i].password,pwtry.password,strlen(accounts[i].passwor d)))&&(0==strncmp(,accounts[i].name,strlen(accounts[i].name)))){system("cls");printf("\t\t\t\t密码正确,欢迎进入本系统!\n");fclose(pw);Sleep(300);system("color c0");Sleep(300);system("color 0c");Sleep(300);system("color c0");Sleep(300);return accounts[i].type;}}printf("\a\t\t\t\t用户名或者密码错误!即将退出!");fclose(pw);Sleep(1000);exit(1);}}int changeuserfile(){char password1[10],password2[10];account pwtry;int i,n;FILE *pw;account accounts[MAX];pw=fopen("password.txt","r");for(i=0;i<MAX;i++){if(feof(pw))break;else{fscanf(pw,"%10s %10s %1d",accounts[i].name,accounts[i].password,&accounts[i] .type);}}printf("请输入用户名");scanf("%s",);printf("请输入密码");for(i=0;i<10;i++){pwtry.password[i]=getch();printf("*");if(pwtry.password[i]=='\13')break;}for(i=0;i<MAX;i++){if(!((strncmp(accounts[i].name,pwtry.password,strlen(accounts[i].password)))&& (strncmp(,accounts[i].name,strlen(accounts[i].password))))){printf("\n请输入新的账户名");scanf("%s",accounts[i].name);printf("请输入新密码");scanf("%s",password1);printf("请再次输入");scanf("%s",password2);while(1){printf("请输入账户类型(1 admin,2 client");scanf("%d",&accounts[i].type);if(accounts[i].type!=1&&accounts[i].type!=2)printf("输入错误,请重新输入");elsebreak;}if(0==strcmp(password1,password2)){strcpy(accounts[i].password,password1);pw=fopen("password.txt","w");for(i=0;i<MAX;i++){fprintf(pw,"%10s %10s %d",accounts[i].name,accounts[i].password,accounts[i].ty pe);}fclose(pw);printf("修改成功!\n");return 1;}else{printf("两次输入的密码不一致,修改错误!\n");return 0;}}}}int AddInf(plane *p){int i=0;while(p[i].chair!=0&&i<10)i++;printf("请输入航班号\n");scanf("%s",p[i].PlaneID);printf("请输入起飞时间");scanf("%s",&p[i].PlantUp);printf("请输入降落时间");scanf("%s",&p[i].PlaneDown);printf("请输入票价");scanf("%lf",&p[i].value);printf("请输入座位数");scanf("%d",&p[i].chair);printf("请输入起飞地点\n");scanf("%s",p[i].start);printf("请输入降落地点\n");scanf("%s",p[i].end);return 0;}int Num(plane *p){int i,j=0;for(i=0;i<10;i++){if(0!=strcmp(p->PlaneID,"NULL"))j++;}return j;}int All(plane *p){int i,j;j=Num(p);for(i=0;i<j;i++){printf("\t航班号\t起飞时间\t降落时间\t起飞地点\t降落地点\t票价\t 剩余座位数\n");printf("\t%s\t%s\t%s\t%20s\t%20s\t%lf\t%d",p[i].PlaneID,p[i].PlantUp,p[i].Plane Down,p[i].start,p[i].end,p[i].value,p[i].chair);}return 1;}int IDtoNum(plane *p,char *q){int i;for(i=0;i<MAX;i++){if(0==strcmp(p[i].PlaneID,q))return i;}return -1;}int RepairInf(plane *p){char PlaneID[5];char *q;q=PlaneID;printf("请输入航班号");scanf("%s",&PlaneID);int i=IDtoNum(p,q);printf("请输入新的航班号\n");scanf("%s",p[i].PlaneID);printf("请输入新的起飞时间");scanf("%s",&p[i].PlantUp);printf("请输入新的降落时间");scanf("%s",&p[i].PlaneDown);printf("请输入新的票价");scanf("%lf",&p[i].value);printf("请输入新的座位数");scanf("%d",&p[i].chair);printf("请输入起飞地点\n");scanf("%s",p[i].start);printf("请输入降落地点\n");scanf("%s",p[i].end);return 0;}int FindInf(plane *p){char PlaneID[5];char *q;q=PlaneID;printf("请输入要查询的航班号");scanf("%s",PlaneID);int i=IDtoNum(p,q);if(i==-1){printf("没有这个航班");return 0;}else{printf("\t航班号\t起飞时间\t降落时间\t起飞地点\t降落地点\t票价\t 剩余座位数\n");printf("\t%s\t%s\t%s\t%20s\t%20s\t%lf\t%d",p[i].PlaneID,p[i].PlantUp,p[i].Plane Down,p[i].start,p[i].end,p[i].value,p[i].chair);return 1;}}int Buyticks(plane *p){char PlaneID[5];char *q;q=PlaneID;printf("请输入要购票的航班号");scanf("%s",PlaneID);int i=IDtoNum(p,q);if(i==-1){printf("没有这个航班");return 0;}else if(p[i].chair==0){printf("这架飞机已经没有座位了!");return 0;}else{printf("请输入您的姓名");scanf("%s",p->gueinf->name);printf("请输入您的身份证号");scanf("%lf",&p->gueinf->id);p->chair--;return 1;}}int Sellticks(plane *p){int k,j;char PlaneID[5];char *q;q=PlaneID;char name[MAX];double id;printf("请输入要购票的航班号");scanf("%s",PlaneID);int i=IDtoNum(p,q);if(i==-1){printf("没有这个航班");return 0;}else{printf("请输入您的姓名");scanf("%s",name);printf("请输入您的身份证号");scanf("%lf",&id);for(k=0;k<10;k++)for(j=0;j<MAX;j++){if(0==strcmp(name,p[k].gueinf[j].name)&&(id==p[k].gueinf[j].id)){p[i].chair++;printf("退票成功!");return 1;}}printf("查无该乘客信息,退票失败!");return 0;}}int cancleInf(plane *p){char PlaneID[5];char *q;q=PlaneID;printf("请输入要取消的航班号");scanf("%s",PlaneID);int i=IDtoNum(p,q);strcpy(p->PlaneID,"NULL");printf("取消成功!\n");return 0;}int recovery(plane *p){return 0;}int backup(plane *p){FILE *bac;char back[20];printf("请输入要保存的文件名");scanf("%s",back);bac=fopen(back,"w");int i;fprintf(bac,"\t航班号\t起飞时间\t降落时间\t起飞地点\t降落地点\t票价\t 剩余座位数\n");for(i=0;i<10;i++){if(0==strcmp(p[i].PlaneID,"NULL")){fprintf(bac,"\n\nend");break;}fprintf(bac,"\t%s\t%s\t%s\t%20s\t%20s\t%lf\t%d",p[i].PlaneID,p[i].PlantUp,p[i]. PlaneDown,p[i].start,p[i].end,p[i].value,p[i].chair);fclose(bac);printf("备份成功!");return 1;}}void about(){printf("程序名称:飞机票订票系统\n");printf("制作团队:嵌入1班\n");printf("组长:许铮\n");printf("组员:欧阳益\n");}void menu(plane *p){int choice;while(1){printf("\n========================================================== =====================\n");printf("尊敬的Admin,欢迎使用本系统!\n");printf(" 1 ******* 新增航班\t");printf(" 2 ******* 修改航班\n");printf(" 3 ******* 查询航班\t");printf(" 4 ******* 订购机票\n");printf(" 5 ******* 退订机票\t");printf(" 6 ******* 取消航班\n");printf(" 7 ******* 恢复航班信息\t");printf(" 8 ******* 备份航班信息\n");printf(" 9 ******* 用户管理\t");printf(" 10 ******* 关于\n");printf(" 0 ******* 退出\n");printf("============================================================ ====================\n");printf("请输入您所需要的服务");scanf("%d",&choice);switch(choice){case 1:AddInf(p);break;case 2:RepairInf(p);break;case 3:FindInf(p);break;case 4:Buyticks(p);break;case 5:Sellticks(p);break;case 6:cancleInf(p);break;case 7:recovery(p);break;case 8:backup(p);break;case 9:changeuserfile();break;case 10:about();break;case 0:exit(1);break;default:printf("输入错误,请重新输入!");fflush;}}}void menuC(plane *p){int choice;while(1){printf("\n========================================================== =====================\n");printf("尊敬的Client,欢迎使用本系统!\n");printf(" 1 ******* 订购机票\n");printf(" 2 ******* 退订机票\t");printf(" 3 ******* 显示所有航班信息\n");printf(" 4 ******* 查询航班信息\t");printf(" 5 ******* 用户管理\t");printf(" 6 ******* 关于\n");printf(" 0 ******* 退出\n");printf("============================================================ ====================\n");printf("请输入您所需要的服务");scanf("%d",&choice);switch(choice){case 1:Buyticks(p);break;case 2:Sellticks(p);break;case 3:All(p);break;case 4:FindInf(p);break;case 5:changeuserfile();break;case 6:about();break;case 0:exit(1);break;default:printf("输入错误,请重新输入!");fflush;}}}void main(){int i,j;plane PlaneInf[10];plane *p;p=PlaneInf;for(i=0;i<10;i++){PlaneInf[i].chair=MAX;strcpy(p[i].PlaneID,"NULL");}int n=password();welcome();if(n==1)while(1)menu(p);else if(n==2)while(1)menuC(p);else{printf("\a非法的客户端!");Sleep(3000);exit(1);}}六、系统使用说明当第一次打开学生成绩管理系统时,系统会提示用户默认账户名和默认密码当以后打开时,系统会要求用户输入用户名以及密码输入用户名和密码之后,会进入功能界面此时已经可以使用增删改查等功能。
案例:机票预定系统一、可行性分析1 引言1。
1 编写目的:可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。
明确开发风险及其所带来的经济效益。
本报告经审核后,交软件经理审查。
1。
2 项目背景:开发软件名称:机票预订系统.项目任务提出者:中国民航及中国国际旅游开发公司。
项目开发者:浙江大学IMK开发小组。
用户:中国民航及中国国际旅游开发公司.实现软件单位:中国国际旅游开发公司及浙江大学项目与其他软件,系统的关系:本项目采用客户机/服务器原理,客户端的程序是建立在Windows NT 系统上以Microsoft Visual C++为开发软件的应用程序,服务器端采用Linux 为操作系统的工作站,是采用Oracle 8的为开发软件的数据库服务程序.2.可行性研究的前提2。
1要求主要功能:为游客提供机票预定服务,方便旅游局的售票工作,提高旅游局的服务质量和服务效率性能要求:机场提供的信息必须及时的反映在旅游局的工作平台上。
售票系统的定单必须无差错的存储在机场的主服务器上。
对服务器上的数据必须进行及时正确的刷新.输出要求:数据完整,详实。
输出要求:简捷,快速,实时.安全与保密要求:服务器的管理员享有对机场航班信息库及机票信息库和定票信息库的管理与修改。
售票员只享有对订票信息库的部分修改(写入与读出)。
完成期限:预计六个月,即截止2000年2月8日。
2.2目标:系统实现后,大大提高旅游局的机票预定服务效率。
降低售票服务中的错误发生率,减少信息交流的烦琐过程及其带来的开销.2.3条件,假定和限制建议软件寿命:5年。
经费来源:中国国际旅游开发公司。
硬件条件:服务器sun工作站,终端为pc机。
运行环境:Linux数据库:Oracle8投入运行最迟时间:2000/04/042.4可行性研究方法2.5决定可行性的主要因素成本/效益分析结果,效益〉成本.技术可行,现有技术可完全承担开发任务。
《机票预订系统详细设计说明书》1、编写目的在前一阶段(总体设计说明书)中,已解决了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的详细设计报告中将对在本阶段对系统所做的所有详细设计进行说明。
在本阶段中,确定应该如何具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程序语言书写的程序。
主要的工作有:根据在《需求分析说明书》中所描述的数据、功能、运行、性能需求,并依照《总体设计说明书》所确定的处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等)。
1.接受:旅客信息及取票通知和账单;2.输出:取票通知和账单和机票;3.网络输出和加密,输入和解密;4.分辨信息的种类并采取相应的处理步骤;5.判断信息的正误并采取相应的处理步骤;6.进行数据库的查询、修改工作;7.接受并判断错误,输出相应的出错信息。
我们将机票预订系统分为五个主要模块,分别为:订票模块,用户注册登录管理模块,航空管理系统,数据库模块,取票模块。
以下我为大家介绍以下数据库模块的详细设计。
2、数据库模块详细设计2.1数据库设计(1)概述数据库设计就是要根据数据的不同用途、使用要求、统计渠道、安全保密性等,来决定数据的整体存储形式,即决定数据的结构、类别、载体、组织方式、保密等级等一系列的问题。
本系统的数据库表设计如表2-7和表a、表b、表c、表d所示。
(2)功能本系统的数据库表设计如表2-1和表a、表b、表c、表d所示。
表2-1 数据库概况表a 航班班次表表b 定位信息表表c 帐单信息/旅客资料表号号 工作单位String20可工作单位表d 机位信息表字段名 数据类型 长度 可否空 注含意 班机号 String 6 不可 外部主键为班机号 班机号 机位信息String20不可机位信息2.2编码设计编码就是以数后字符来代表各种客观实体。
订机票短信篇一:机票预定信息系统数据库大作业1.要求:1) 需求分析。
2) 数据库设计。
2.1概念结构设计(E-R图)2.2逻辑结构设计(E-R模型转换为关系模式,指明所满足的范式并给出理由)。
2.3物理结构设计3) 数据库实现。
(录入数据,每个表应不少于10条数据)4) 数据库运行。
(不少于30条sql 语句,其中包括查询、更新、删除、插入、创建触发器等sql语句)5) 18周之前交。
2.可选题目:1.机票预定信息系统系统功能的基本要求:航班基本信息的录入,包括航班的编号、飞机名称、机舱等级等。
机票信息,包括票价、折扣、当前预售状态及经手业务员等。
客户基本信息,包括姓名、联系方式、证件及号码、付款情况等。
按照一定条件查询、统计符合条件的航班、机票等;对结果打印输出。
(1)、.机票预定信息系统1) 机票信息信息包括航班号、飞机名、目的地、起航时间、票价、折扣。
假设现在有3条航线, 目的地分别是北京, 上海, 广州, 飞机上可乘坐100人( 即初始订票数为0, 余票数为100) , 将这3条航线信息存入表“airline”中。
2) 客户基本信息客户信息包括姓名,性别,订票数,联系方式, 证件及号码, 假设已有3个客户信息存入表“customer”中。
有新客户订票时, 先输入客户的姓名和他提出的航班号, 查询该航线的订票情况, 若有余票, 则为客户办理订票手续, 分配给客户一个座位号, 然后将新客户的信息添加到文件“customer.dat”中, 并修改文件“airline.dat”中该航线的订票数和余票数。
若无余票, 则输出客满信息。
进一步可实现如果该航班已经无票,可以提供相关可选择航班信息。
3)航班航班号, 飞机名称,机舱等级, 座位号(初始为0)3) 退票业务根据客户提出的航班号, 办理退票, 从表“customer”中删除该客户的信息, 并修改表“airline”中相应航线的订票数和余票数。
航空公司机票预订系统开发需求文档1. 引言本文档旨在定义航空公司机票预订系统的开发需求。
通过该系统,用户可以方便地浏览、选择和预订机票,提高预订过程的效率和用户体验。
2. 功能需求2.1 用户注册和登录- 系统应提供用户注册界面,允许用户创建个人账户。
- 用户登录后可以访问个人信息和进行机票预订。
2.2 机票查询- 系统应提供机票查询功能,用户可以根据出发地、目的地、出发时间等条件进行机票搜索。
- 查询结果应包括航班号、起降时间、价格等信息。
2.3 机票预订- 用户可以选择心仪的机票并进行预订。
- 预订过程中,用户应输入旅行日期和旅客信息。
- 系统应验证用户输入,确保预订数据的准确性。
2.4 机票支付- 系统应提供多种支付方式,如信用卡、支付宝等,方便用户支付机票费用。
- 支付过程应保证用户信息的安全性和支付流程的可靠性。
2.5 订单管理- 用户可以查看个人订单,并进行订单取消、改签等操作。
- 系统应能够实时更新订单状态和相应的航班信息。
3. 非功能需求3.1 用户界面- 系统界面应简洁、直观,使用户能够方便地进行操作。
- 界面设计应符合现代化的界面风格和用户惯。
3.2 性能和可靠性- 系统在高并发情况下应保持良好的性能,保证用户能够快速进行机票查询和预订。
- 系统应具备高可靠性,防止关键数据丢失或损坏。
3.3 安全性- 用户个人信息和支付数据应进行加密处理,确保数据的安全性。
- 系统应采取必要措施防止恶意攻击和非法访问。
4. 开发和测试环境- 开发语言:Java- 开发框架:Spring Boot- 数据库:MySQL- 测试工具:JUnit5. 发布计划- 开发团队将按照敏捷开发的原则进行迭代式开发,每个迭代周期为两周。
- 预计系统开发完成后,进行用户测试和Bug修复,整个发布周期约为两个月。
以上为航空公司机票预订系统的开发需求文档,供开发团队参考。
如有任何疑问或变更,随时与我联系。
摘要摘要为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。
我们学习了IBM DB2应用程序的使用。
并应用了SQL语言。
对数据库的创建、修改、删除方法有了一定的了解。
通过导入表和删除表、更改表学会了对于表的一些操作。
为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽取有用的信息。
当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用这些数据资源。
通过机票预定系统的构造以及购票人的信息还有机票的相关信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。
需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。
概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。
逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的五张表结合在一起完成一个总关系表。
最后就是要运行和实施数据库。
要把查询结果与过程抓几张图关键词:SQL语言;IBM DB2;数据库设计;机票预定系统I大连交通大学数据库课程设计目录第一章绪论 (1)1.1课题简介 (1)1.2设计目的 (1)1.3设计内容 (1)第二章需求分析 (2)2.1需求分析的任务 (2)2.2需求分析的过程 (2)2.3数据字典 (2)第三章概念结构设计 (8)3.1概念结构设计的方法与步骤 (8)3.1.1概念结构设计的方法 (8)3.1.3概念结构设计的步骤 (8)3.2数据抽象与局部视图设计 (8)3.3视图的集成 (9)第四章逻辑结构设计 (11)4.1E-R图向关系模型的转换 (11)4.2数据模型的优化 (11)4.3数据库的结构 (12)第五章数据库的实施与运行 (15)5.1数据的载入 (15)5.2数据库的运行 (18)总结 (21)参考文献 (22)II第三章概念结构设计第一章绪论1.1课题简介随着时代的发展,计算系软件和系统的成熟,机票如果简单方面预定成为一个影响多数人生活的问题。
长沙学院课程设计说明书题目机票预定管理系统系(部) 计算机科学与技术系专业(班级)姓名学号 2010021110 指导教师起止日期 2012.06.11-2012.06.22课程设计任务书课程名称:数据库系统原理设计题目:机票预定管理系统1、某航空公司机票预订管理系统需要如下信息:航班:航班编号、出发地、目的地、出发时间、飞行时间、飞机型号等。
飞机:飞机型号、座位数。
机票:航班编号、客户编号、价格、折扣、当前预售状态等。
客户:姓名、联系电话、身份证号码等。
业务员:姓名、工号。
2、系统功能的基本要求:按照一定条件查询、统计符合条件的航班、机票、客户信息等。
例如航班剩余舱位数目、同一航线可选航班信息、客户购买历史等,能够模拟完成机票预订业务。
各阶段具体要求:1、需求分析阶段二、定义数据项的含义和取值三、定义目标系统的数据流2、概念结构设计阶段●画出实体模型E-R图3、逻辑结构设计阶段●将实体模型转化为关系模型●给出每个关系的主关键字和函数依赖集●分析你所设计的关系数据库模式是否属于3NF4、物理设计阶段●确定所有字段的名称、类型、宽度、小数位数及完整性约束●确定数据库及表的名称及其组成●确定索引文件和索引关键字5、数据库安全及维护设计阶段5.1设计一个适合的数据库安全策略(用户身份认证、访问权限、视图)5.2为了实现复杂的数据完整性约束,设计适当的触发器5.3设计一个适合的数据库备份策略6、实施阶段●要求所有操作必须在查询分析器中用SQL语句或系统存储过程完成。
设计工作量:(1)软件设计:完成问题陈述中所提到的所有需求功能。
工作计划:安排两周时间进行课程设计,软件开发步骤如下,第一周完成1~4,第二周完成5~8,论文同步进行;1) 选定题目2) 需求分析3) 概念结构设计4) 逻辑结构设计5) 物理设计6) 数据库安全及维护设计7) 数据库上机实现8) 答辩设计工作量:40课时工作计划:班级日期节次教室内容指导教师10计科1班15周周一1-4 致远楼1413 布置任务潘怡15周周一5-6节涵虚楼B2103 答疑15周周二1-2 致远楼1401 上机15周周二3-4节涵虚楼B2103 答疑15周周二5-6节涵虚楼B2103 答疑15周周五1-4 致远楼1413 上机15周周五5-8节涵虚楼B2103 答疑16周周一1-4 致远楼1413 上机16周周一5-8节涵虚楼B2103 答疑16周周二1-2 致远楼1401 上机16周周二3-4节涵虚楼B2103 答疑16周周五1-4 致远楼1413 答辩16周周五5-8节涵虚楼B2103 答辩指导教师签名:日期:教研室主任签名:日期:系主任签名:日期:长沙学院课程设计鉴定表姓名学号专业计算机科学与班级技术设计题目机票预定管理系统指导教师指导教师意见:评定等级:教师签名:日期:答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名:日期:系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“及格”、“不及格”四类;目录1 引言 (1)1.1编写目的 (1)1.2 参考资料 (1)2 需求规约 (2)2.1业务描述 (2)2.2需求分析 (2)2.2.1统功能分析 (2)2.2.2统功模块图 (3)3 概念结构设计 (5)4 物理结构设计 (6)4.1E_R图向关系模型的转变 (6)4.2数据模型的优化 (6)5 物理设计 (7)5.1 表汇总 (7)5.2 各表的详细信息及其创建 (7)5.3 视图的设计 (14)5.4 存储过程、函数及触发器的设计 (14)6 安全性设计 (20)6.1 防止用户直接操作数据库的方法 (20)6.2 角色与权限 (20)7 数据库管理与维护说明 (21)7.1 数据库的完全备份 (21)7.2 数据库的差异备份 (21)7.2 数据库的日志备份 (21)8 总结 (22)1 引言1.1 编写目的本文档是数据库管理系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发,本文档遵循《数据库设计和开发规范》。
中航信的ICS、CRS和DCS系统什么是GDS,全称是Glo bal Distri butio n System,即全球分销系统,是基于计算机技术支持下的大规模销售网络。
目前国际上的GDS分二类:1.既可以销售航空公司的产品(机票)也可以销售酒店的产品(客房),如SABRE、GALILE O、AMADEU S、WORLDS PAN和中国民航GD S系统(中航信Tra velsk y)。
2.只可以销售酒店产品,如:UTELL、ACCOR和一些酒店集团自己的销售网络,如:假日集团、喜来登、希尔顿。
中航信GDS系统的运行方式说明CRS全称是Compu ter Reserv ation System,即计算机分销系统。
CRS主要功能是为代理人提供航班可利用情况查询、航段销售、订座记录、电子客票预订,旅游产品等服务。
ICS全称是Inven toryContro l System,即航空公司人员使用的航空公司订座系统。
ICS是一个集中式、多航空公司的系统。
每个航空公司享有自己独立的数据库、独立的用户群、独立的控制和管理方式,各种操作均可以加以个性化,包括航班班期、座位控制、运价及收益管理、航空联盟、销售控制参数等信息和一整套完备的订座功能引擎。
DCS全称是Depar tureContro l System,即机场人员使用的离港控制系统。
DCS 是为机场提供旅客值机、配载平衡、航班数据控制、登机控制联程值机等信息服务,可以满足值机控制、装载控制、登机控制以及信息交换等机场旅客服务所需的全部功能。
根据上面图示,一名旅客来代理处购机票。
1.此时机票代理处首先要做的就是在C RS系统为旅客查询航班信息,那么CRS系统的航班信息是从何而来的呢。
南昌航空大学实验报告课程名称:软件工程实验名称:用Rational Rose绘制用例图班级:070613 14 姓名:刘小龙同组人:指导教师评定:签名:一实验环境Windows 2000、Rational Software公司的Rational Rose应用软件二实验目的1)了解Rational Rose工具软件的组成及功能2)掌握用Rational Rose画用例图的具体的使用方法三实验内容1)设计用例图(Use Case框图)2)用Rational Rose在Use Case视图中创建Use Case框图。
四实验要求建立一个Use Case框图。
为方便旅客,某航空公司拟开发一个机票预定系统。
旅行社把预定机票的旅客信息(姓名、性别、工作单位,身份证号码、旅行时间、施行目的地等)输入该系统,系统为旅客安排航班,印出取票通知和帐单,旅客在飞机起飞前一天凭取票通知单和帐单交款取票,系统校对无误即印出机票给旅客。
五实验步骤Use Case框图表示整个机构提供的功能,可以用来回答下列一些问题:公司是干什么的?为什么要建立这个系统?还有那些人使用这些系统。
Use Case框图在业务建模活动期间大量用于设置系统情景和形成创建使用案例的基础。
1)如何使用Rational Rose画Use Case框图S1:点击“开始”在“程序”中找到“Rational rose”点击“Rational Rose Enterprise Edition”进入该软件。
S2:在该软件出现的界面左边你将会看到一个“Use Case View”双击之后会出现一个“main”,在双击“main”会弹出一个界面,我们就可以在这个弹出的界面上开始我们的用例图绘制。
S3:在稍微靠做的位置将会看到Use Case框图工具栏图标,下面给大家介绍一下这些图表所表示意思:2)绘制机票预定系统用例图航空公司启动几个使用案例:航班信息管理,订票信息管理,机票管理,航班查询,旅客信息管理。
机票预订系统报告班级:医药软件工程13姓名:曹立学号:1305541102目录(1)需求分析1.系统概述2.系统运行环境3.功能需求描述(2)总体及总体设计1.开发与设计的总体思想2.系统模块结构图及设计3.系统流程描述4.界面设计5.数据库设计(3)设计总结1引言1.1 编写的目的需求分析说明书提供用户与开发人员对开发软件的共同理解,使用户与开发单位就该系统的功能定义、环境需求达成共识,是今后各阶段设计工作的基础和依据,也是本阶段评审和测试阶段确认与验收的依据。
本需求分析的读者对象包括客户、业务人员需求分析人员、测试人员、用户文档编写人和项目管理人员。
1.2 背景人们在网上预订机票越来越普遍,能提供网上预订服务的网站也越来越多,如:携程旅行网等,但这些网站提供的服务并非实时的,而是在人工干预的基础上完成的。
为了提升企业效益,特开发此网上预订机票系统。
1.3定义SQL SERVER: 系统服务器所使用的数据库管理系统(DBMS)SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理一需求分析1.系统概述《网上机票预订系统》运行于Internet环境,提供远程机票预订功能,包括远程航班信息查询,机票预订与确认等;使用《网上机票预订系统》可使机票订购过程简单化、电子化、数字化,节省常规过程所不必要的资源浪费。
该软件要实现方便用户提前预定机票,提前知晓航班信息的功能,为了减少用户到机场现场买票导致的未能买到较为合适机票所浪费时间的现象。
航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。
各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统为旅客安排航班。
当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。
中国民航订座系统操作手册中国民航的发展在近年来取得了长足的进步,航空业也逐渐成为人们出行的重要选择。
作为航空公司的重要一环,民航订座系统的操作十分关键。
在这里,我将为大家介绍一份中国民航订座系统的操作手册,希望能够帮助大家更好地了解和使用这一系统。
首先,在使用民航订座系统之前,我们需要了解一些基本的操作步骤。
首先,打开民航官方网站或者相关应用程序,找到订座系统入口。
其次,选择出发地和目的地城市,输入出行日期和航班时间。
接着,系统将显示符合条件的航班列表,根据自己的需求选择合适的航班。
最后,填写乘客信息并支付机票费用,完成预订。
在选择航班时,我们需要注意一些细节。
首先,要根据个人出行需求选择合适的舱位类型,如经济舱、商务舱或头等舱。
其次,要注意航班的起降时间和中转时间,确保在出行计划中留有充足的时间。
此外,还需要关注航班的准点率和航空公司的服务质量,选择信誉良好的航空公司。
在填写乘客信息时,我们需要确保信息的准确性和完整性。
首先,要填写与乘机人身份证件一致的姓名和证件号码,以确保乘机顺利。
其次,要填写联系人信息,以便紧急情况下能够及时联系到乘客。
最后,要选择座位偏好和餐食需求,提前告知航空公司,以便他们为您提供更好的服务。
在支付机票费用时,我们需要注意保护个人信息和选择安全支付方式。
首先,要选择正规渠道支付,避免使用不明来源的支付平台。
其次,要确保支付页面的安全性,避免泄露个人银行账号和密码。
最后,要保存好支付凭证和订单信息,以备日后查询和退改签。
总的来说,中国民航订座系统的操作并不复杂,只要掌握好基本步骤和注意事项,就能够轻松完成订票。
希望这份操作手册能够帮助大家更好地使用民航订座系统,享受舒适便捷的出行体验。
祝大家旅途愉快!。
机票预订系统需求分析报告三篇篇一:机票预定系统需求分析报告1引言1.1编写目的在现今的社会是一个讲究效率和快节奏的社会,人们有很强的时间观念,如果仍使用手工操作或使用相当繁琐的软件,既浪费了人力,又浪费了物力,效率无法提高,为此开发机票预定系统软件,能够适应现今社会并提高生产效率。
使售票员和旅行社更加变得方便和有效率。
该系统软件非常容易被接受,他具有简单易学性,便于管理等功能。
1.2项目背景随着社会发展的不断进步,民航事业的壮大,人们消费水平的提高,乘坐民航的消费者也越来越多,机票预订系统也开始影响着人们日常生活和出行,并且变得越来越重要。
而原有的系统随着航空公司载客量的迅猛增长和人们对便捷性要求的提高,已经变得无法满足需求。
原有的系统不仅效率比较低下,而且在安全性、准确性等方面有很多不足。
为了实现航空公司以及旅游行业的现代化管理,进一步提高工作效率,方便旅客,需要开发一个机票预订系统。
该系统需要具有完整的存储,查询,核对,打印机票的功能。
在这个系统中,旅客或工作人员在网上或旅行社的机票预售代理点,通过计算机系统查询,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统校对无误即印机票给旅客。
1.3定义1.4参考资料1.《软件工程导论》2.《实用软件工程》2任务概述2.1目标机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
总之,这个系统要求能够实现实时,高效,便捷,完善,安全性好等特点。
2.2运行环境1设备:奔腾133,16兆以上内存的pc机。
2支持软件:用java程序设计语言作为系统的支持软件。
3接口:本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、输出界面)。
机票预定系统设计书1. 功能简述本机票预订系统主要针对旅游电子商务系统。
可以提供航班班次,机票的票价,团购,打折等信息,并可以提供给用户在线预订和在线支付的服务;可以帮助网站处理和保存用户的订单信息。
操作员系统管理员、信息员,用户。
访问范围系统管理员主要对航班信息、网络用户等的相关信息进行审核以及处理,并维护整个系统可以正常运行;信息员提供航班班次,票价等信息,并对已预定机票的用户的相关信息进行综合整理;用户可以浏览网站关于机票预订的子网页,浏览航班班次,票价,打折,团购等信息,填写需要的航班日期,如果有需要的航班可享受在线预订和支付的服务,如果没有需要的航班,系统可自动提醒用户选择其他的方式,如火车,汽车等。
涉及的页面ASP页面:登录页面,机票查询页面、机票信息页面、预定信息页面、订单核对页面、订单完成页面、我的账户页面。
2.页面描述2.1机票查询页面本页面需要用户输入出发地、目的地、出发日期和时间来选择自己需要的航班界面初始化出发城市:数据取自出发(到达)城市字典表到达城市:数据取自出发(到达)城市字典表出发日期:调用公共功能 date.asp返回日期:调用公共功能 date.asp航程类型:数据取自航程类型字典表航班类型:数据取自航班类型字典表乘客人数:数据取自乘客人数字典表舱位等级:数据取自仓位等级字典表页面操作用户进入机票查询页面,输入相关信息,若有合适航班,需要登陆来预订机票,然后通过用户信息验证,付账结算,订票成功后系统会通知客户订票成功。
操作表展示输入要求2.2用户登陆页面如果用户查询到合适的机票,需要预定,即可由机票查询页面自动跳转,转入登陆系统。
2.3机票预定页面本页面用来实现用户对机票的预定功能。
用户首先通过查询得到自己所需的航班,然后登陆查看该航班还有没有被预订的座位,然后填写自己的详细信息之后就可以进行网上预定机票。
界面初始化证件类型:数据取自证件类型字典表支付方式:数据取自支付方式字典表页面操作本页面需要用户填写个人信息和联系方式,并选择支付方式。
机票预订系统实验报告姓名:潘凯学号:1041903119 专业:通信工程、目的用面向对象分析、设计方法来分析机票系统。
、主要内容及问题需求分析:为方便旅客, 某航空公司拟开发一个机票预订系统。
旅行社把预订机票的旅客信息 (姓名、 性别、工作单位、 身份证号码、旅行时间、旅行目的地等 )输入进该系统,系统为旅客安排航班,印出取票通知和账单,旅客 在飞机起飞的前一天凭取票通知和账单交款取票,系统校对无误即印出机票给旅客。
功能需求该系统主要分为五大功能:系统管理、新增、修改、查询和系统维护。
机票预定系统的总目标是:在计算 机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、 易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算 机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
三、使用环境操作系统: Windows XP建模工具: StarUML 、Microsoft Visio四、设计内容1-1 、用例模型图用例模型图说明: 机票预订系统主要使用的对象是旅行社管理员。
管理员根据顾客填写的目的地和时间信息,将其输入 系统,系统根据相关信息进行处理,则系统其中的一个功能即用例就是接收顾客信息。
顾客需要用取票单 去航空公司取票,系统由管理员输入的信息来识别,则系统的另一个功能即用例就是预定管理员输入信息 符合的票。
1-2、类图类图说明:为此系统定义了4 个类,分别是顾客类,管理员类,航空公司类,机票类。
各个类对应的属性和操作方法在图中已表示出,目前应该还是有很多不完善的地方,在后期再加以修改。
1-3 、对象图对象图说明:对象图是根据设置的类图而设置的。
一个对象就是类的一个具体实例,本例中设置了一个custom 的取票操作,详细信息在图中已经设置,根据顾客的相关信息和操作,系统会调用相应的类的对象来处理,在本例中不一定会全部都涉及。
机票预定系统需求分析1 引言在现今的社会是一个讲究效率和快节奏的社会,人们有很强的时间观念,如果仍使用手工操作或使用相当繁琐的软件,既浪费了人力,又浪费了物力,效率无法提高,为此开发机票预定系统软件,能够适应现今社会并提高生产效率。
该系统软件非常容易被接受,他具有简单易学性,便于管理等功能。
1.1 编写目的机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
总之,这个系统要求能够实现实时,高效,便捷,完善,安全性好等特点。
1.2 项目背景随着社会发展的不断进步,民航事业的壮大,人们消费水平的提高,乘坐民航的消费者也越来越多,机票预订系统也开始影响着人们日常生活和出行,并且变得越来越重要。
而原有的系统随着航空公司载客量的迅猛增长和人们对便捷性要求的提高,已经变得无法满足需求。
原有的系统不仅效率比较低下,而且在安全性、准确性等方面有很多不足。
为了实现航空公司以及旅游行业的现代化管理,进一步提高工作效率,方便旅客,需要开发一个机票预订系统。
该系统需要具有完整的存储,查询,核对,打印机票的功能。
在这个系统中,旅客或工作人员在网上或旅行社的机票预售代理点,通过计算机系统查询,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统校对无误即印机票给旅客。
1.3 参考资料1.《软件工程导论》,张海藩,清华大学出版社2.《实用软件工程》,郑人杰等,清华大学出版社2 任务概述2.1 机票预定系统的功能要求机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
1 数据库大作业 1.要求: 1) 需求分析。 2) 数据库设计。 2.1概念结构设计(E-R图) 2.2逻辑结构设计(E-R模型转换为关系模式,指明所满足的范式并给出理由)。 2.3物理结构设计 3) 数据库实现。(录入数据,每个表应不少于10条数据) 4) 数据库运行。(不少于30条sql语句,其中包括查询、更新、删除、插入、创建触发器等sql语句) 5) 18周之前交。
2.可选题目: 1.机票预定信息系统 系统功能的基本要求:
航班基本信息的录入,包括航班的编号、飞机名称、机舱等级等。机票信息,包括票价、折扣、当前预售状态及经手业务员等。客户基本信息,包括姓名、联系方式、证件及号码、付款情况等。按照一定条件查询、统计符合条件的航班、机票等;对结果打印输出。
(1)、.机票预定信息系统 通过此系统可以实现如下功能: 1) 机票信息 信息包括航班号、飞机名、目的地、起航时间、 票价、 折扣。
假设现在有3条航线, 目的地分别是北京, 上海, 广州, 飞机上可乘坐100人( 即初始订票数为0, 余票数为100) , 将这3条航线信息存入表“airline” 中。 2) 客户基本信息 客户信息包括姓名,性别,订票数, 联系方式 , 证件及号码, 假设已有3个客户信息存入表“customer”中。 有新客户订票时, 先输入客户的姓名和他提出的航班号, 查询该航线的订票情况, 若有余票, 则为客户办理订票手续, 分配给客户一个座位号, 然后将新客户的信息添加到文件“customer.dat”中, 并修改文件“airline.dat”中该航线的订票数和余票数。若无余票, 则输出客满信息。进一步可实现如果该航班已经无票,可以提供相关可选择航班信息。 3)航班 航班号, 飞机名称,机舱等级, 座位号(初始为0) 3) 退票业务 根据客户提出的航班号, 办理退票, 从表“customer”中删除该客户的信息, 并修改表“airline”中相应航线的订票数和 2
余票数。 4) 修改航班信息:当航班信息改变可以修改航班数据文件。 5) 输出全部航线信息和全部客户信息。 6) 退出系统。
1)、航空订票系统: 通过此系统可以实现如下功能: 1) 录入航线信息 每条航线信息包括航班号、飞机号、目的地、订票数、余票数共5项。假设现在有3条航线, 目的地分别是北京, 上海, 广州, 飞机上可乘坐100人( 即初始订票数为0, 余票数为100) , 将这3条航线信息存入文件“airline.dat” 中。 2) 订票业务 客户信息包括姓名, 航班号, 座位号(初始为0), 假设已有3个客户信息存入文件“customer.dat”中。 有新客户订票时, 先输入客户的姓名和他提出的航班号, 查询该航线的订票情况, 若有余票, 则为客户办理订票手续, 分配给客户一个座位号, 然后将新客户的信息添加到文件“customer.dat”中, 并修改文件“airline.dat”中该航线的订票数和余票数。若无余票, 则输出客满信息。进一步可实现如果该航班已经无票,可以提供相关可选择航班信息。 3) 退票业务 根据客户提出的航班号, 办理退票, 从文件“customer.dat”中删除该客户的信息, 并修改文件“airline.dat”中相应航线的订票数和余票数。 4) 修改航班信息:当航班信息改变可以修改航班数据文件。 5) 输出全部航线信息和全部客户信息。 6) 退出系统。
3.报告格式模版: 3
机票预定信息系统 1.需求分析 人们在网上预订机票越来越普遍,能提供网上预订服务的网站也越来越多,如:携程旅行网等,但这些网站提供的服务并非实时的,而是在人工干预的基础上完成的。为了提升企业效益,特开发此网上预订机票系统。
系统的功能要求: 机票订购子系统 (1)审查旅客信息的有效性 旅客将自己的个人信息提供给业务员,业务员通过计算机验证是否真实并允许该乘客购买机票。 (2)开发票 如果允许旅客买机票,则业务员将查阅机票储量,如果有票足够旅客购买,则开交款发票,否则不开发票。 (3) 签名并交款 当旅客拿到发票后查看无错,则签名并交款(可以现金,刷卡等形式交款),然后旅客就可以拿到机票了。 机票退票子系统 (1) 退票业务 根据旅客提出的航班号, 办理退票,并 从表“customer”中删除该客户的信息, 并修改表“airline”中相应航线的订票数和余票数。 (2) 修改航班信息: 当航班信息改变可以修改航班数据文件,然后输出全部航线信息和全部客户信息。
4
业务员检查是否能购票旅客不开发票业务员查看票存量开发票输入信息填写信息否是够不够 2系统设计 2.1 概念结构设计 E-R图是分为两部分实体和属性,每个实体可以有多个属性,这些属性用来表示实体的性质。不同实体之间可以用关系进行连接,表明各个实体之间的内在联系。实体和实体之间的关系有一对一的关系(1:1),一对多的关系(1:N)和多对多的关系(N:M)。 各个实体分E-R图如下图所示
实体:航班,航线,机票,旅客 5
航班航班号飞机名机舱等级
容客量
航线航班号起点目的地票价
机票机舱等级座位号票价预售状态业务员
折扣
航班号起飞时间 6
旅客姓名性别身份证号付款情况
联系方式
总体E-R图及各个实体之间的关系如下图所示 业务员输入旅客信息旅客购买缴纳票费机票对应航班1
nmnn
1 7
2.2 逻辑结构设计 E-R图向关系模型的转换 关系模型的逻辑结构是一组关系模式的集合。E-R图则是由实体,实体的属性和实体间的联系三个要素组成。所以将E-R图转换为关系模型实际上就是要将实体,实体的属性和实体间的联系转换为关系模式。转换原则如下。 1. 实体类型的转换:一个实体型转换成一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。 2.联系类型的转换,根据不同的情况做不同的处理。 ⑴ 一个1:1的联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。 ⑵ 一个1:N的联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。 ⑶ 一个M:N联系转换为一个关系模式。与该联系相连的各实体的码为各实体码的组合。 ⑷ 三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。 ⑸ 具有相同码的关系模式可合并。 3. 根据销售信息管理系统的E-R图转换为关系模型如下。 将每一个实体转换成一个关系(关系就是给出关系名,属性就是实体属性,并标明该 8
关系的主键用下划线来表示) 关系模式: 航班(航班编号,飞机名,机舱数量,容客量),主码为航班号,符合三范式。 航线(航班号,起点,目的地,票价),主码航班号符合三范式。 机票(航班号,起飞时间,机舱等级,座位号,票价,折扣,预售状态,业务员),主码座位号,符合三范式。 旅客(姓名,性别,身份证号,付款情况,联系方式),主码为身份证号,符合三范式。 2.3 物理结构设计 表3-1 旅客表
字段名 中文名称 类型长度 取值范围 是否非空 主关键字 备注 Pname 姓名 Char 10 N N Psex 性别 Char 2 男、女 N N ID 身份证号 Char 10 00000~99999 N Y 主码
Pment 付款情况 Cahr 10 N N Pphone 联系方式 Cahr 10 N N
表3 -2 航班表 字段名 中文名称 类型长度 取值范围 是否非空 主关键字 备注 Pno 航班号 Char 10 0000~9999 N Y 主码 Aname 飞机名 Char 10 N N N Clevel 机舱等级 Char 10 N N N Ac 容客量 Int N N N
表3 -3 航线表 字段名 中文名称 类型长度 取值范围 是否非空 主关键字 备注 Pno 航班号 Char 10 0000~9999 N Y 主码 Spoint 起点 Char 10 N N Dt 目的地 Cahr 10 N N Fare 票价 int N N
表3 -4 机票表 字段名 中文名称 类型长度 取值范围 是否非空 主关键字 备注 Pno 航班号 Char 10 0000~9999 N Y 主码 Ptime 起飞时间 Char 10 00:00 N N Clevel 机舱等级 Char 10 N N Sno 座位号 Int 001~999 N Y 主码