停车场管理系统软件工程课程设计(共20页)_第1页
停车场管理系统软件工程课程设计(共20页)_第2页
停车场管理系统软件工程课程设计(共20页)_第3页
停车场管理系统软件工程课程设计(共20页)_第4页
停车场管理系统软件工程课程设计(共20页)_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上 软件工程试卷(论文)2014-2015学年 第1学期题 目: 停车场管理系统的分析和设计学生姓名: 王琦 系 别: 信息与计算科学系 专业年级: 2012级计算机科学与技术 指导教师: 刘兆辉 2015年 1 月 1 日专心-专注-专业目 录第一章 项目概述 31.1 开发背景 31.2 开发目的 31.3 开发运行境 31.4 系统功能 3第二章 需求分析42.1 系统需求 4 2.2 功能需求 42.3 业务流图 4第三章 总体设计 63.1 基本设计概念和处理流程 63.2 系统层次模图 6第四章 数据库计 74.1 数据库的逻辑设计 74.2 数据库的配置1

2、0第五章 详细设计 135.1主菜单模块的设计与实现135.2 初始化模块的设计与实现:145.3 车辆进入模块的设计与实现145.4 车辆离开并收费模块的设计与现15第六章 测试及提交 16七 附: 模块源代码 17参考文献20第1章 项目概述1.1 开发背景:近年来,随着我国经济的快速发展,人们生活水平的不断提高,物质需求和生活方式也发生着深刻的变化,以前属于奢侈品的汽车己经逐步走入了市民的日常生活。伴随汽车消费大众化和各种机动车辆大范围内的迅速普及,车辆对其配套设施特别是停车场提出了更高的要求。停车是"速度为零的交通”,停车场及附属相关设施是静态交通的重要组成部分。停车场收费管

3、理系统是伴随着公用收费停车场这一新生事物而诞生的。 目前的多数停车场存在着以下几个问题,管理漏洞、系统的可靠性、独立性强、收费过程比较繁琐、劳动强度高、停车场利用率低下、票款易流失等。针对这些问题该停车场系统从以下方面进行设计。针对管理进行了优化,采用划卡消费和现金支付相结合,系统计时计费。采用Java高级编程语言和WEB相关技术开发设计管理系统软件,实现网络管理操作。优化后的系统使用方便、服务高效、收费透明、防止票款的流失,提高可靠性同时也提高了操作者的工作效率。1.2 开发目的:随着计算机技术的发展,在各行各业的应用越来越广泛,停车场管理由原来的人工管理进入计算机系统管理那是个必然趋势,计

4、算机系统管理可以大大提高管理的效率和正确性设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车站。停车站内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车站为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便

5、道上等待的车辆的次序。编制一程序模拟该停车场的管理。1.3 开发运行环境:开发工具:java语言开发环境:JDK1.4 系统功能:(1) 登录、注册功能.(2) 车辆离开查询功能(3) 车辆进入查询功能第2章 需求分析2.1 系统需求根据题目要求,因为停车场是一个单条的序列,可以用结构体实现;在程序中,需要知道每辆来车的具体停放位置,应提供提示、查找、标记工作。车辆离开要计时计费。另外,每天开始时,停车场要初始化。2.2 功能需求实现停车场的现代化管理,记录车辆信息,动态分配车位,停车费用结算,查看停车场车位的使用状况,退出系统等功能,解决车辆停放难,乱收费等问题。2.3 业务流程图车进入车场

6、车辆到达以堆栈来模拟停车场和以堆栈里的数据元素我设计成汽车的车牌号初始化车站, 初始化让路的临时栈, 初始化通道车场未满,车进车场车场已满,车进便道判断车场是否已满车输入车子到达时间,车牌号未满判断车场内是否有车不做任何计算无点x有输入离开车辆的离开时间,进行停车费用的计算此车后面的车辆退出并进入临时栈车子离开图 3-1第三章 总体设计3.1 基本设计概念和处理流程互联网技术的飞速发展,Java等设计工具的方便实用,以及数据库技术的发展给本系统的设计和实现提供了技术上的支持。系统基本的流程是:用户登录>主界面>选择各项子系统。3.2 系统层次模块图停车场管理系统退出系统查看车位使用

