软件设计说明书例.docx
- 文档编号:9007406
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:43
- 大小:32.09KB
软件设计说明书例.docx
《软件设计说明书例.docx》由会员分享,可在线阅读,更多相关《软件设计说明书例.docx(43页珍藏版)》请在冰豆网上搜索。
软件设计说明书例
案卷号00001
日期
软件详细设计说明书(例)
作者:
完成日期:
签收人:
签收日期:
修改情况记录:
版本号修改批准人修改人安装日期签收人
资料
1引言................................................................
3
1.1
编写目的.................................................................
3
1.2
范围.....................................................................
4
1.3
定义.....................................................................
4
1.4
参考资料.................................................................
4
2总体设计............................................................
5
2.1
需求规定.................................................................
5
2.2
运行环境.................................................................
5
2.3
基本设计概念和处理流程...................................................
6
2.4
结构.....................................................................
8
2.5
功能需求与程序的关系....................................................
11
2.6
人工处理过程............................................................
13
2.7
尚未解决的问题..........................................................
13
3接口设计...........................................................
13
3.1
用户接口................................................................
13
3.2
外部接口................................................................
14
3.3
内部接口................................................................
14
4运行设计...........................................................
18
4.1
运行模块组合............................................................
18
4.2
运行控制................................................................
18
4.3
运行时间................................................................
18
5系统数据结构设计...................................................
19
5.1
逻辑结构设计要点........................................................
19
5.2
物理结构设计要点.........................................................
1
5.3
数据结构与程序的关系.....................................................
4
6系统出错处理设计....................................................
4
6.1
出错信息.................................................................
4
6.2
补救措施.................................................................
5
6.3
系统维护设计.............................................................
5
资料
1引言
1.1编写目的
随着证券交易电子化程度的不断提高,券商对于各种业务提出了新的要求,为了满足券
商的发展需求,更好的为客户提供服务,现结合原有各版本的证券交易软件的优点和特点,
开发一套采用Client/Server结构的证券交易软件管理系统(SQL版)。
本系统从底层予以
优化,使整个系统的运行速度得到较大提高,通过重新优化数据库内部结构,使系统的可扩
充性得到极大提高。
本说明书给出SQL版证券交易系统的设计说明,包括最终实现的软件必须满足的功能、性能、接口和用户界面、附属工具程序的功能以及设计约束等。
目的在于:
为编码人员提供依据;
为修改、维护提供条件;
项目负责人将按计划书的要求布置和控制开发工作全过程;
项目质量保证组将按此计划书做阶段性和总结性的质量验证和确认。
本说明书的预期读者包括:
项目开发人员,特别是编码人员;
软件维护人员;
技术管理人员;
执行软件质量保证计划的专门人员;
参与本项目开发进程各阶段验证、确认以及负责为最后项目验收、鉴定提供相应报告的有关人员。
合作各方有关部门的复杂人;项目负责人和全体参加人员。
资料
1.2范围
说明:
a.待开发的软件系统的名称:
模拟股票交易系统
b.列出本项目的任务提出者、开发者、用户以及将运行该项软件的单位。
1.3定义
列出本文件中用到的专门术语的定义和缩写词的原词组。
本报告用到的术语符合国家标准《软件工程术语(GB/T11475-1995)》。
1.4参考资料
列出要用到的参考资料,如:
a.本项目的经核准的计划任务书或合同、上级机关的批文;
b.属于本项目的其他已发表的文件;
c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。
列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的
来源。
资料
2总体设计
2.1需求规定
说明对本系统的主要的输入输出项目、处理的功能性能要求,详细的说明可参见《需求
分析说明书》。
2.2运行环境
简要地说明对本系统的运行环境(包括硬件环境和支持环境)的规定,详细说明参见《需
求分析说明书》。
数据库服务器
奔腾Pro
内存128MB以上
硬盘9GB
100M网卡
应用服务器
奔腾Pro
内存64MB以上
硬盘4GB
100M网卡
网络配置
100M/10M
工作站(柜台)
P100以上
内存8MB以上
硬盘1G以上
100M/10M网卡
软件
资料
操作系统
WindowsNT4.0以上
数据库管理系统
SQLServer2005
相关软件工具
WindowsNTWorkstation/WindowsNTserver
Windows2000Professional/Server
开发工具
平台:
Windows95/98、WindowsNT、Windows2000
开发工具:
visualstidio2005sp1,C#.Net
测试环境
Windows31、Windows95/98、WindowsNT、Windows2000
2.3基本设计概念和处理流程
说明本系统的基本设计概念和处理流程,尽量使用图表的形式。
营业部系统一共有四个对象,即客户、员工、市场和银行,市场的概念是交易所的细化,
比如上海证券交易所的A股和B股就是两个市场,有了市场的概念我们就可以把交易所这个
概念细化,并使同一个市场的共性更突出。
银行则通过银证转账业务介入,并成为营业部系
统不可或缺的组成部分。
上述四个对象通过一些业务流程进行相互操作从而形成整个交易活动。
因此整个系统模
资料
型可以表述为图2-1
设计时需要将营业部系统所使用的各种信息分为描述四个对象的信息和描述业务流程
的信息。
由于四个对象相对而言是一种稳定型信息,而业务流程则较易变化,且营业部之间
差异很大,因此应将四个对象尽量定型,而将各种业务流程尽可能做成组件,以便营业部可
根据实际需求组装成适合自己的系统。
根据以上思想,在设计对象模型时应充分考虑到可扩展性,尽量做到抽象化、参数化,从而使对象需求变化时不致影响系统结构。
资料
图2.1
2.4结构
用一览表及框图的形式说明本系统的系统元素(各层模块、子程序、公用程序等)的划
分,扼要说明每个系统元素的标识符和功能,分层次地给出各元素之间的控制与被控制关系。
本系统采用c/s模式的3层结构
按照不同会话来划分的话可以分为3大系统模块
资料
委托服务
系统监控
接口处理子系统
系统维护子系统
数据转换
数据库
日终管理
银证转账
局域网
系统管理
资金管理柜台管理
报表管理查询管理
图2-2交易系统体系结构
客户端登陆模块:
资料
最关键的交易系统模块结构图如下:
资料
pi
/
p
c
T
checkUserMoneyCount(stockData)
OrcheckUserStockCount
要通过数据访问层来访问用户表
在撮合队列中处理并且返回处理结果
tradeInQueue(stockData
newstockData)
Success
unSuccess
upDateUserInfo
(stockData)upDateDelegate
通过调用ADOInfo(stockDat
层工厂来访问a)
不同的数据库同左更新的是
(更新用户表委托临时表
)
buyStock
sellStock
quoteStock
Cansel
Delegate
Rule
s/
Mod
el
规范
买卖
指令
传输
的数
据结
adoFactory
通过该模块可动态建立不同数据
库的连接Orical、sql
server,access
数据访问层access
access.postDate(stockData)
将数据更新到数据库
数据访问层sqlserver
Sqlserver。
postDate(stockData)
构必
须是
stock
Data
形式
Chec
k
资料
股票信息发布
经过修改我认为每次由客户端每5秒去查询一次服务器更新信息不可取,因为这会加重
服务端和客户端的负担,特别是服务器端的运算。
修改后实现变更为:
用户一开始登陆后获得一次服务器的全部股票当前信息。
而服务器
端每次发生交易后,给每一个在线用户发送当前交易需要更新的股票信息,这样就减轻了客
户机和服务端的信息
客户端
第一次登陆发送请求获得所有
股票信息,并画分时线图
Stockid
Stockprice
TCP/IP
服务器每次交易返回最新信息
资料
2.5功能需求与程序的关系
(该关系由需求分析报告编写者根据结构图说明)
本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:
获取并发送
绘制分时
MD5加密解
发送用户
接受并识别
调用数据层
撮合交易
服务器返回
用户请求
图
密
交易请求
用户请求
查询
客户端信息
用户登陆
√
√
√
√
查看用户
√
√
√
持仓
实时指
√
√
√
数
交易委托
√
√
√
√
√
√
√
取消交易
√
√
√
√
√
√
2.6人工处理过程
说明在本软件系统的工作过程中不得不包含的人工处理过程(如果有的话)。
没有完成股票管理的模块设计,所以股票必须从数据库后台添加
如果有新股发行,还必须添加有关股票的交易队列
2.7尚未解决的问题
说明在概要设计过程中尚未解决而设计者认为在系统完成之前必须解决的各个问题。
3接口设计
3.1用户接口
说明将向用户提供的命令和它们的语法结构,以及软件的回答信息。
资料
向用户提供简单易用的UI,以及帮助文档。
客户端将提供以下功能
首先弹出用户登陆框,供用户输入用户名和密码
菜单项提供个股查询和分时图按钮
菜单栏下是选项卡,提供股票实时信息和个股分时图栏
提供用户交易界面和交易按钮以及查看用户盈亏按键
3.2外部接口
说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持软件
之间的接口关系。
采用基于正确公开标准的部件和技术以确保最大限度的协作能力以及与第三方系统与部件集成的简便性。
这类标准包括但不限于以下几种:
网络协议与标准(TCP/IP,HTTP,SSL,etc)
语言(SQL,C#.net,etc.)
数据库连接性(ADO。
net)
3.3内部接口
说明本系统之内的各个系统元素之间的接口的安排。
逻辑层和数据访问层通过以经的stockDataModel接口,来限定访问stockData类型的
资料
数据
客户端通过调用buyStock(stockData)和sellStock(stockData)来访问逻辑层,在
这个函数中包含了访问逻辑层的接口dealTransaction(stockData)
通过AdoFactory访问不同的数据库
客户端登陆协议
D(二字节)+(客户名字长度)(4字节)+(客户名字)+(客户密码长度)(4字节)+(客户密
码);
客户买卖协议
B(二字节)+(股票ID)(4字节)+(股票数量)(4字节)
S(二字节)+(股票ID)(4字节)+(股票数量)(4字节)
查询交易信息并返回给客户端
C(二字节)
具体有拆包解包的类
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceProjectCenterTradingSys
{
publicclassProtocal
{
privatebyte[]messagebuffer;
privatebyte[]messagelength;
publicbyte[]messagebag;
//该函数是将字符串转换为字节数组
资料
publicbyte[]StringtoByte(stringstringInfo)
{
messagebuffer=System.Text.ASCIIEncoding.ASCII.GetBytes(stringInfo);
returnmessagebuffer;
}
//该函数将整型转换为个字节
publicbyte[]InttoByte(intnumber)
{
messagelength=BitConverter.GetBytes(number);
returnmessagelength;
}
//将浮点型转换为个字节
publicbyte[]DoubletoByte(doubleprice)
{
byte[]pricebyte=BitConverter.GetBytes(price);
returnpricebyte;
}
//合并一个字符串(字节数组)和他的长度作为一个包
publicbyte[]Combinarray(byte[]messle,byte[]messinfo)
{
messagebag=newbyte[messle.Length+messinfo.Length];
intindex;
for(index=0;index messagebag[index]=messagelength[index]; for(intindex1=0;index1 messagebag[index+index1]=messagebuffer[index1]; 资料 returnmessagebag; } //解包头 publicbyte[]BagHead(charhead) { byte[]headbyte=BitConverter.GetBytes(head); returnheadbyte; } //读包头 publiccharDeBagHead(byte[]buffer) { charheadinfo=BitConverter.ToChar(buffer,0); returnheadinfo; } //该函数为解包信息为字符串! publicstringdeMessgeBag(byte[]Messagebag,intstart,outintnext) { next=BitConverter.ToInt32(Messagebag,start); stringmessage=System.Text.ASCIIEncoding.ASCII.GetString(Messagebag,start+4, next); returnmessage; } 资料 4运行设计 4.1运行模块组合 说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运 行所历经的内部模块和支持软件。 4.2运行控制 说明每一种外界的运行控制的方式方法和操作步骤。 4.3运行时间 说明每种运行模块组合将占用各种资源的时间。 资料 5系统数据结构设计 5.1逻辑结构设计要点 给出本系统内所使用的每个数据结构的名称、标识符以及它们之中每个数据项、记录、 文卷和系的标识、定义、长度及它们之间的层次的或表格的相互关系。 客户端类图: windowForm: Form Private: userLogDialog userNametextBox userPasswordtextBox userlogOKbotton userlogCanselbutton tabPage MenuBar stockRealtimeGraphitem stockQuoteDialog dataGridView userBuyStockID userBuyStockcount userBuyStockprice userBuyStockButton ...sell userStocklistView 资料 userStockLookButton sendMestoServer(stringInfo) //该函数用来向主机发送请求 (接上) MD5encrypt(string) //以下都要通过sendMestoServer //向主机发送信息 logOK_press(event,handle); stockQuoteitem_press(e,h); buyStockButton_press(e,h); sellStockButton_press(e,h); stocklookButton_press(e,h); ////// 该函数调用drawPicture画图 stockRealtimeGraphitem_press(e,h ) 资料 ClassRealTimeGraph Private stockID //动态数组存储股票价格 ArrayListstockPrice[] Public: //在windowform类中recievemess 后更新当前价格,即在数组后添 加一项最新价格 updatePrice(price,sotckPrice) drawPicture(stockID,stockPric
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件设计 说明书