软件详细设计报告

基于android手持设备的景区导览系统

变更记录

签字确认

目录

1. 引言............................................................................................................................................................. 3

1.1 编写目的............................................................................................................................................... 3

1.2 项目风险............................................................................................................................................... 3

1.3 文档约定............................................................................................................................................... 3

1.4 预期读者和阅读建议......................................................................................................................... 3

1.5 参考资料............................................................................................................................................... 3

2. 支撑环境.................................................................................................................................................... 3

2.1 数据库管理系统.................................................................................................................................. 3

2.2 开发工具、中间件以及数据库接口............................................................................................... 3

2.3 硬件环境............................................................................................................................................... 3

2.4 网络环境............................................................................................................................................... 3

2.5 多种支撑环境开发要点..................................................................................................................... 3

3. 部件详细设计.......................................................................................................................................... 3

4. 词汇表........................................................................................................................................................ 3

5. 部件表格式............................................................................................................................................... 3

6. 界面表格式............................................................................................................................................... 3

1. 引言

引言是对这份软件系统详细设计报告的概览,是为了帮助阅读者了解这份文档如何编写的,并且应该如何阅读、理解和解释这份文档。

1.1 编写目的

说明这份软件系统详细设计报告是基于哪份软件产品需求分析报告、哪份软件产品概要设计报告和哪份软件产品数据库设计说明书(如果该软件产品需要数据库支持)编写的,开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件系统详细设计报告详尽说明了该软件产品的编码结构,从而对该软件产品的物理组成进行准确的描述。

如果这份软件系统详细设计报告只与整个系统的某一部分有关系,那么只定义软件系统详细设计报告中说明的那个部分或子系统。

1.2 项目风险

具体说明本软件开发项目的全部风险承担者,以及各自在本阶段所需要承担的主要风险,首要风险承担者包括:

●  任务提出者;

●  软件开发者;

●  产品使用者。

1.3 文档约定

描述编写文档时所采用的标准(如果有标准的话),或者各种编写约定。编写约定应该包括:

●  部件编号方式;

●  界面编号方式;

●  命名规范:

●  等等。

1.4 预期读者和阅读建议

列举本软件系统详细设计报告所针对的各种不同的预期读者,例如,可能的读者包括:

●  开发人员;

●  项目经理;

●  测试人员;

●  文档编写人员;

●  等等。

描述文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。

1.5 参考资料

列举编写软件系统详细设计报告时所用到的参考文献及资料,可能包括:

●  本项目的合同书;

●  上级机关有关本项目的批文;

●  本项目已经批准的计划任务书;

●  用户界面风格指导;

●  开发本项目时所要用到的标难;

●  系统规格需求说明;

●  使用实例文档;

●  属于本项目的其它己发表文件;

●  本软件系统详细设计报告中所引用的文件、资料;

●  相关软件系统详细设计报告;

●  等等。

为了方便读者查阅,所有参考资料应该按一定顺序排列。如果可能,每份资料都应该给出:

●  标题名称;

●  作者或者合同签约者;

●  文件编号或者版本号;

●  发表日期或者签约日期;

●  出版单位或者资料来源。

2. 支撑环境

2.1 数据库管理系统

描述数据库管理系统、以及安装配置情况,需要描述的内容可能包括:

●  产品名称以及发行厂商

这里的产品名称指的是数据库发行厂商发布产品时公布的正式商品名称,不应该

使用别名、简称、研发代号等非正式名称,以免混淆;同样的道理,发行厂商的

名称也应该使用正式名称。

●  版本号

数据库管理系统的准确版本号,必须按产品的实际情况描述到最细节的版本号。

●  补丁包版本号

描述实际上将要使用的数据库管理系统补丁包的版本号,必须注意,在某些情况

下该版本号不一定是最新的版本号。

●  语言或代码集

对于只支持一种语言或者一个代码集的数据库管理系统来说,该项描述不具意

义。对于支持多种语言或者多个代码集的数据库管理系统来说,该项描述指的是

实际使用的语言或者代码集。

●  安装位置

描述数据库管理系统的实际安装位置,应该分别对管理系统安缺位置和数据存放

位置进行描述,应该指明服务器名和安装卷号(盘号)。对于分布式数据库,必须

分别描述每一个数据库管理系统。

●  配置参数

描述数据库管理系统在实际安装时应该配置的各个参数,对于分布式数据库,必

须分别描述每一个数据库管理系统的配置参数。

●  等等

同时参照《南京市交通局信息化数据库建设规范》。

2.2 开发工具、中间件以及数据库接口