7、状况计算停车费用车辆离开信息车辆到达信息车牌号到达时间离开时间该车腾出的车位号无空余车位有空余车位每小时所需停车费用到达时间车牌号离开时间车牌号该车使用的车位号有车离开时新到来车辆停放新到来车辆在便道上等候新到来车辆停放第四章 数据库设计 4.1数据库的逻辑设计:下面给出各个表的详细结构。表4-1-1 卡信息表字段名描述类型长度是否为空是否主键id自增int4否是cardid卡编号varchar20是否cardno卡号varchar20是否cardtype卡类型varchar20是否cardmoney余额money8是否sendtime发卡时间datetime8是否activetime有效时间

8、datetime8是否sendflag已发tinyint1是否loseflag挂失tinyint1是否表4-1-2 停车场参数表字段名描述类型长度是否为空是否主键id自增int4否是parkname停车场名字varchar20是否parktotal总车位int4是否entertotal入口车道数int4是否exittotal出口车道数int4是否parktel停车场电话varchar20是否parkadd停车场地址varchar20是否表4-1-3 用户表字段名描述类型长度是否为空是否主键id编号varchar20否是name用户名varchar20是否sex性别char2是否tel电话var

9、char20是否cardno卡号varchar20是否carno车牌varchar20是否address地址varchar20是否表4-1-4 车信息表字段名描述类型长度是否为空是否主键id自增int4否是carid编号varchar20否是carno车牌号varchar20是否cartype车类型varchar20是否表4-1-5 权限表字段名描述类型长度是否为空是否主键id自增int4否是poperatorid编号varchar20否是poperatorname姓名varchar20是否poperatorsex性别char10是否poperatorpsw密码varchar20是否poper

10、atorright权限varchar20是否表4-1-6时收费表字段名描述类型长度是否为空是否主键id自增int4否是timeno时间号int4否是starttime开始时间char10是否endtime结束时间char20是否表4-1-7 次收费表字段名描述类型长度是否为空是否主键id自增int4否是times_no时间号int4否是starttime开始时间char10是否endtime结束时间char10是否表4-1-8 入场表字段名描述类型长度是否为空是否主键id自增int4否是encardid入场编号varchar20否否encardno卡号varchar20是否encarno车牌v

11、archar20是否enway入场车道varchar20是否entime入场时间datetime8是否enposition指定车位varchar20是否表4-1-9 出场表字段名描述类型长度是否为空是否主键id自增int4否是exited出场编号varchar20否否excardno卡号varchar20是否excarno车牌varchar20是否exway出场车道varchar20是否extime出场时间datetime8是否表4-1-10 交班表字段名描述类型长度是否为空是否主键id自增int4否是tnoperator操作员varchar20否否tnlogintime登录时间datetim

12、e8是否tnturntime交班时间datetime8是否entimes进场次数int4是否extimes出场次数int4是否totalmoney金额总计money8是否表4-1-11 收费表字段名描述类型长度是否为空是否主键id自增int4否是chargeid收费编号varchar20否否chcardno卡号varchar20是否chcarno车牌varchar20是否chmoney收费金额money8是否表4-1-12 车位表字段名描述类型长度是否为空是否主键id自增int4否是cpcarno车牌varchar20是否positionstate车位状态varchar20是否表4-1-13

13、收费标准表字段名描述类型长度是否为空是否主键id自增int4否是chargestid标准编号int4是否cardtype卡类型varchar20是否cartype车类型varchar20是否chargetype收费类型varchar20是否timeno时间编号int4是否unittime单位时间int4是否unitsum单位金额int4是否mostsum最大金额int4是否4.2数据库设置模块: 此模块只有超级管理员才能进行相关的操作,一般用户无法进入该页面进行操作。所有的管理员级别的用户都有该超级管理员进行授权产生。图 4-2-1 系统设置界面 管理员进入档案管理界面,查询操作员的权限档案信

