点击下载源码
需求分析
需求分析就是指对要研究的问题进行详细的分析,仔细思考这个的要求,其中主要包括要输入的数据,要得到的结果。在做系统之前,我们必须做的就是需求分析。它主要就是确定开发出来的软件是做什么用的,它可以达到怎样的效果。
在软件的开发过程中,软件需求分析是尤为重要的一个步骤,它的主要工作是描述系统的范围、定义、功能以及性能需求,要用这个软件完成一个什么样的目的,这为了分析软件所有做的工作被成为需求分析。在软件开发的过程中它是至关重要的一个过程,它直接决定着软件设计方案是否会实现他的顾客要求的预期功能,是否会让顾客满意。
在此航班起降与协调管理系统中,参与到的人员有地面指挥人员和机长,地面指挥人员可以进行航班信息浏览、搜索和操作航班信息、发布航班指令、接收航班请求和获取航班动态。
图3-1 地面指挥人员端用例图
机长端具有查看航班资料信息、发送航班请求、接收塔台指令、更新航班状态等功能。
图3-2 机长端用例图
确定准备开发的软件的主要功能和系统的性能好坏是需求分析阶段的主要任务。在过去很长的一段时间中软件开发人员都忽略了软件需求分析的重要性,随着现在软件开发技术的成熟,广大软件公司开始重视这件事情了。如果在需求分析时我们没有认识到客户的正真需要,那么实际上最后设计出来的软件也不可能符合客户的期望,所以重做软件是一件非常耗时耗力的事情,我们要从需求分析开始就将软件项目做得更加精准。由于我做的航班调度系统分为地面指挥和机长两个部分,所以在需求分析方面,我也就这两个部分分开讨论。
3.2.1地面指挥端需求描述
地面指挥端的需求分析:首先用户可以先可以在所设计的软件里浏览航班信息,可以搜索航班信息。可以对因为某种原因需要修改、删除的航班进行信息的修改和删除,对加出来的航班班次进行添加操作,发出航班指令和接收航班请求,还可以接收航班的实时状态。所以整理如下:
1.登录
2.浏览航班信息
3.搜索航班信息
4.操作航班信息
修改航班信息
增加航班信息
删除航班信息
5.发送航班指令
6.接收航班请求
7.修改航班指令
8.获取航班状态
4.1 项目组成
4.1.1 数据库端
数据库端主要把地面指挥员、机长及其相关的各种信息存储在数据库表中,方便服务器对数据的增删改查,从而达到客户端对数据库信息的增删改查。这里用Mysql中的表来记录各种数据。
4.1.2 服务器端
服务器端与客户端交互,把客户端所传来的数据,请求相对应的操作,调用方法,连接数据库对数据库进行相对应地面指挥员及机长想对数据做出的增删改查,从而达到记录数据的效果。
4.1.3 客户端
客户端安装于机场塔台和航班的设备中,与用户直接交互,对于用户的操作向服务器端发出请求,等待服务器响应。服务器成功响应从而达到地面指挥员和机长想得到的信息及做出相应的操作。这里用eclipse中的浏览器代替。
4.2 数据库的分析与设计
数据库是软件进行信息管理的命门,数据库设计是否清晰、简介直接关系到系统开发和维护的成本。数据库分析包括概念结构设计、逻辑结构设计和物理结构设计。在此系统进行需求分析时已经分析并画出了数据库E-R图(概念结构设计),所以这里着重讨论数据库的逻辑结构设计和数据库表的分析和设计(物理结构设计)。
4.2.1 数据库逻辑结构设计
数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用的 DBMS产品所支持的数据模型相符合的逻辑结构。在进行数据库逻辑的设计时,要确认数据库的逻辑结构,还要保证数据库的完整性和安全性,明确指出数据记录由哪些表项组成,以及数据库数据的类型和取值范围。
在数据库逻辑结构设计中,由我们之前设计的机场航班起降与协调管理系统E-R图可以得出以下关系数据模型(关系中下划实线为主键,下画虚线为外键):
机长(机长编号,姓名,密码);
地面指挥(指挥员编号,姓名,密码);
机长客户端(机长编号);
地面指挥客户端(指挥员编号);
航班信息(航班编号,航班号,飞行区间,起降时间,航班状态,指挥员编号,机长编号);
指挥信息(编号,指令、请求编号,指令、请求名称,发出端,指令、请求内容,
航班编号,发布时间,指挥员编号,机长编号)。