• 详细设计(软件项目)


    这份报告是我在学校上软件工程这门课上机票预订系统的详细设计,老师评分95分。

    image-20230328171528937

    一、引言

    1.编写目的

    由前面的总体设计,得出了系统的基本架构,要实现整个系统,需要对每个模块进行详细设计,详细设计主要是利用比较具体的设计对整个系统进行分析,确定对系统每个模块的物理配置,确定整个系统的处理流程和系统的数据结构,接口设计。目的在推动软件工程的规范化,使开发人员遵循统一的详细设计进行编码,节省编码的时间,降低系统实现的风险,以利于系统的测试、维护、版本升级等。

    2.背景

    本项目的名称:机票预订系统。

    随着人们物质需求的提高,科技全球化的发展,乘坐飞机成为多数人生活、旅行中不可缺少的一部分。而飞机的航班的数量和业务量庞大,仅仅靠传统的记账式管理是不可行的。机票预订系统应运而生,逐渐成为信息化建设的重要组成部分。机票预订系统为机场的管理员提供所有乘客的详细信息,以及飞机航班的详细情况,对飞机购票和航班信息两大功能进行合理操纵并登记。

    3.定义

    开发(develop ):除了单纯的开发活动外,还包括维护活动。

    项目(project ):向顾客交付的最终的全部产品,包括程序及各种文档,以及开发活动所需资源经费等各种信息。

    项目开发计划(project development plan):把项目与过程联系起来的计划方案。

    产品生命周期(product life cycle):产品从构思到不可在使用的持续时间。

    4.参考资料

    张海藩:《软件工程导论》第五版 清华大学出版社 肖刚等:《实用软件文档写作》清华大学出版社 李涛、刘凯奎、王永皎:《Visual C# SQL Server 数据库开发与实例 》清华大学出版社

    二、程序设计说明

    1.连接

    1.1程序描述

    该程序是用来连接航空公司的数据库的,对于有合作关系的航空公司,连接他们的数据库,然后把数据写到文件上,没有合作的航空公司,断开连接,从文件上删除数据。这一步为后面的订票,退票提供数据支持,并且是常驻内存的。

    1.2功能

    连接航空公司数据库,从而获得航班的起飞,飞行路线,落地时间等数据,为用户的选择提供依据。

    1.3流程逻辑

    img

    1.4输入项

    使用系统管理员的账户名和密码登录,在界面的对应位置输入合作的航空公司的名字,点击连接按钮进行连接。

    1.5输出项

    显示合作的航空公司的名字,获得他们的数据库连接密码,把数据写入文件中。

    2.查询

    2.1程序描述

    该功能用于旅客确认自己的航班、机票的相关信息。其特点为非常驻内存,用户可以在需要的时候查询,且采取并发处理请求数据。

    2.2功能

    a) 查询航班:可以通过输入出发地,目的地,日期和时间选定自己的航班。

    img

    b) 查询机票:该项功能三方都可以操作,可以通过自己的身份证号以及取票通知上的机票号查询自己的机票信息。

    2.3性能

    精度:时间要求精确到分,价格精确到个位

    灵活性:响应点击、鼠标和键盘的操作

    时间特性:是手机、电脑的配置和网络的响应速度而定

    2.4流程逻辑

    img

    2.5 接口

    服务器程序上可使用Mysql 的对数据库的备分命令,以做到对数据的保存。

    在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。

    在输入方面,对于键盘、鼠标的输入,可用Java、jsp的标准输入/输出,对输入进行处理。

    在输出方面,打印机的连接及使用,也可用Java的标准输入/输出对其进行处理。在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。

    内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。

    2.6 存储分配

    本程序用高级语言jsp进行编程,直接内存分配由jsp程序运行时分配。

    本组件所依赖的变量,结构要求全部在组建内申明。

    2.7尚未解决的问题

    对用户ID和密码的更安全加密方式尚未解决。

    3.订票

    3.1程序描述

    机票订票系统的主要模块,根据客户提供的要求(航班、订票数额),查询该航班的票额情况,若有余票,则为客户办理订票手续,输入座位号;则重新询问客户要求。若需要可登记排队候补。

    3.2功能

    img

    3.2性能

    因机票预订系统对系统与现实时间的相对应有比较高的要求,因此系统时间需要确保精确并频繁校准。

    3.3 输入项

    客户预订信息:票数、班次、位次

    3.4 输出项

    订单:票数、班次、位次、是否成功预订

    3.5 算法

    客户预订数与余票数进行比对后输出是否可以订票

    3.6 流程逻辑

    img

    3.7 接口

    img

    3.8 储存分配

    需要储存客户订票信息,与输出订单等

    3.9 限制条件

    确保系统信息安全需要使用特定数据库

    3.10测试计划

    承载力测试:预计可同时处理一千个预订

    数据准确性测试:准确率达到百分·九十九以上

    3.11尚未解决的问题

    系统如何应对航班延误或取消问题

    4.退票

    4.1程序描述

    该功能用于旅客退订自己的航班、机票的相关信息。其特点为非常驻内存,用户可以在需要的时候查询,且采取并发处理请求数据

    4.2功能

    1667750131580

    4.3输入项

    机票编号,时间,客户信息

    4.4输出项

    是否退订成功

    4.5流程逻辑

    1667750573900

    4.6储存分配

    需要储存客户订票信息,与输出订单等

    5.用户投诉

    5.1程序描述

    a.投诉渠道

    在用户界面基于程序本身给出合理的反馈机制,在使用机票预订系统遇到不可挽回错误,如资金支付但未获得机票、航班信息错误、操作流程卡顿等,可以通过本机票预订系统内部本身设立的投诉渠道进行反馈,工作人员通过反馈对系统进行修复和优化

    b.其他

    同时我们也设立了建议渠道,人们对于使用系统的不舒服的地方,也可以通过该渠道进行反馈,或者在遇到资金流失等不可逆转的结果的时候,可以联系人工客服进行反馈,客服根据反馈内容进行处理,已弥补软件设计不足的问题。

    5.2 功能

    通过投诉系统进行反馈,分为建议和问题解决

    img

    5.3 流程控制

    img

    5.4性能

    因为反馈问题程序处理优先级不高,所以性能及时要求不需要太高,但需要一定量的储存空间进行存放信息

    5.5存储分配

    初步划分服务器内存10%左右,当接近临界值时再进行自适应增长

    6.用户充值

    6.1程序描述

    用户进入充值界面,点击支付按钮进入支付流程,进入支付流程后会先生成订单然后再进入支付环节,支付如果失败则订单失效重新进入充值界面,支付成功则把钱存入账户余额,结束流程。

    6.2功能

    用户可以通过充值功能把钱存入账户余额,以方便,快速的进行机票的预定

    ​ 输入 处理 输出

    img

    6.3流程逻辑

    img

    6.4限制条件

    1. 限制单个用户的最大充值数额;

    2. 限制所有用户的累积充值次数;

      3.设置充值规则的开始时间和结束时间;

    这份报告你们可以参考一下,想了想,这些东西一直待在电脑本地没有发挥它的价值,决定把这些高分作业分享出来,希望能够帮助各位园友。

  • 相关阅读:
    【jvm优化超详细】常见的JVM调优场景
    数据分析 第二周 (条形图,散点图,直方图,numpy运算和数组广播机制)笔记
    现代密码学-国密算法
    ElementUI之CUD+表单验证
    Redis三种模式——主从复制,哨兵模式,集群
    生物活化量子点纳米载体/离子/功能化量子点修饰细胞膜/纳米颗粒修饰细胞膜荧光探针的制备
    嵌入式开发:简化传感器的5个技巧
    面向对象分析与设计_用例图
    TypeScript-01基础知识
    【Tools】如何在VSCode上使用C++ 保姆教程
  • 原文地址:https://www.cnblogs.com/malinyan/p/17272180.html