1、软件架构设计说明书【航班信息查询系统】2016-6-6计算机科学与工程学院13 软件(2)班 指导老师:编写:目录一、 简介 - 1 -1. 编写目的 - 1 -2. 文档范围 - 1 -3. 定义 - 1 -4. 参考资料 - 2 -二、 架构表示方式 - 2 -三、 架构设计目标与约束 - 3 -1. 关键功能需求 - 3 -2. 关键质量需求 - 4 -3. 开发策略 - 4 -四、 用例视图 - 4 -1. 概述 - 4 -2. 关键用例 - 5 -五、 逻辑视图 - 7 -1. 概述 - 7 -2. 系统层次模型 - 8 -六、 进程视图 - 8 -软件架构设计说明书1. 概述 -
2、8 -2. 角色进程视图 - 9 -七、 开发视图 - 11 -1.概述 .- 11 -八、 物理视图 - 11 -1.概述 .- 11 -三层架构 .- 12 -九、 两个功能模式设计 - 13 -1. 旅客查询航班信息功能 - 13 -2. 旅客管理用户信息功能 - 13 -一、 简介1.编写目的本文档全面与系统地表述了航班信息查询系统的构架,并通过使用多种视图来从不同角度描述本系统的各个主要方面,以满足航班信息查询系统的相关涉众(客户、设计人员等)对本系统的不同关注焦点和需求。本文档记录并表述了系统架构的设计人员对系统构架方面做出的重要决策。项目经理将根据构架定义的构件结构制定项目的开发
3、计划;程序设计员将据此进行各构件的详细设计;测试设计员按照构架设计系统的总体测试框架;另外构架文档还用于指导各构件的实施、集成及测试。本文档的预期阅读人员为项目经理、程序设计人员、测试人员和其他有关的工作人员。2.文档范围本软件架构说文档适合于航班信息查询系统的总体应用架构。3.定义a SSH: 由 Struts, Spring, Hibernate 一起组成的 3 个开源框架,用于构建灵活、易于扩展的多层 Web 应用程序。b Mysql: 一个小型关系型数据管理系统,开发者为瑞典 Mysql AB 公司,属于开源软件。软件架构设计说明书c JSP: JSP(Java Server Page
4、s)是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。d. Javascript: 为客户提供更流畅的浏览效果。 e. Myeclipse: 开发工具。4.参考资料1. 软件体系结构 ,清华大学出版社。2. 文档写作指南 ,清华大学出版社。3. 航班信息查询系统需求设计说明书 。4. 航班信息查询系统说明书 。二、 架构表示方式本软件架构设计文档以 4+1 视图模型来表示系统的软件构架。最终用户:功能需求 编程人员:软件管理场景场景逻辑视图进程视图 物理视图开发视图系统集成人员:性能可扩充 系统工程人员:系统拓扑、安装、通信等性、吞吐量等每个视图拥有
5、一个或多个模型(Model ) 。并围绕相关视图来描述系统的基本结构、组成机制与工作原理等。本软件架构设计文档还将系统的构架机制描述也放在了逻辑视图之下。本文档主要使用统一建模语言(UML)来充当相关软件架构设计说明书模型的表达语言。三、 架构设计目标与约束描述构架设计最主要目标就是满足关键系统功能需求和质量约束,这些功能需求和质量要求对软件构架有重大的影响,并决定了构架的设计。本节同时还列明影响构架的其他相关因素,如软件的复用策略、使用商业构件、设计与实施的策略等。1.关键功能需求按照需求分析文档的规格要求,本航班信息查询系统的设计分成了以登录功能、信息查询功能模块以及信息管理功能模块为主的
6、三大模块进行开发。系统的开发主要是为了使航班信息查询更加规范化、系统化和程序化,提高信息处理的速度和准确性,提高用户体验。其功能模块示意图如下所示:航 班 信 息查 询 系 统信 息 管 理 信 息 查 询登 录用 户登 录用 户注 册用 户信 息管 理航 班信 息管 理公 司信 息管 理用 户信 息查 询航 班信 息查 询公 司信 息查 询软件架构设计说明书2.关键质量需求要求稳定、安全、便捷,易于管理和操作。 查询速度:不超过 10 秒; 其它所有交互功能反应速度:不超过 3 秒; 可靠性:平均故障间隔时间不低于 200 小时。3.开发策略 软件复用策略系统中重要基础构件应当具备较高的设计
7、与构建质量,可以在产品中复用。四、 用例视图1.概述用例视图从用户使用的角度描述系统构架的基本外部行为特性,通常包含业务用例模型与系统用例模型。业务用例模型不适用于本系统,这里只关注系统用例。这里选取了用例模型中对系统构架的内容产生重大影响的应用场景与用例集合,这些用例代表了系统主要的核心功能,决定了系统构架的基本组成元素。有些用例强调或决定了构架的某些具体然而重要的细节,通常也可以列在本节内,总之所列的用例集合应基本覆盖系统构架的主要方面。软件架构设计说明书2.关键用例 关键的系统参与者a 游客的用例旅客登录注册 查询 用户信息管理游客的用例说明用例名称 简单描述查询 旅客查询航班信息和个人
8、信息用户信息管理 旅客管理个人信息登录 根据用户账号和密码登录注册 旅客填写基本信息并注册成为用户后可以享受查询功能软件架构设计说明书b. 航空公司的用例航空公司登录航班信息查询航班信息管理公司信息管理用户信息管理用户信息查询公司信息查询航空的用例说明用例名称 简单描述登录 根据用户账号和密码登录航班信息管理 对航班信息进行管理公司信息管理 对公司信息进行管理用户信息管理 对用户信息进行管理航班信息查询 对航班信息查询进行查询公司信息查询 对公司信息查询进行查询软件架构设计说明书用户信息查询 对用户信息查询进行查询 关键的系统用例旅客航空公司登录注册用户信息查询航班信息查询公司信息查询公司信息
9、管理航班信息管理用户信息管理五、 逻辑视图1.概述逻辑视图从系统内在逻辑结构的角度描述系统的基本结构与动态行为,通常包括分析模型(Analysis Model) 、设计模型( Design Model)以及数据模软件架构设计说明书型(Data Model)等。设计模型说明了系统的组成元素、组织架构和关系,并描述了各组成元素的协作以及状态转换关系等(通过用例实现 Use Case Realization 予以表达) 。本节将分别在系统层次结构模型中描述系统的层次组织结构;在主要的包和子系统中说明系统的具体组成。2.系统层次模型六、 进程视图1.概述进程视图从系统运行时刻的角度,描述系统划分为进程
10、、线程的结构,及其动态关系。模型主要说明不同系统角色之间的创建、交互和消息通讯关系等。软件架构设计说明书2.角色进程视图 搜索信息:用户 / 航空公司界面后台 数据库搜索信息航班 、 公司 、 用户信息数据相关信息相关信息相关信息 航空公司管理信息:航空公司主界面 后台 数据库相关信息信息数据状态信息 ( 成功与否 )状态信息 ( 成功与否 )状态信息 ( 成功与否 )软件架构设计说明书 游客注册: 旅客修改个人信息:与与 与与与 与与 : 与1: 与与与 2: 与与 3: 与4: 与与与与与5: 与与与与与6: 与与与与与软件架构设计说明书七、 开发视图1.概述本部分也称为模块视图,主要侧重
11、于模块的组织和管理。开发视图通过系统输入输出关系的模型图和子系统来描述。可以在确定了软件包含的所有元素之后描述完整的开发角度,也可以在确定每个元素之前,列出开发视图原则。八、 物理视图1.概述从系统软硬件物理配置的角度,描述系统的网络逻辑拓扑结构。模型包括各个物理节点的硬件与软件配置,网络的逻辑拓扑结构,节点间的交互和讯关与与 与与与 与与 : 与1: 与与 2: 与与 3: 与4: 与与与与与5: 与与与与与6: 与与与与与软件架构设计说明书系等。同时还表达了进程视图中的各个进程具体分配到物理节点的映射关系。三层架构登 录 信 息管 理 信 息查 询 权 限 管 理Windows表 现 层业 务 逻 辑层数 据 访 问层数 据 库 访问软件架构设计说明书九、 两个功能模式设计1.旅客查询航班信息功能+ 查询航班 ( )+ 获取航班信息 ( )- 账号- 密码- 用户名旅 客+ 获取航班信息 ( )- 航空公司- 航班人员- 航班号- 到达地点- 起飞地点- 班期- 起飞时间- 到达时间- 飞机型号- 票价航 班查询航班信息2.旅客管理用户信息功能+ 修改密码 ( )+ 获取取用户信息 ( )- 账号- 密码- 用户名旅 客+ 获取用户信息 ( )+ 修改密码 ( )- 账号- 密码- 用户名旅 客修改密码