概要设计实例
- 格式:doc
- 大小:777.50 KB
- 文档页数:11
项目名称:手机游戏模拟器之Greedy Snake项目编号: EBD00001文档编号:EBD881101PDR003贪吃蛇游戏概要设计沈阳东软软件股份有限公司修改履历目录1 文档概述 (4)1.1 文档目的和范围 (4)1.2 术语/缩略语 (4)1.3 参考文档 (4)2 模块概述 (4)2.1 模块功能定义 (4)2.2 模块结构 (5)2.3 模块动作时序 (7)3 接口说明 (7)3.1 数据结构定义 (7)3.2 函数 (8)3.2.1 模块间接口函数 (8)3.2.2 模块内接口函数 (9)1文档概述1.1 文档目的和范围鉴于某学校的超市物品价格过高,而有的商家因地盘位置不好,很多好商品不能得到很好的销售,因此想做一个网上预订的系统供学生选择,提高商家的销售量的同时,给学生带来便利和优惠。
1.2 术语/缩略语1.3 参考文档列出所参考的式样或者文档等2模块概述1.网上预订结算模块:该模块的主要功能是进行网上预订商品2.1 模块功能定义1.用户模块2.网上预订结算模块2.2 模块结构以本模块为中心,画出模块间结构及模块内结构图。
对于模块内细分的小模块也最好列表说明各小模块的功能。
1.网上预订结算模块2. 按键检测模块3. 信息显示模块4. 游戏任务模块2.3 模块动作时序主要描述模块间动作时序图,可以直接在VISIO文件中记述(如果直接在VISIO中记述,这里说明「参考XXXXXX.vsd」)。
3接口说明3.1 数据结构定义1.网上预订过程的数据结构public class SelectedGoods {private int goodsId;private String goodsName;private float goodsPrice;public SelectedGoods() {super();}public SelectedGoods(int goodsId, String goodsName, float goodsPrice) { super();this.goodsId = goodsId;this.goodsName = goodsName;this.goodsPrice = goodsPrice;}}2.宏定义public static final int selectedGoods_success = 200;public static final int selectedGoods_fail = 201;public static final int selectedGoods_saveCart_fail = 300; public static final int selectedGoods_saveCart_success = 301; public static final int selectedGoods_submitOrder_success = 400; public static final int selectedGoods_submitOrder_fail = 401;3.2 函数3.2.1模块间接口函数1.网上预订结算模块SelectedGoodsShoppingCartSettlement2.按键检测模块3.显示信息模块TaskInfo_TaskInfo4.游戏任务模块Gameplay_TaskGame3.2.2模块内接口函数1.按键检测模块2.显示信息模块3.游戏任务模块。
【项目名称】概要设计说明书修订历史记录A - 增加M - 修订D - 删除【模板使用必读:模板内容和页眉中【】包含内容为指导性的待替换文字,请在使用中替换为具体内容,或删除。
文件提交时不得再含有这些内容。
】目录1 引言........................................................1.1编写目的..............................................1.2背景..................................................1.3术语与缩写解释........................................1.4参考资料.............................................. 2概述........................................................2.1系统任务..............................................2.1.1 .......................................... 系统目标2.1.2 .......................................... 运行环境2.1.3 .................................... 与其它系统关系2.2需求规定..............................................2.2.1 .......................................... 功能需求2.2.2 ...................................... 非功能性需求2.2.3 ........................................ 约束和假定3总体设计....................................................3.1基本设计概念和处理流程................................3.2软件系统结构..........................................3.2.1 ............................................ 模块A3.2.2 ............................................ 模块B3.3功能需求与系统模块的关系..............................3.4接口设计..............................................3.4.1 .......................................... 用户接口3.4.2 .......................................... 外部接口3.4.3 .......................................... 内部接口3.5数据结构设计..........................................3.5.1 .................................. 逻辑结构设计要点3.5.2 .................................. 物理结构设计要点3.5.3 .............................. 数据结构与程序的关系4运行设计....................................................4.1运行模块组合..........................................4.2运行控制..............................................4.3运行时间..............................................5系统出错处理设计............................................5.1出错信息..............................................5.2补救措施..............................................6系统维护设计................................................7尚未解决的问题..............................................1引言1.1编写目的【给出项目概要设计说明书的编写目的,同时指明读者对象。
软件技术概要设计范文全文共四篇示例,供读者参考第一篇示例:软件技术概要设计是软件开发过程中非常重要的一环,它是在软件项目设计的初期阶段,对整个软件系统的构成和功能进行概括性的描述和设计。
在软件技术概要设计阶段,软件设计师将根据用户需求和功能要求,制定出整体的软件架构框架,包括软件系统的模块结构、数据流程、功能模块的交互关系等,从而为后续的详细设计和开发工作奠定基础。
软件技术概要设计范文通常包括以下几个方面的内容:系统概述、需求分析、系统架构设计、模块设计、数据设计、界面设计、系统安全设计等。
下面以一个虚拟的学校管理系统为例,来介绍一份软件技术概要设计的范文。
一、系统概述学校管理系统是一个为学校提供信息化管理服务的软件系统,旨在解决学校管理中的人力物力资源消耗问题,提高管理效率和服务质量。
本系统包括学生信息管理、教师信息管理、课程表管理、成绩管理等功能模块,通过网络和数据库的支持,实现学校管理信息的集中化、自动化处理。
二、需求分析本系统的主要功能需求包括学生信息查询、教师信息查询、课程表查询、成绩查询、学生选课、教师任课安排等,同时要求系统具有良好的界面友好性和用户操作便捷性。
系统需求还包括数据的有效性、完整性、安全性和保密性的保障,以及系统的稳定性和扩展性。
三、系统架构设计学校管理系统采用B/S架构,通过浏览器的方式访问系统,将系统的业务逻辑和数据处理分布在服务器端进行,客户端只负责显示和输入数据。
系统采用三层架构,包括用户界面层、业务逻辑层和数据访问层,实现数据的有效管理和处理。
四、模块设计本系统包括学生管理模块、教师管理模块、课程管理模块、成绩管理模块等功能模块。
每个功能模块包括数据的录入、修改、删除和查询等功能,同时还有相应的数据处理和逻辑控制操作。
五、数据设计系统采用关系型数据库管理系统(如MySQL)存储数据,包括学生表、教师表、课程表、成绩表等数据表结构。
数据表之间通过外键建立关联关系,实现数据的一致性和完整性。
概要设计和详细设计模板一、概要设计。
1. 项目背景。
本项目旨在设计一个新型的智能家居系统,通过智能设备实现家居环境的智能化管理,提高居住舒适度和生活便利性。
2. 项目目标。
实现家居设备的远程控制和智能化管理;提供智能化的能源管理方案,节约能源成本;实现家居设备之间的互联互通,提高整体系统的智能化水平;提供用户友好的操作界面,方便用户管理和控制家居设备。
3. 项目范围。
本项目的范围包括硬件设备的选择、系统架构设计、软件开发、用户界面设计等方面。
4. 项目成本。
本项目的预算为100万元,其中包括硬件设备采购、软件开发费用、人员成本等。
5. 项目进度。
本项目计划周期为一年,包括需求分析、设计、开发、测试、上线等阶段。
二、详细设计。
1. 系统架构设计。
硬件选择,选择符合智能家居系统需求的智能设备,包括智能灯具、智能插座、智能空调等;系统集成,设计系统整体架构,实现各个智能设备之间的互联互通;通信协议,选择合适的通信协议,实现设备之间的数据交换和控制。
2. 软件开发。
应用开发,开发智能家居APP,提供用户友好的操作界面,实现设备的远程控制和智能化管理;数据管理,设计数据库结构,存储用户信息、设备信息、能源数据等;系统集成,将硬件设备和软件系统进行集成,实现整体系统的功能。
3. 用户界面设计。
界面布局,设计简洁直观的界面布局,方便用户操作;功能设计,设计用户操作流程,实现用户快速上手;可视化展示,提供设备状态、能源消耗等数据的可视化展示,方便用户了解家居情况。
4. 测试与上线。
系统测试,对系统进行全面测试,确保系统稳定性和安全性;用户培训,为用户提供系统使用培训,帮助用户快速上手;系统上线,将系统正式上线,投入使用。
通过概要设计和详细设计,我们将完成一个功能完善、稳定可靠的智能家居系统,为用户提供更便利、舒适的家居生活体验。
软件概要设计范例软件概要设计是软件开发过程中的一个重要阶段,它通常由软件架构师或概要设计师完成。
下面是一个软件概要设计的范例:1. 引言1.1 目的在本文档中,我们将描述一个名为XXX的软件系统的概要设计。
该软件系统旨在实现XXX功能,并满足用户需求。
1.2 范围本软件系统的范围涵盖了XXX应用的开发,包括业务流程、数据管理、用户界面等方面。
1.3 定义、缩略词和缩写词- XXX:XXX系统- YYY:YYY模块- ZZZ:ZZZ功能2. 系统架构2.1 系统总体结构本软件系统采用了XXX架构,包括以下主要组件:- YYY模块:负责处理XXX相关的业务逻辑。
- ZZZ模块:负责处理ZZZ功能相关的逻辑。
- 用户界面:提供了用户与系统交互的界面。
2.2 系统模块结构本软件系统被划分为以下模块:- 模块1:负责处理XXX功能。
- 模块2:负责处理YYY功能。
- 模块3:负责处理ZZZ功能。
- ...3. 数据模型3.1 数据库设计本软件系统使用了一个关系型数据库来存储数据,数据库中包含了以下表:- 表1:存储XXX数据的表,包含字段1、字段2、字段3等。
- 表2:存储YYY数据的表,包含字段1、字段2、字段3等。
- 表3:存储ZZZ数据的表,包含字段1、字段2、字段3等。
3.2 数据流图根据系统的业务流程,我们绘制了数据流图,展示了不同模块之间的数据流动。
4. 系统功能实现描述4.1 功能1的实现描述描述了功能1的实现过程,包括输入输出、处理逻辑等。
4.2 功能2的实现描述描述了功能2的实现过程,包括输入输出、处理逻辑等。
4.3 功能3的实现描述描述了功能3的实现过程,包括输入输出、处理逻辑等。
5. 接口设计5.1 用户界面设计描述了用户界面的设计,包括界面元素、交互方式等。
5.2 与其他系统的接口设计描述了本系统与其他系统的接口设计,包括数据交换、调用方式等。
6. 性能需求描述了软件系统的性能需求,包括响应时间、并发处理能力等。
概要设计说明书1.引言1.1编写目的本概要设计说明书是针对网络信息体系结构的课程作业而编写。
目的是对该项目进行总体设计,在明确系统需求的基础上划分系统的功能模块,进行系统开发的分工,明确各模块间的接口,为进行后面的详细设计和实现作准备。
本概要设计说明书的预期读者为本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员。
1.2背景a.待开发的系统的名称: ;b.本项目的任务提出者: 赵东,成富,陈良,窦文敏开发者:赵东,成富,陈良,窦文敏用户:所有对该项目感兴趣,并想通过该项目的产品提高资源检索速度和质量,方便的进行资源检索,预览,上传及下载的用户。
2.总体设计2.1需求规定2.1.1系统功能●的文件上传及下载功能:类似于普通的文件上传和下载功能。
◆用户输入的服务器及用户名,密码,连接服务器并上传或下载用户指定的文件。
◆如果用户不输入用户名,密码则默认为匿名登录。
◆可以以列表的形式显示服务器连接信息,以表格的形式显示正下载文件的信息。
◆具有站内搜索功能。
●资源实时检索功能:提供一个强大的搜索引擎功能,用户只需提供关键字和需要检索的资源的类型,就能检索到上面所述四种子平台上的所有相关资源,并且列出来的资源都是可使用的。
●资源预览功能:对于服务器上的某些资源,用户可以选择预览,以确定是否下载。
●资源统计信息的功能:包括最近更新的资源,网上评论较热门的资源等。
提供一个详细的列表,方便用户浏览。
2.1.2系统性能2.1.2.1时间特性要求系统的速度要在用户可接受的范围内,但考虑到需要实时检测服务器的可用性,对资源实时搜索的速度可以有较低的要求。
的文件上传和下载速度要尽量的接近于普通的速度。
2.1.2.2可靠性系统要有较高的可靠性,可恢复性。
2.1.2.3灵活性系统要有良好的接口,以适应增加资源平台,增加资源类型,增加相关的资源获取功能的需求;并留有服务器接口,适应对以后实现服务器功能的需要;同时系统还需要具有跨平台功能。
ERP简要概要分析仅供内部使用。
未经本公司许可,不得泄露给第三方目录1 概述 (3)2 仓储管理系统 (4)2.1 程序名称:商品资料维护 (4)2.2 程序名称:仓库库位资料维护 ........................................................... 错误!未定义书签。
2.3 程序名称:商品库存信息查询 ........................................................... 错误!未定义书签。
2.4 程序名称:仓库开工及日结作业 (4)2.5 程序名称:商品入库作业 (8)2.6 程序名称:商品出库作业 (8)2.7 程序名称:打印盘点表 (8)2.8 程序名称:盘点差异调整 (8)2.9 程序名称:低于安全库存的货品明细表 (8)2.10 程序名称:库存商品日报表 (8)2.11 程序名称:库存呆料表 (8)2.12 程序名称:货品进出库明细表 (8)3 订单及预测管理,成品销售管理....................................................................... 错误!未定义书签。
3.1 程序名称:客户订单开单................................................................... 错误!未定义书签。
3.2 程序名称:客户订单审核................................................................... 错误!未定义书签。
3.3 程序名称:预测下单/库存补货.......................................................... 错误!未定义书签。
3.4 程序名称:审核预测下单/库存补货.................................................. 错误!未定义书签。
概要设计实例(总26页) -CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除XXX系统概要设计说明书版本历史目录引言..................................................... 错误!未定义书签。
编写目的............................................. 错误!未定义书签。
项目背景............................................. 错误!未定义书签。
定义................................................. 错误!未定义书签。
参考资料............................................. 错误!未定义书签。
2 总体设计方案.......................................... 错误!未定义书签。
基本设计思想......................................... 错误!未定义书签。
系统整体设计......................................... 错误!未定义书签。
物理部署架构 ....................................... 错误!未定义书签。
系统的层次模型 ....................................... 错误!未定义书签。
创新项目............................................... 错误!未定义书签。
用户管理模块 ......................................... 错误!未定义书签。
系统参数模块 ......................................... 错误!未定义书签。
结构设计示例教材购销系统的结构设计示例。
通过结构化分析,已获得教材购销系统第二层的两张DFD图,即销售子系统DFD图和采购子系统DFD图。
试用结构化设计方法,从上述两张DFD图导出教材购销系统的总体结构图,包括初始的SC图和按改进规则进行修改后的最终SC图。
解按照下图所显示的工作顺序,本例可按照以下的步骤进行。
第一步:细化并修改DFD图。
首先看销售子系统。
共有6个加工,其中加工1.3包含登记售书和打印领书单两项功能。
为了提高模块独立性,可将它分解为两个加工,让原来的加工1.3(改成1.4)专管登记售书,另添一个加工1.7打印领书单。
SD设计方法流程再考察图采购子系统。
来自书库保管员的“进书通知”,不仅本子系统要用它来修改教材库存(F1)和待购量(F5),还要传送给销售子系统,以便及时通知学生补售。
“登记进书”和“补售教材”分属于两个不同的子系统,且补售只能在登记之后进行。
为避免补售时在键盘上重复输入“进书通知”的内容,可在系统中增加一个“进书登记表”文件(F7),供两个子系统共享。
该文件的组成可以是:进书登记表= {书号+书名+数量+登记标志+补售标志}其中两个标志的初值均为“假”,分别在执行登记和补售功能后改“假”为“真”。
经过上述的细化和修改,即可获得两张新的DFD图,即图6的销售子系统DFD和图7的采购子系统DFD。
不言而喻,对它们的父图也要作相应的修改,才能保持一致。
为节·439·第三部分 软件工程·440· 省篇幅,父图的修改这里就从略了。
第二步:鉴别DFD 图的类型。
先考察图6。
初看起来,它具有变换型结构。
加工1.1与1.6为传入部分,1.3与1.7为传出部分,其余3个(1.2,1.4,1.5)属变换部分。
加工1.4(登记售书)和1.5(登记缺书)均不产生输出数据,故不应划入“传出”部分。
经过以上的分析,就可以在图上画出两条界线,如图6中的两条虚线所显示。
X X X X X X概要设计说明书张三、李四、王五1.引言1.1编写目(de)在本机票预定系统项目(de)前一阶段,也就是需求分析阶段中,已经将系统用户对本系统(de)需求做了详细(de)阐述,这些用户需求已经在上一阶段中对航空公司、各旅行社及机场(de)实地调研中获得,并在需求规格说明书中得到详尽得叙述及阐明.本阶段已在系统(de)需求分析(de)基础上,对机票预定系统做概要设计.主要解决了实现该系统需求(de)程序模块设计问题.包括如何把该系统划分成若干个模块、决定各个模块之间(de)接口、模块之间传递(de)信息,以及数据结构、模块结构(de)设计等.在以下(de)概要设计报告中将对在本阶段中对系统所做(de)所有概要设计进行详细(de)说明.在下一阶段(de)详细设计中,程序设计员可参考此概要设计报告,在概要设计对机票预定系统所做(de)模块结构设计(de)基础上,对系统进行详细设计.在以后(de)软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成(de)各模块设计结构,或在修改时找出在本阶段设计(de)不足或错误.1.2项目背景机票预定系统将由两部分组成:置于个旅行社定票点(de)前台客户程序,以及置于航空公司(de)数据库服务器.本系统与其他系统(de)关系如下:(航空公司) 飞机1.3 定义1.3.1 专门术语SQL SERVER: 系统服务器所使用(de)数据库管理系统(DBMS ). SQL: 一种用于访问查询数据库(de)语言事务流:数据进入模块后可能有多种路径进行处理. 主键:数据库表中(de)关键域.值互不相同. 外部主键:数据库表中与其他表主键关联(de)域. ROLLBACK: 数据库(de)错误恢复机制. 1.3.2 缩写系统:若未特别指出,统指本机票预定系统.SQL: Structured Query Language (结构化查询语言). ATM: Asynchronous Transfer Mode (异步传输模式).1.4 参考资料以下列出在概要设计过程中所使用到(de)有关资料:1.机票预定系统项目计划任务书浙江航空公司 1999/32.机票预定系统项目开发计划软件开发小组 1999/33.需求规格说明书软件开发小组 1999/34.用户操作手册(初稿)软件开发小组 1999/45.软件工程及其应用周苏、王文等天津科学技术出版社1992/16.软件工程张海藩清华大学出版社 1990/117.Computer Network文档所采用(de)标准是参照软件工程导论沈美明着 (de)“计算机软件开发文档编写指南”.2.任务概述2.1 目标2.2 运行环境系统将由两部分程序组成,安装在各旅行社客户机上(de)客户程序及航空公司内(de)数据服务器程序.根据调研得知所有旅行社(de)计算机配置均在Pentium 133级别以上,客户程序应能够在Pentium 133级别以上, Win NT环境下运行.2.3 需求概述浙江航空公司为方便旅客,需开发一个机票预定系统.为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票(de)旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目(de)地,输入机票预定系统(de)客户端程序,系统经过查询航空公司内(de)航班数据服务器后,为旅客安排航班,印出取票通知.旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客.要求系统能有效、快速、安全、可靠和无误(de)完成上述操作.并要求客户机(de)界面要简单明了,易于操作,服务器程序利于维护. 2.4 条件与限制3. 总体设计3.1 处理流程下面将使用(结构化设计)面向数据流(de)方法对机票预定系统(de)处理流程进行分析.系统可分为两大部分:一、客户机上(de)程序,二、服务器上(de)程序.以下将分别对系统(de)这两大部分进行流程分析: 3.1.1 客户机程序流程客户机上(de)输入信息为旅客资料或帐单号,还包括一个定票/领票选1.读入并确定(定票/领票)它是一个事务处理中心,若输入是定票时转入2 ,输出则转入5.2.读入旅客资料读取所输入(de)旅客资料,并将其格式化,将格式化数据送3.3.检验输入资料检验格式化输入资料,初步检查输入是否有误,它是一个事务处理中心,有误则转2再次读入,检查无误则将数据送4.4.准备服务器数据由格式化旅客资料准备需发送到服务器(de)数据,将准备好(de)数据送7.5.读入帐单号读取所输入(de)帐单号,并将其格式化,将格式化数据送6.6.准备服务器数据由格式化帐单号准备需发送到服务器(de)数据,不同于4,它将准备(de)是帐单号,将准备好(de)数据送7.7.准备网络数据包将数据准备/加密成网络传输数据包.8.网络数据发送将数据包经网络发送到服务器程序, 它是程序与网络(de)接口.9.网络数据接受接受由服务器程序经网络传送到客户机(de)数据包, 它是程序与网络(de)接口.10.解开/判断解开9 所接受(de)数据包,并判断数据是定票数据或是领票数据,它是一事务处理中心,是定票则将数据送11,是领票则将数据送18. 11.定票成功由数据判断定票是否成功,它是一事务处理中心,若定票成功则将数据送11,不成功则将数据送18.12.准备输出数据由接收(de)服务器数据准备输出数据,其中关于帐单(de)数据将送入13,其他包括旅客资料等送入14.13.打印帐单由帐单信息处理帐单格式并打印出帐单.14.输出定位确定在屏幕上显示确定定位及其他信息.15.判断错误由数据判断出错误类型,将类型送到16.16.准备错误语句由具体错误类型准备错误语句,送17.17.输出错误语句在屏幕上显示错误语句.18.领票核对成功由数据判断领票核对是否成功,它是一事务处理中心,若成功则将数据送19,不成功则将数据送15.19.准备机票输出数据由接收(de)服务器数据准备将打印(de)机票数据数,据其中关于帐单(de)机票(de)数据将送入20,其他包括旅客资料等送入14.20.打印机票由机票信息处理机票格式并打印出机票.3.1.2 服务器程序流程下面对各模块(以数字表示)进行功能说明:1. 网络数据接收 接受由客户机程序经网络传送到客户机(de)数据包, 它是程序与网络(de)接口.2. 解开数据 解开/解密打包(de)数据,并将恢复(de)数据格式化送入3. 3. 判断操作由数据判断需要做什么数据库操作,它是一事务处理中心,若为定票操作则将数据送4,若为领票操作则将数据送15.4.准备数据库查询语句 由定票数据准备访问SQL SERVER 数据库所需(de)SQL 语句,送入5.5. 数据库操作 运行SQL 语句,查询并存入数据库,获得相应(de)定票数据,将数据送入6.它需包括初步对查询(de)判断.它必须为乘客安排可抵达目(de)地(de)有座位(de)航班.6. 判断查询是否成功 利用查询所得(de)数据判断定票是否成功,它是一事务处理中心,若为定票操作成功则将数据送7,若不成功则将数据送8.7. 准备回送数据 准备定票成功后需回送客户机程序(de)数据,送16.8.确定原因由查询数据判断定票不成功(de)原因,送9.9.准备回送数据根据不成功(de)原因,准备需送回客户机程序(de)数据,送入16.10.准备数据库查询语句由领票数据准备访问SQL SERVER数据库所需(de)SQL 语句,送入11.11.数据库操作运行SQL 语句,查询并存入数据库获得相应(de)领票数据,将数据送入6.它需包括初步对查询(de)判断.12.判断查询是否成功利用查询所得(de)数据判断领票是否成功,它是一事务处理中心,若为领票操作得到确认则将数据送11,若不成功则将数据送8.13.准备回送数据准备领票确认后需回送客户机程序(de)数据,送16. 14.确定原因由查询数据判断领票不能确认(de)原因,送15.15.准备回送数据根据不成功(de)原因,准备需送回客户机程序(de)数据,送入16.16.准备网络数据包将数据准备/加密成网络传输数据包.17.网络数据发送将数据包经网络发送到服务器程序, 它是程序与网络(de)接口.以上显示(de)各模块数字相同(de)为同一模块;由于事务流处理上(de)便利,将有些功能模块,拆分到各事务流中.3.2 总体结构和模块外部设计下面以结构图来描述机票预定系统(de)软件总体结构.框内注明了模块(de)名字;方框之间(de)直线表示模块(de)调用关系.3.2.1 客户机部分3.2.2 服务器程序部分其中在数据处理、查询下作了省略…只给出了一部分模块,实际上是有两部分,分别对应于定位及确认.功能分配各项模块(de)功能可参照中(de)说明.客户机程序主要有三大块:接收数据、网络通信及输出部分.服务器程序主要也是由三大功能:接收网络数据、数据库操作及发送网络数据部分.服务器程序需与已建立(de)SQL SERVER 数据库互连,其接口将于下面部分阐述.4.接口设计4.1 外部接口4.1.1 用户界面在用户界面部分,根据需求分析(de)结果,用户需要一个用户友善界面.在界面设计上,应做到简单明了,易于操作,并且要注意到界面(de)布局,应突出(de)显示重要以及出错信息.外观上也要做到合理化,考虑到用户多对WINDOW 风格较熟悉,应尽量向这一方向靠拢.在设计语言上,已决定使用 MS VISUAL C++ 进行编程,在界面上可使用VISUAL C++ 所提供(de)可视化组件,向WINDOWS 风格靠近. 其中服务器程序界面要做到操作简单,易于管理.在设计上采用下拉式菜单方式,在出错显示上可调用VISUAL C++ 库中(de)错误提示函数.总(de)来说,系统(de)用户界面应作到可靠性、简单性、易学习和使用4.1.2 软件接口服务器程序可使用VISUAL C++ 提供(de)对 SQL SERVER (de)接口,进行对数据库(de)所有访问.服务器程序上可使用SQL SERVER (de)对数据库(de)备分命令,以做到对数据(de)保存.在网络软件接口方面,使用一种无差错(de)传输协议,采用滑动窗口方式对数据进行网络传输及接收.4.1.3 硬件接口在输入方面,对于键盘、鼠标(de)输入,可用VISUAL C++(de)标准输入/输出,对输入进行处理.在输出方面,打印机(de)连接及使用,也可用VISUAL C++(de)标准输入/输出对其进行处理.在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM.4.2 内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值(de)方式进行信息传递.具体参数(de)结构将在下面数据结构设计(de)内容中说明.接口传递(de)信息将是以数据结构封装了(de)数据,以参数传递或返回值(de)形式在各模块间传输.5.数据结构设计5.1 数据库数据结构设计DBMS (de)使用上系统将采用 SQL SERVER, 系统主要需要维护3张数据表:1.航班班次表航班班次表保存了所有从本地起飞(de)班机信息,它(de)主键为航班号.在定位前先查寻座位空数,在定位后将修改座位空数.2.定位信息表定位信息表保存了已定位信息,主键为帐单号,外部主键为航班号.在旅客领票过程时将用到此表,领票后修改是否领票域3.帐单信息/旅客资料表帐单信息/旅客资料表保存已定位(de)旅客信息资料,它(de)主键为旅客身份证号,外部主键为帐单号.主要用于领票时将旅客信息一同返回.4.机位信息表班机号机位信息机位信息表保存各班机各机位定票状况.它(de)外部主键为班机号.主要用于定票时确定旅客机位,并返回.5.2 物理数据结构设计物理数据结构设计主要是设计数据在模块中(de)表示形式.数据在模块中都是以结构(de)方式表示.1.旅客信息1.旅客姓名String用于定票时接收输入,以及领票时服务器返回.2.旅客性别Char2.帐单号可使用一LONG INT 实现.用于领票时接收输入,以及定票时服务器返回.3.飞行目(de)用于定票时接收输入,以及领票时服务器返回. 4. 网络包 用于数据在网络上(de)传输.5.错误信息用于关于错误操作. 6.机票信息用于打印机票准备工作.数据类型可参照上面所述.7. 帐单信息用于打印帐单准备工作.数据类型可参照上面所述.5.3 数据结构与程序(de)关系服务器程序在对定票/领票进行操作时需对数据库数据库数据结构,也就是数据表进行查询和修改:在定票/领票过程中都需要对数据库中(de)所有表,进行联合查询、修改.物理数据结构主要用于各模块之间函数(de)信息传递.接口传递(de)信息将是以数据结构封装了(de)数据,以参数传递或返回值(de)形式在各模块间传输.出错信息将送入显示模块中,机票结构,帐单结构,送入打印准备模块中准备打印格式.1. 航班号 String2. 目(de)地 String3. 起飞时间Date/Time 1. 网络包Head INT1. 错误类型INT1. 航班号2. 目(de)地3. 起飞时间4. 旅客姓名1.帐单号 2.旅客姓名3.身份证号码6.运行设计6.1 运行模块(de)组合客户机程序在有输入时启动接收数据模块,通过各模块之间(de)调用,读入并对输入进行格式化.在接收数据模块得到充分(de)数据时,将调用网络传输模块,将数据通过网络送到服务器,并等待接收服务器返回(de)信息.接收到返回信息后随即调用数据输出模块,对信息进行处理,产生相应(de)输出.服务器程序(de)接收网络数据模块必须始终处于活动状态.接收到数据后,调用数据处理/查询模块对数据库进行访问,完成后调用网络发送模块,将信息返回客户机.6.2 运行控制运行控制将严格按照各模块间函数调用关系来实现.在各事务中心模块中,需对运行控制进行正确(de)判断,选择正确(de)运行控制路径.在网络传方面,客户机在发送数据后,将等待服务器(de)确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认.服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认.6.3 运行时间在软体(de)需求分析中,对运行时间(de)要求为必须对作出(de)操作有较快(de)反应.网络硬件对运行时间有最大(de)影响,当网络负载量大时,对操作反应将受到很大(de)影响.所以将采用高速ATM 网络,实现客户机与服务器之间(de)连接,以减少网络传输上(de)开销.其次是服务器(de)性能,这将影响对数据库访问时间即操作时间(de)长短,影响加大客户机操作(de)等待时间,所以必须使用高性能(de)服务器,建议使用 Pentium III 处理器.硬件对本系统(de)速度影响将会大于软件(de)影响.7.出错处理设计7.1 出错输出信息程序在运行时主要会出现两种错误:1、由于输入信息,或无法满足要求时产生(de)错误,称为软错误.2、由于其他问题,如网络传输超时等,产生(de)问题,称为硬错误.对于软错误,须在定票/领票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应(de)错误提示语句,送到输出模块中.对与硬错误,可在出错(de)相应模块中输出简单(de)出错语句,并将程序重置.返回输入阶段.出错信息必须给出相应(de)出错原因,例:全部班机座位已满查无此定位信息等.7.2 出错处理对策所有(de)客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成(de)数据丢失(de)损失.若真断电时,客户机上将不会有太大(de)影响,主要是服务器上:在断电后恢复过程可采用 SQL SERVER (de)日志文件,对其进行ROLLBACK 处理,对数据进行恢复.在网络传输方面,可考虑建立一条成本较低(de)后备网络,以保证当主网络断路时数据(de)通信.在硬件方面要选择较可靠、稳定(de)服务器机种,保证系统运行时(de)可靠性.8.安全保密设计由于数据(de)传输上需要通过网络传输,为了客户资料进行保密,需要在网络(de)传输过程中对数据进行加密.这个工作主要是在准备网络包,及解开网络包这两个模块完成,它们各对数据进行加密及解密还原工作.在加密算法选择上将使用RSA 加密算法.具体算法可参照参考资料中Computer Network.9.维护设计维护方面主要为对服务器上(de)数据库数据进行维护.可使用 SQL SERVER (de)数据库维护功能机制.例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据(de)一致性等.。
概要设计说明书1.引言1.1编写目的本概要设计说明书是针对网络信息体系结构的课程作业而编写。
目的是对该项目进行总体设计,在明确系统需求的基础上划分系统的功能模块,进行系统开发的分工,明确各模块间的接口,为进行后面的详细设计和实现作准备。
本概要设计说明书的预期读者为本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员。
1.2背景a.待开发的系统的名称:Lyra Resource Platform;b.本项目的任务提出者: 赵东,成富,陈良,窦文敏开发者:赵东,成富,陈良,窦文敏用户:所有对该项目感兴趣,并想通过该项目的产品提高资源检索速度和质量,方便的进行资源检索,预览,上传及下载的用户。
2.总体设计2.1需求规定2.1.1系统功能● FTP的文件上传及下载功能:类似于普通ftp的文件上传和下载功能。
◆用户输入ftp的服务器ip及用户名,密码,连接服务器并上传或下载用户指定的文件。
◆如果用户不输入用户名,密码则默认为匿名登录。
◆可以以列表的形式显示服务器连接信息,以表格的形式显示正下载文件的信息。
◆具有站内搜索功能。
●资源实时检索功能:提供一个强大的搜索引擎功能,用户只需提供关键字和需要检索的资源的类型,就能检索到上面所述四种子平台上的所有相关资源,并且列出来的资源都是可使用的。
●资源预览功能:对于服务器上的某些资源,用户可以选择预览,以确定是否下载。
●资源统计信息的功能:包括最近更新的资源,网上评论较热门的资源等。
提供一个详细的列表,方便用户浏览。
2.1.2系统性能2.1.2.1时间特性要求系统的速度要在用户可接受的范围内,但考虑到需要实时检测服务器的可用性,对资源实时搜索的速度可以有较低的要求。
ftp的文件上传和下载速度要尽量的接近于普通ftp的速度。
2.1.2.2可靠性系统要有较高的可靠性,可恢复性。
2.1.2.3灵活性系统要有良好的接口,以适应增加资源平台,增加资源类型,增加相关的资源获取功能的需求;并留有服务器接口,适应对以后实现服务器功能的需要;同时系统还需要具有跨平台功能。
2.1.3输入输出要求于ftp和资源实时检索功能系统的输入数据分为两种类型,如果用户已知服务器ip,用户名,密码,则输入数据为服务器ip,用户名,密码;如果用户只知道需要的资源名称和类型,则输入需要的资源名称和类型。
系统输出为用户需要的资源列表。
并下载用户选择的文件。
对于预览功能,用户需要选择要预览的文件,系统输出该文件的一部分或全部内容,如果用户选择保存预览内容,则保存。
2.1.4数据管理能力要求系统需要记录用户最近连接过的ftp的地址,用户名,密码及该站点的文件列表。
2.1.5故障处理要求具有一定的容错能力,能检测用户的错误输入并给出错误提示,能检测资源的可用性错误并输出结果。
能进行系统故障恢复。
2.1.6其他专门要求因为本系统是一个普遍使用的工具,所以要求界面友好,使用方便,并要求系统具有高稳定性,可扩充性和运行环境的可转换性。
2.2运行环境2.2.1设备普通pc机,互联网。
2.2.2支持软件操作系统:windows或linux其它软件:jdk 1.42.2.3接口该系统早期会使用北大天网FTP搜索引擎和其他的文件搜索系统如百度的功能实现资源的检索,但是在后期时间允许的情况下会开发自己的检索部分。
2.3基本设计概念和处理流程系统的用况图如下:图1 系统的用况图活动者:用户,即使用系统进行资源上传下载,站内搜索,资源实时检索,资源预览和资源统计信息的人。
用况说明:●用况名称:上传参与者:用户主要事件流:1. 用户输入ftp的ip及用户名,密码。
2. 系统连接ftp。
3. 用户选择资源并选择上传功能。
4. 系统运行上传功能,并显示资源上传信息。
异常事件流:1. 用户输入的ftp无法连接。
2. 显示ftp无法连接,并提示原因,如无法找到此ftp,用户名或密码错误,ftp连接人数已满等等。
异常事件流:1. 资源上传出错。
2. 显示资源上传错误,并提示原因,如无上传权限,ftp空间已满等等。
●用况名称:下载参与者:用户主要事件流:1. 用户输入ftp的ip及用户名,密码。
2. 系统连接ftp。
3. 用户选择资源并选择下载功能。
4. 系统运行下载功能,并显示资源下载信息。
异常事件流:1. 用户输入的ftp无法连接。
2. 显示ftp无法连接,并提示原因,如无法找到此ftp,用户名或密码错误,ftp连接人数已满等等。
异常事件流:1. 资源下载出错。
2. 显示资源下载错误,并提示原因,如无下载权限,用户磁盘空间已满等等。
●用况名称:站内搜索参与者:用户主要事件流:1. 用户输入需要搜索的资源名称关键字。
2. 系统进行站内搜索并显示搜索结果。
●用况名称:资源实时搜索参与者:用户主要事件流:1. 用户输入需要搜索的资源名称关键字,选择需要的资源类型。
2. 系统进行实时检索。
3. 输出检索结果。
4. 用户在检索结果中选择需要的资源。
5. 系统连接用户选择的资源,并显示。
异常事件流:1. 实时检索出错。
2. 显示错误。
●用况名称:预览参与者:用户主要事件流:1.用户选择需要预览的资源并选择预览功能。
2.系统显示资源的内容。
3.用户选择保存预览资源。
4.系统将该资源保存到用户选择的目录。
异常事件流:1. 预览出错。
2. 系统显示出错信息。
●用况名称:统计资源信息参与者:用户主要事件流:1. 用户输入需要统计信息的资源类型。
2. 系统统计资源的信息。
3. 显示资源的统计信息。
异常事件流:1. 统计资源信息出错。
2. 系统显示出错信息。
系统的主要使用流程:2.4结构系统物理结构图:BT服务器图2 系统物理结构图系统模块图图3 系统模块图●ui:系统界面部分,负责接受用户输入,显示系统输出,负责其他模块功能的协调调用,并含有站内搜索功能,即在用户指定的已打开的ftp站点中搜索用户需要的资源。
ui 部分调用common部分的功能读取xml文件中保存的界面元素属性信息,用户最近访问过的10个ftp信息,用户选择的下载的ftp内容列表及其他需要通过xml文件保存的信息。
●client:实现ftp客户端的功能,ftp连接,ftp上传及下载:上传或下载用户指定的资源,并返回相应的信息。
●search:资源实时检索部分,根据用户输入的资源名称关键字,资源类型和选择的检索方式检索用户需要的资源,并验证资源的可用性,返回可用资源及其大小,速度等相关信息。
●preview:资源预览部分,显示用户选择的资源的部分内容,以使用户决定是否需要该资源。
preview部分调用common部分读取属性文件的内容以设置预览资源内容的显示格式。
3.接口设计3.1用户接口1.用户:用户需要浏览的ftp的ip,用户名,密码。
系统:打开该ftp,根据用户的选择上传,下载或预览资源。
2.用户:用户需要实时检索的资源的名称关键字和资源类型。
系统:实时检索用户需要的资源,显示可用资源的列表。
3.用户:输入需要统计信息的资源类型系统:统计资源信息并显示。
3.2外部接口调用天网的文件检索功能:参数:需要检索的资源名称关键字,返回:与该关键字匹配的所有资源的url。
调用百度的搜索功能:参数:需要检索的资源名称关键字,返回:与该关键字匹配的所有资源的url。
3.3内部接口[说明本系统之内的各个系统元素之间的接口的安排。
]ui与client间的接口:输入:ftp地址,用户名,密码,需上传的资源,上传到的目录。
输出:上传速度,其它相关信息。
输入:ftp地址,用户名,密码,需下载的资源,下载的目录。
输出:下载速度,其它相关信息。
ui内部界面与资源站内搜索间的接口:输入:ftp地址,需搜索资源的名称关键字。
输出:搜索结果列表。
ui与search间的接口:输入:需搜索资源的名称关键字,需搜索资源的种类。
输出:搜索结果列表。
ui与preview间的接口:输入:需预览资源的地址及类型。
输出:需预览资源的内容。
ui与统计资源信息界的接口:输入:需统计信息的资源类型。
输出:资源统计信息。
4.运行设计4.1运行模块组合ftp上传功能:系统界面模块,ftp上传模块。
ftp下载功能:系统界面模块,ftp下载模块。
资源站内搜索功能:系统界面模块,站内搜索模块。
资源实时检索功能:系统界面模块,资源实施检索模块。
资源预览功能:系统界面模块,预览模块。
统计资源信息功能:系统界面模块,统计资源信息模块。
4.2运行控制ftp上传:输入ftp的ip,用户名,密码。
连接ftp,显示ftp的内容。
浏览ftp选择要上传到的目录。
选择需要上传的资源并选择上传功能。
执行上传操作。
显示上传速度及相关信息。
Lyra Resource Platform文档概要设计说明书ftp下载:输入ftp的ip,用户名,密码。
连接ftp,显示ftp的内容。
浏览ftp选择要下载资源所在的目录。
选择需要下载的资源并选择下载功能。
执行下载操作。
显示下载速度及相关信息。
资源站内搜索:输入需要搜索的资源名称关键字。
搜索用户指定的资源。
返回搜索结果。
资源实时搜索:输入需要搜索的资源名称关键字及资源类型。
进行资源实时搜索。
显示可用资源列表。
执行其他所需的操作如下载。
资源预览:选择需要预览的资源并选择预览功能。
显示资源的部分内容。
决定是否保存该资源。
统计资源信息:输入需统计信息的资源类型。
执行统计资源信息功能。
显示结果。
5.系统数据结构设计5.1逻辑结构设计要点主要的逻辑结构如下:serversinfor:ftp服务器信息。
属性:name(服务器名称或url)port(端口号)username(用户名)password(密码)。
NetResource:实时检索到的资源。
属性:fileURL(文件资源的URL,包括协议、主机字符串、路径、文件名)fileDate(天网将它编入索引的日期)fileSize(文件的大小)responseTime(以毫秒计算的响应时间)。
5.2物理结构设计要点用户最近访问的ftp服务器信息使用xml文件保存。
用户最近访问的ftp服务器的内容使用xml文件保存,每个ftp的内容存为一个xml 文件。
系统中对资源分类的类型使用xml文件保存。
系统界面的显示属性,如字体属性等使用xml文件保存。
系统界面中使用的相关图片需要保存在客户端机器上。
11。