描述所选用的工具软件和中间件的名称、版本号,以及开发工具与数据库或者中间件接口的情况。如果使用了多种开发工具、辅助开发工具、第三方软件部件、多种中间件、多种接口、等答应该逐项分别描述,并且说明每一项的适用范围。需要描述的内容可能包括:

●  产品名称以及发行厂商

同2.1中产品名称以及发行厂商。

●  版本号

同2.1中版本号。

●  补丁包版本号

同2.1中补丁包版本号。

●  语言或代码集

同2.1中语言或代码集。

●  数据库接口名称

描述数据库接口的名称,如果使用别名时,应同时描述使用的别名。

●  数据库接口方式

描述与数据库接口的方式,并说明该接口方式的特点;如果需要,还应该说明使

用时的注意事项。

●  数据库接口设置

描述各种接口设置,包括:协议、端口号等等。

同时参照《南京市交通局信息化数据库建设规范》。

2.3 硬件环境

描述所选用的硬件环境,各种机型,例如:服务器、工作站,应该分别描述。需要描述的内容可能包括:

●  机型;

●  主频;

●  内存容量;

●  磁盘容量;

●  特殊部件;

●  操作系统;

●  使用位置;

●  等等。

2.4 网络环境

网络结构的主要特点是:传输容量大,易实现双向传输,从理论上讲,一对光纤可同时传送150万路电话或2000套电视节目;频率特性好,在有线电视传输带宽内无需均衡;传输损耗小,可延长有线电视的传输距离,25公里内无需中继放大;光纤间不会有串音现象,不怕电磁干扰,能确保信号的传输质量。

同传统的CATV网络相比,其网络拓扑结构也有些不同:第一,光纤干线采用星形或环状结构;第二,支线和配线网络的同轴电缆部分采用树状或总线式结构;第三,整个网络按照光结点划分成一个服务区;这种网络结构可满足为用户提供多种业务服务的要求。随着数字通信技术的发展,特别是高速宽带通信时代的到来,HFC已成为现在和未来一段时期内宽带接入的最佳选择,因而HFC又被赋予新的含义,特指利用混合光纤同轴来进行双向宽带通信的CATV网络。

网络操作系统(NOS)是网络的心脏和灵魂,是向网络计算机提供服务的特殊的操作系统。它在计算机操作系统下工作,使计算机操作系统增加了网络操作所需要的能力。例如像前面已谈到的当在LAN上使用字处理程序时,用户的PC机操作系统的行为像在没有构成LAN时一样,这正是LAN操作系统软件管理了用户对字处理程序的访问。

网络带宽是指在一个固定的时间内(1秒),能通过的最大位数据。就好象高速公路的车道一样,带宽越大,好比车道越多。网络带宽作为衡量网络使用情况的一个重要指标,日益受到人们的普遍关注。它不仅是政府或单位制订网络通信发展策略的重要依据,也是互联网用户和单位选择互联网接入服务商的主要因素之一。

使用链路加密装置能为某链路上的所有报文提供传输服务。即经过一台节点机的所有网络信息传输均需加、解密,每一个经过的节点都必须有密码装置,以便解密、加密报文。如果报文仅在一部分链路上加密而在另一部分链路上不加密,则相当于未加密,仍然是不安全的。与链路加密类似的节点加密方法,是在节点处采用一个与节点机相连的密码装置(被保护的外围设备),密文在该装置中被解密并被重新加密,明文不通过节点机,避免了链路加密关节点处易受攻击的缺点。

优点 1、使用简单 每个终端用户不需要安装客户端使用起来方便不需要维护终端用户通过IE直接来访问。 2、安全性高细粒度安全控制。 能控制到应用程序支持按用户分配接入权限和访问权限。 特别适合合作伙伴之间的互联。每个终端不需要分配IP地址不产生虚拟网卡。

2.5 多种支撑环境开发要点

按开发阶段分类,有前端开发环境(支持系统规划、分析、设计等阶段的活动)、后端开发环境(支持编程、测试等阶段的活动)、软件维护环境和逆向工程环境等。此类环境往往可通过对功能较全的环境进行剪裁而得到。软件开发环境由工具集和集成机制两部分构成,工具集和集成机制间的关系犹如“插件”和“插槽”间的关系。

工具集:软件开发环境中的工具可包括:支持特定过程模型和开发方法的工具,如支持瀑布模型及数据流方法的分析工具、设计工具、编码工具、测试工具、维护工具,支持面向对象方法的OOA工具、OOD工具和OOP工具等;独立于模型和方法的工具,如界面辅助生成工具和文档出版工具;亦可包括管理类工具和针对特定领域的应用类工具。

集成机制:对工具的集成及用户软件的开发、维护及管理提供统一的支持。按功能可划分为环境信息库、过程控制及消息服务器、环境用户界面三个部分。

