停车场管理系统软件工程课程设计.doc
《停车场管理系统软件工程课程设计.doc》由会员分享,可在线阅读,更多相关《停车场管理系统软件工程课程设计.doc(28页珍藏版)》请在咨信网上搜索。
停车场管理系统软件工程课程设计 27 2020年4月19日 文档仅供参考,不当之处,请联系改正。 软件工程试卷(论文) - 第1学期 题 目: 停车场管理系统的分析和设计 学生姓名: 王琦 系 别: 信息与计算科学系 专业年级: 级计算机科学与技术 指导教师: 刘兆辉 1 月 1 日 目 录 第一章 项目概述 …………………………………………………………………3 1.1 开发背景 ………………………………………………………………………3 1.2 开发目的 ……………………………………………………………………3 1.3 开发运行境 ……………………………………………………………………3 1.4 系统功能 ………………………………………………………………………3 第二章 需求分析…………………………………………………………………4 2.1 系统需求 ………………………………………………………………………4 2.2 功能需求 ………………………………………………………………………4 2.3 业务流图 ………………………………………………………………………4 第三章 总体设计 …………………………………………………………………6 3.1 基本设计概念和处理流程 ……………………………………………………6 3.2 系统层次模图 …………………………………………………………………6 第四章 数据库计 …………………………………………………………………7 4.1 数据库的逻辑设计 ……………………………………………………………7 4.2 数据库的配置…………………………………………………………………10 第五章 详细设计 …………………………………………………………………13 5.1主菜单模块的设计与实现……………………………………………………13 5.2 初始化模块的设计与实现:…………………………………………………14 5.3 车辆进入模块的设计与实现…………………………………………………14 5.4 车辆离开并收费模块的设计与现……………………………………………15 第六章 测试及提交 ………………………………………………………………16 七 附: 模块源代码 ………………………………………………………………17 参考文献……………………………………………………………………………20 第一章 项目概述 1.1 开发背景: 近年来,随着中国经济的快速发展,人们生活水平的不断提高,物质需求和生活方式也发生着深刻的变化,以前属于奢侈品的汽车己经逐步走入了市民的日常生活。伴随汽车消费大众化和各种机动车辆大范围内的迅速普及,车辆对其配套设施特别是停车场提出了更高的要求。停车是"速度为零的交通”,停车场及附属相关设施是静态交通的重要组成部分。停车场收费管理系统是伴随着公用收费停车场这一新生事物而诞生的。 当前的多数停车场存在着以下几个问题,管理漏洞、系统的可靠性、独立性强、收费过程比较繁琐、劳动强度高、停车场利用率低下、票款易流失等。针对这些问题该停车场系统从以下方面进行设计。针对管理进行了优化,采用划卡消费和现金支付相结合,系统计时计费。采用Java高级编程语言和WEB相关技术开发设计管理系统软件,实现网络管理操作。优化后的系统使用方便、服务高效、收费透明、防止票款的流失,提高可靠性同时也提高了操作者的工作效率。 1.2 开发目的: 随着计算机技术的发展,在各行各业的应用越来越广泛,停车场管理由原来的人工管理进入计算机系统管理那是个必然趋势,计算机系统管理能够大大提高管理的效率和正确性 设有一个能够停放n辆汽车的狭长停车场,它只有一个大门能够供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车站。停车站内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车站为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,而且依然保持在便道上等待的车辆的次序。编制一程序模拟该停车场的管理。 1.3 开发运行环境: 开发工具:java语言 开发环境:JDK 1.4 系统功能: (1) 登录、注册功能. (2) 车辆离开查询功能 (3) 车辆进入查询功能 第二章 需求分析 2.1 系统需求 根据题目要求,因为停车场是一个单条的序列,能够用结构体实现;在程序中,需要知道每辆来车的具体停放位置,应提供提示、查找、标记工作。车辆离开要计时计费。另外,每天开始时,停车场要初始化。 2.2 功能需求 实现停车场的现代化管理,记录车辆信息,动态分配车位,停车费用结算,查看停车场车位的使用状况,退出系统等功能,解决车辆停放难,乱收费等问题。 2.3 业务流程图 车进入车场 车辆到达 以堆栈来模拟停车场和以堆栈里的数据元素我设计成汽车的车牌号 初始化车站, 初始化让路的临时栈, 初始化通道 车场未满,车进车场 车场已满,车进便道 判断车场是否已满 车 输入车子到达时间,车牌号 未满 判断车场内是否有车 不做任何计算 无点x 有 输入离开车辆的离开时间,进行停车费用的计算 此车后面的车辆退出并进入临时栈 车子离开 图 3-1 第三章 总体设计 3.1 基本设计概念和处理流程 互联网技术的飞速发展,Java等设计工具的方便实用,以及数据库技术的发展给本系统的设计和实现提供了技术上的支持。 系统基本的流程是:用户登录->主界面->选择各项子系统。 3.2 系统层次模块图 停车场管理系统 退出系统 查看车位使用状况 计算停车费用 车辆离开信息 车辆到达信息 车牌号 到达时间 离开时间 该车腾出的车位号 无空余车位 有空余车位 每小时所需停车费用 到达时间 车牌号 离开时间 车牌号 该车使用的车位号 有车离开时新到来车辆停放 新到来车辆在便道上等候 新到来车辆停放 第四章 数据库设计 4.1数据库的逻辑设计: 下面给出各个表的详细结构。 表4-1-1 卡信息表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 cardid 卡编号 varchar 20 是 否 cardno 卡号 varchar 20 是 否 cardtype 卡类型 varchar 20 是 否 cardmoney 余额 money 8 是 否 sendtime 发卡时间 datetime 8 是 否 activetime 有效时间 datetime 8 是 否 sendflag 已发 tinyint 1 是 否 loseflag 挂失 tinyint 1 是 否 表4-1-2 停车场参数表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 parkname 停车场名字 varchar 20 是 否 parktotal 总车位 int 4 是 否 entertotal 入口车道数 int 4 是 否 exittotal 出口车道数 int 4 是 否 parktel 停车场电话 varchar 20 是 否 parkadd 停车场地址 varchar 20 是 否 表4-1-3 用户表 字段名 描述 类型 长度 是否为空 是否主键 id 编号 varchar 20 否 是 name 用户名 varchar 20 是 否 sex 性别 char 2 是 否 tel 电话 varchar 20 是 否 cardno 卡号 varchar 20 是 否 carno 车牌 varchar 20 是 否 address 地址 varchar 20 是 否 表4-1-4 车信息表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 carid 编号 varchar 20 否 是 carno 车牌号 varchar 20 是 否 cartype 车类型 varchar 20 是 否 表4-1-5 权限表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 poperatorid 编号 varchar 20 否 是 poperatorname 姓名 varchar 20 是 否 poperatorsex 性别 char 10 是 否 poperatorpsw 密码 varchar 20 是 否 poperatorright 权限 varchar 20 是 否 表4-1-6时收费表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 timeno 时间号 int 4 否 是 starttime 开始时间 char 10 是 否 endtime 结束时间 char 20 是 否 表4-1-7 次收费表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 times_no 时间号 int 4 否 是 starttime 开始时间 char 10 是 否 endtime 结束时间 char 10 是 否 表4-1-8 入场表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 encardid 入场编号 varchar 20 否 否 encardno 卡号 varchar 20 是 否 encarno 车牌 varchar 20 是 否 enway 入场车道 varchar 20 是 否 entime 入场时间 datetime 8 是 否 enposition 指定车位 varchar 20 是 否 表4-1-9 出场表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 exited 出场编号 varchar 20 否 否 excardno 卡号 varchar 20 是 否 excarno 车牌 varchar 20 是 否 exway 出场车道 varchar 20 是 否 extime 出场时间 datetime 8 是 否 表4-1-10 交班表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 tnoperator 操作员 varchar 20 否 否 tnlogintime 登录时间 datetime 8 是 否 tnturntime 交班时间 datetime 8 是 否 entimes 进场次数 int 4 是 否 extimes 出场次数 int 4 是 否 totalmoney 金额总计 money 8 是 否 表4-1-11 收费表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 chargeid 收费编号 varchar 20 否 否 chcardno 卡号 varchar 20 是 否 chcarno 车牌 varchar 20 是 否 chmoney 收费金额 money 8 是 否 表4-1-12 车位表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 cpcarno 车牌 varchar 20 是 否 positionstate 车位状态 varchar 20 是 否 表4-1-13 收费标准表 字段名 描述 类型 长度 是否为空 是否主键 id 自增 int 4 否 是 chargestid 标准编号 int 4 是 否 cardtype 卡类型 varchar 20 是 否 cartype 车类型 varchar 20 是 否 chargetype 收费类型 varchar 20 是 否 timeno 时间编号 int 4 是 否 unittime 单位时间 int 4 是 否 unitsum 单位金额 int 4 是 否 mostsum 最大金额 int 4 是 否 4.2数据库设置模块: 此模块只有超级管理员才能进行相关的操作,一般用户无法进入该页面进行操作。所有的管理员级别的用户都有该超级管理员进行授权产生。 图 4-2-1 系统设置界面 管理员进入档案管理界面,查询操作员的权限档案信息,并能够进行添加删除修改。数据流程图 4-2-2档案管理界面 数据管理页面主要是对停车场的数据进行管理,场内车辆管理信息的查询,进出场数据的查询,操作员收费金额信息的查询,以及操作员交班记录的查询。在设计交班数据表中的数据时候,考虑到该表中的记录会在上班的过程中随时发生变化,因此在本系统中,所有与该表数据关联的模块中都实现了对交班记录表数据的更新。由于这些记录可能会出现很多,因此在页面进行了分页显示。实现对停车场和操作员的综合管理 4-2-3数据管理页面 操作员登录该界面进行档案管理的功能,包括卡档案、车档案以及用户的档案管理实现对以上档案的编辑。 4-2-4用户档案管理界面 如果有车入场,首先要检测一下是否还有空闲的车位,如果没有空闲车位,入场不成功。这一过程的实现经过设置每个车位的状态来进行实现,每个车位的信息都存储在车位信息表中。入场管理需要手动输入一些信息,提交之后要进行必要的判断之后按照指定车位进入停车场,在指定车位的时候是根据车位在车位表中的顺序来进行指定的。为了记录停车场的一些人员操作的信息,入场时的操作员实行自动签名的方式,实现该方式是根据其登陆时候的名称在入场模块中有系统写入。 4-2-5入场数据页面 用户取车时操作员使用该功能,手动输入出场车辆的卡号,输入出场车道编号。 4-2-6出场数据页面 收费管理是停车场管理系统最重要的功能之一,综合以上入场时提供的信息,根据设置的计费标准计算出收费金额,并打印出收费清单。 4-2-7收费管理界面 第五章 详细设置 程序系统的结构 main()函数体内包含了界面选则部分menu(),并单独抽出来作为一个独立函数,目的在于系统执行每部分模块后能够方便返回到系统界面。即main()函数写为 如下: 开始 显示一系列选项功能 输入n,判断n是不是1-4? Y 根据n的值调用各功能模块函数 结束 void main()/*主函数*/ { menu();/*菜单函数*/ } N 5.1主菜单模块的设计与实现: 5.2初始化模块的设计与实现: 5.3车辆进入模块的设计与实现: 以上分别举例0,1,2三个车的进场情况 5.4车辆离开并收费模块的设计与实现: 第六章 测试及提交 七 附:模块源代码 7.1 菜单函数 void menu() { int n,w; do { puts("\t\t**************MENU**************\n\n"); puts("\t\t\t 1.初始化"); puts("\t\t\t 2.有车进入"); puts("\t\t\t 3.有车离开"); puts("\t\t\t 4.退出"); puts("\n\n\t\t*********************************\n"); printf("Please choice your number(1-4): [ ]\b\b"); scanf("%d",&n); if(n<1||n>4) /*对选择的数字作判断*/ { w=1; getchar(); } else w=0; }while(w==1); switch(n) { case 1:chushi();break; /*初始化函数*/ case 2:jinru();break; /*车辆进入函数*/ case 3:likai();break; /*车辆离开函数*/ case 4:exit(0); /*退出*/ } } 7.2初始化模块设计 struct changnei/*场内车道信息*/ { int neikong; }chn[N-1]; struct changwai/*场外车道信息*/ { int waikong; }chw[M-1]; N和M分别是停车场和便道的车位预设值,用宏定义。用户可根据实际情况改变。 #define N 100/*预设停车场有100个车位*/ #define M 100/*预设便道有100个出位*/ void chushi()/*初始化函数*/ { int i,j; for(i=0;i<=N-1;i++) chn[i].neikong=0;/*将场内车道设置为空*/ for(j=0;j<=M-1;j++) chw[i].waikong=0;/*将便道车道设置为空*/ printf("\n\n\t\t已初始化\n\n"); menu(); } 函数出示化后将回到菜单界面。 7.3车辆进入函数 struct car/*车辆信息*/ { int car_num;/*车辆次序号*/ int car_arr;/*车辆到达时间*/ int car_lef;/*车辆离开时间*/ int car_stay;/*车辆停放位置*/ }car[CIXUHAO]; void jinru()/*车辆进入函数*/ { int i,a; int h=0; printf("\n\n请输入该车次序号(从0号开始):"); scanf("%d",&a); for(i=0;i<N;i++) { if(chn[i].neikong==0);/*无车标记0*/ if(chn[i].neikong==1)/*有车标记1*/ h=h+1; } if(h==N) printf("停车场内已停满,请停在便道上\n"); else { car[a].car_stay=h; chn[h].neikong=1; printf("该车应该停在停车场内第道%d(从0道开始记)\n",h); printf("请输入该车进停车场时刻(24小时整点计时):\n"); scanf("%d",&car[a].car_arr); } 便道上还有车吗? menu(); } 程序执行完后回到菜单。 7.4车辆离开函数 void likai()/*车辆离开函数*/ { int i,k,choi,time; double fee; printf("请输入离开车辆次序号[ ],并将此车之后的车先全部退出停车场!"); scanf("%d",&i); printf("\n请输入离开车辆的离开时刻(24小时整点计时):\n"); scanf("%d",&car[i].car_lef); fee=D*(car[i].car_lef-car[i].car_arr); time=car[i].car_lef-car[i].car_arr; printf("次序号为%d的车停车时间%d小时,应收费%f元\n",i,time,fee); printf("\n\n\n请让场内退出的车再依次进场!\n\n\n"); printf("便道上现在有车吗?(请选择1或2)\n1.有\n2.没有\n");/*因便道上可能没有车,因此要做选择*/ scanf("%d",&choi); if(choi==2) { menu(); } if(choi==1) { printf("请让便道上的第一辆车进场\n"); printf("该车次序号为:\n"); scanf("%d",&k); printf("请输入该车进场时间:\n"); scanf("%d",&car[k].car_arr); menu(); } } 参考文献 [1] 梁建全,周力,孟志勇,田利军.精通轻量级Java EE框架整合方案[M].人民邮电出版社, . [2] 夏昕,曹晓刚,唐勇.深入浅出Hibernate[M].电子工业出版社, . [3] 吕凤翥,马皓.Java语言程序设计[M].清华大学出版社, . [4] 孙更新,宾晟,周峰.Struts框架结构的Java Web开发技术基础与实践教程[M].电子工业出版社, . [5] 明日科技,梁冰,苏宇,吕继迪.JavaScript技术开发大全[M].人民邮电出版社, . [6] 王俊标.精通Java Web开发—基于Struts、EJB、Hibernate、JBuilder[M].人民邮电出版社, .- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 停车场 管理 系统软件 工程 课程设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文