14、息,并可以进行添加删除修改。数据流程图4-2-2档案管理界面 数据管理页面主要是对停车场的数据进行管理,场内车辆管理信息的查询,进出场数据的查询,操作员收费金额信息的查询,以及操作员交班记录的查询。在设计交班数据表中的数据时候,考虑到该表中的记录会在上班的过程中随时发生变化,所以在本系统中,所有与该表数据关联的模块中都实现了对交班记录表数据的更新。由于这些记录可能会出现很多,所以在页面进行了分页显示。实现对停车场和操作员的综合管理4-2-3数据管理页面 操作员登录该界面进行档案管理的功能,包括卡档案、车档案以及用户的档案管理实现对以上档案的编辑。4-2-4用户档案管理界面 如果有车入场,首先要

15、检测一下是否还有空闲的车位,如果没有空闲车位,入场不成功。这一过程的实现通过设置每个车位的状态来进行实现,每个车位的信息都存储在车位信息表中。入场管理需要手动输入一些信息,提交之后要进行必要的判断之后按照指定车位进入停车场,在指定车位的时候是根据车位在车位表中的顺序来进行指定的。为了记录停车场的一些人员操作的信息,入场时的操作员实行自动签名的方式,实现该方式是根据其登陆时候的名称在入场模块中有系统写入。4-2-5入场数据页面 用户取车时操作员使用该功能,手动输入出场车辆的卡号,输入出场车道编号。4-2-6出场数据页面 收费管理是停车场管理系统最重要的功能之一,综合以上入场时提供的信息,根据设置

16、的计费标准计算出收费金额,并打印出收费清单。4-2-7收费管理界面第五章 详细设置 程序系统的结构main()函数体内包含了界面选则部分menu(),并单独抽出来作为一个独立函数,目的在于系统执行每部分模块后能够方便返回到系统界面。即main()函数写为如下:开始显示一系列选项功能输入n,判断n是不是1-4?Y 根据n的值调用各功能模块函数结束void main()/*主函数*/menu();/*菜单函数*/N5.1主菜单模块的设计与实现:5.2初始化模块的设计与实现:5.3车辆进入模块的设计与实现: 以上分别举例0,1,2三个车的进场情况5.4车辆离开并收费模块的设计与实现: 第6章 测试及

17、提交七 附:模块源代码7.1 菜单函数void menu()int n,w;doputs("tt*MENU*nn");puts("ttt 1.初始化");puts("ttt 2.有车进入");puts("ttt 3.有车离开");puts("ttt 4.退出");puts("nntt*n");printf("Please choice your number(1-4): bb");scanf("%d",&n);if(n<1

18、|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;chnN-1;struct changwai/*场外车道信息*/int waikong;chwM-1;N和M分别是停车场和便道的车位预设值,

19、用宏定义。用户可根据实际情况改变。#define N 100/*预设停车场有100个车位*/#define M 100/*预设便道有100个出位*/ void chushi()/*初始化函数*/int i,j;for(i=0;i<=N-1;i+)chni.neikong=0;/*将场内车道设置为空*/for(j=0;j<=M-1;j+)chwi.waikong=0;/*将便道车道设置为空*/printf("nntt已初始化nn");menu();函数出示化后将回到菜单界面。7.3车辆进入函数struct car/*车辆信息*/int car_num;/*车辆次序

20、号*/int car_arr;/*车辆到达时间*/int car_lef;/*车辆离开时间*/int car_stay;/*车辆停放位置*/carCIXUHAO;void jinru()/*车辆进入函数*/int i,a;int h=0;printf("nn请输入该车次序号(从0号开始):");scanf("%d",&a);for(i=0;i<N;i+)if(chni.neikong=0);/*无车标记0*/if(chni.neikong=1)/*有车标记1*/h=h+1;if(h=N)printf("停车场内已停满,请停在便道上

21、n");else cara.car_stay=h;chnh.neikong=1;printf("该车应该停在停车场内第道%d(从0道开始记)n",h);printf("请输入该车进停车场时刻(24小时整点计时):n");scanf("%d",&cara.car_arr);便道上还有车吗?menu();程序执行完后回到菜单。 7.4车辆离开函数void likai()/*车辆离开函数*/int i,k,choi,time;double fee;printf("请输入离开车辆次序号 ,并将此车之后的车先全部退出停车场!");scanf("%d",&i);printf("n请输入离开车辆的离开时刻(24小时整点计时):n");scanf("%d",&cari.car_lef);fee=D*(cari.car_lef-car

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论