环境信息库:是软件开发环境的核心,用以储存与系统开发有关的信息并支持信息的交流与共享。库中储存两类信息,一类是开发过程中产生的有关被开发系统的信息,如分析文档、设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、过程模型、可复用构件等。

过程控制和消息服务器:是实现过程集成及控制集成的基础。过程集成是按照具体软件开发过程的要求进行工具的选择与组合,控制集成并行工具之间的通信和协同工作。

环境用户界面:包括环境总界面和由它实行统一控制的各环境部件及工具的界面。统一的、具有一致视感(Look & Feel)的用户界面是软件开发环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。

有以下功能:

(1)软件开发的一致性及完整性维护;

(2)配置管理及版本控制;

 (3)数据的多种表示形式及其在不同形式之间自动转换;

(4)信息的自动检索及更新;

(5)项目控制和管理;

(6)对方法学的支持。

3. 部件详细设计

这里所提及的软件部件,系指能够完成特定功能、相对独立的一些代码集合,它们可以是插件、组件、控件、函数、过程、子程序、动态连接库、等等。具体呈何种形态,取决于实际采用的开发工具和将要实现的软件结构。

按照合适的顺序,逐个描述软件部件的详细情况。描述的顺序可以是按层次横向进行描述,也可以是按模块纵向进行描述,总之描述的方式必须有利于读者理解软件结构。

每个部件采用一张软件部件表进行描述,软件部件表的格式见附表一,其中;

●  部件编号

软件部件的统一顺序编号;对于实行配置管理的软件开发项目来说,该编号必须

与该部件在配置管理中的编号相同。

●  部件名称

软件部件的正式英文名称,该名称是程序中使用的实际名称,必须符合国家相关软件命名标准。

●  所属子系统

指该部件所属的子系统;

对于不分为多个子系统的软件来说,不必填写该栏。

●  部件调用者

指调用该部件的部件(或界面参数)的编号和名称。

●  部件被调用者

指被该部件所调用的部件的编号和名称。

●  部件入口参数

指该部件入口数据类名称或者数据名称,以及对这些数据的描述;

如果部件没有入口参数,该栏为空。

●  部件出口参数

指该部件出口数据类名称或者数据名称,以及对这些数据的描述;

如果部件没有出口参数,该栏为空。

●  算法

指该部件的算法形式表示,如果很简单、或者不存在,也可以为空。

●  流程描述

指该部件的处理流程的详细表示或描述。

●  部件表示形式

指该部件完成开发后的最终表示形式,具体形式取决于开发工具和软件结构,表

示形式可能是:

n 插件、组件、控件,

n 函数、过程、子程序,

n 存储过程,

n 动态连接库,

n 等等。

●  运行环境

描述该部件所适合的运行环境,即说明该部件是针对何种运行环境所开发的;

可以直接描述运行环境,也可以描述运行环境的编号;

对于实行配置管理的软件开发项目来说,该描述必须与该部件在配置管理中的描

相同。

●  性能要求

指开发该部件时必须满足的专门要求,这些要求可以是:

n 精度

n 灵活性

n 响应时间

n 可重用性

n 等等。

提出的要求一般不宜超过3项,以排列的先后顺序表示优先级。

4. 词汇表

Java:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

Android:Android是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备。该平台由操作系统、中间件、用户界面和应用软件组成。 

Wifi:Wi-Fi是一种可以将个人电脑、手持设备(如PDA、手机)等终端以无线方式互相连接的技术。

USB:USB ,是英文Universal Serial BUS(通用串行总线)的缩写,而其中文简称为“通串线,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。

LAN:局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。

UI:UI即User Interface(用户界面)的简称。UI设计则是指对软件的人机交互、操作逻辑、界面美观的整体设计。好的UI设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由、充分体现软件的定位和特点。UI还有其它的意义,如Unit Interval,Univ of Iowa,Unlock Instruction,Urgent Interrupt。

API:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

CPU:中央处理器(英文Central Processing Unit,CPU)是一台计算机的运算核心和控制核心。CPU、内部存储器和输入/输出设备是电子计算机三大核心部件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成。差不多所有的CPU的运作原理可分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。 CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码,并执行指令。所谓的计算机的可编程性主要是指对CPU的编程。

AMD:作为一个规范,只需定义其语法API,而不关心其实现。AMD规范简单到只有一个API,即define函数。

5. 部件表格式

说明:如果软件不见使用一张表表述不完时,可以采用续表描述,但是必须注明是那张表的续表。

6. 界面表格式

说明:如果软件不见使用一张表表述不完时,可以采用续表描述,但是必须注明是那张表的续表。

相关推荐