选房摇号程序 系统分析与设计.docx

上传人:b****4 文档编号:27102644 上传时间:2023-06-27 格式:DOCX 页数:17 大小:155.91KB
下载 相关 举报
选房摇号程序 系统分析与设计.docx_第1页
第1页 / 共17页
选房摇号程序 系统分析与设计.docx_第2页
第2页 / 共17页
选房摇号程序 系统分析与设计.docx_第3页
第3页 / 共17页
选房摇号程序 系统分析与设计.docx_第4页
第4页 / 共17页
选房摇号程序 系统分析与设计.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

选房摇号程序 系统分析与设计.docx

《选房摇号程序 系统分析与设计.docx》由会员分享,可在线阅读,更多相关《选房摇号程序 系统分析与设计.docx(17页珍藏版)》请在冰豆网上搜索。

选房摇号程序 系统分析与设计.docx

选房摇号程序系统分析与设计

第一节选房摇号程序需求说明书

1.引言(说明编写目的、有关开发的基本情况、本说明书使用的专门术语以及有关的参考文献)

受××房地产公司委托,为其销售策划部门开发客户选房随机抽签程序,该程序能将所有已登记的欲购房的客户进行随机排序,确定其对应的选房序号。

2.任务概述

目标(包括系统的开发意图、应用目标和作用范围)

选房抽签程序能保证对所有登记用户进行随机排序,即指定每个客户的选房顺序号,同时不能出现重复、遗漏的现象,并能保证在各种异常条件下(如断电、打印故障)程序能够正常运行。

本选房抽签程序供××公司销售策划部使用,除了从销售部获取登记客户信息外,该程序不与我公司已有的其他信息系统信息交互。

用户特点(说明本系统最终用户的特点以及对操作人员、维护人员的教育水平和技术专长要求)

操作人员可以为公司邀请的抽签嘉宾、公司内部人员或制定的其他人员,总体上说操作人员可能不具备专门的计算机操作技能,因此需要程序具有操作的简便性。

维护人员需要熟悉Office软件操作,特别是Excel的操作,具有普通的电脑操作能力。

假定和约束(说明对开发工作的有关限制,例如经费限制、开发期限等)

没有,省略。

3.需求规定

对功能的规定*(逐项定量和定性的说明对软件提出的功能要求)

(1)程序能够导入已有的客户登记信息。

客户登记表为一个Excel文件的形式,其中登记信息为客户编号、客户姓名、身份证、联系电话、销售顾问、备注。

(2)程序能够为登记表中每个客户编号指定其对应的选房顺序号,同时需要保证产生的选房顺序号是真正随机的。

(3)客户选房顺序号的确定,采取分批次的方式进行,即每轮抽出指定数目的客户选房序号,如此循环,直到所有的用户均被抽出为止。

(4)每个客户编号均只能有且仅有一个选房序号,不能出现多个和遗漏的情况;

(5)对已产生的结果能进行及时的保存,在各种异常情况产生时,能够保证程序可以恢复,并能继续进行。

(6)当操作人员不按照正常的流程产生某批次的抽签结果时,该抽签结果被视为无效的抽签结果,程序能对无效轮次的抽签结果能够进行删除。

(7)抽签完全结束后,能够产生一张汇总信息表。

对性能的规定

3.2.1输入/输出要求

输入数据为客户登记信息,存储在Excel表格中。

每轮输出结果储存在数据库中和csv文件中。

抽签结束后的结果存储在数据库和Excel文件中。

3.2.2数据管理能力要求

需要处理的数据通常在1000条记录左右,考虑到扩展性,将数据管理能力设计在10万条记录的范围。

3.2.3故障处理要求

在抽签过程中,当出现打印机异常时,更换打印机后能继续打印抽签的轮次结果;

抽签过程中,出现断电、电脑异常等情况后,恢复异常后可以继续进行抽签,以前的抽签结果仍然有效。

3.2.4其他专门要求

4.运行环节规定

设备(软件需要的硬件设备和设备要求)

程序能够在普通PC机(奔腾2代以后的PC机)上正常运行。

支持软件(操作系统,DBMS,测试软件等)

Windows98及以后版本的操作系统

桌面型数据库管理系统,如下列DBMS之一:

Access、Paradox等。

接口(同其他软件的接口、数据通信协议)

控制(控制软件运行的方法以及控制信号和信号来源)

如对数据的采集和处理需要特殊的设备或者特殊的变换处理,可以增加数据要求说明部分的内容。

第二节绘制数据流程图步骤

第一步识别系统的输入和输出,确定系统的顶层图

面向数据流的分析应首先确定系统的边界。

从××房地产公司已有的客户管理系统中导入软件需要的数据,在抽签过程中产生每轮次的结果,该轮次结果需要打印并提交给相应的操作员,抽签彻底结束后,产生抽签的结果表并提供给销售部或策划部。

因此可以确定,抽签程序的外部实体为“客户管理系统”,“操作员”,“销售或策划部”。

由此可以确定系统的顶层流程图

 

第二步根据主要的功能划分,确定0层图

当数据流的组成发生变化时,就需要添加一个“加工”。

首先应分析主要的数据流,然后再补充相关的细节,如出错处理等,

其次绘制数据时还应揭示相关的数据存储。

最后,检查系统的边界,补漏和删去不被使用的数据流

根据需求说明和了解的业务流程,将抽签软件分为“输入数据检验”、“单轮抽签”、“单轮结果打印”和“抽签结果汇总”四个主要的“加工”,得到0层图如下

第三步对复杂加工进行分解

分解加工时,采用“由外向内里”、“自顶向下”的方式。

如果在加工内部还有数据流,可将该加工分解成若干个子加工,用这些数据流把子加工连接起来。

将加工2单轮抽签进行分解,得到加工2的下层分解图,即2层-2图

 

将加工3打印结果进行分解,得到加工3的下层分解图,即2层-3图

 

对加工随机抽取数据进行分解,得到加工的下层分解图,即3层-图

 

第四步,检查修改和完善

第三节数据字典

一、数据流

数据流条目包含如下内容:

数据流编号、数据流名称、[简述][别名]、符号名称、组成(数据结构)、数据类型、长度、取值范围、[数据流量][峰值][来源][去向][注释]

F1客户信息

编号:

F1名称:

客户信息

简述:

抽签程序从外部系统——销售管理系统获取的参与本次选房抽签的客户基本信息,是抽签程序的输入,

组成:

F1并非最基本的数据流,它由客户基本信息和出错数据两个部分组成。

数据类型:

参见更基本的数据信息和。

来源:

销售管理系统(外部实体)

去向:

抽签程序(加工0)

客户基本信息

编号:

名称:

客户基本信息

简述:

抽签程序从外部实体——销售管理系统获取的参与本次选房抽签的客户基本信息,是抽签程序的输入。

组成:

客户编号、客户姓名、身份证、联系电话、销售顾问、备注

数据类型:

客户编号字符串类型字符个数最大为10

客户姓名字符串类型字符个数最大为50

身份证字符串类型字符个数最大为100

联系电话字符串类型字符个数最大为100

销售顾问字符串类型字符个数最大为20

备注字符串类型字符个数最大为200

来源:

销售管理系统(外部实体)

去向:

检验数据(加工1)

出错数据

编号:

名称:

出错数据

简述:

当抽签程序从外部实体——销售管理系统导入参与本次选房抽签的客户基本信息时,如果某些记录不能成功则这些数据将形成出错数据,并给出出错的原因。

组成:

+出错信息

出错信息描述不能导入该项数据的原因。

数据类型:

中包含数据的数据类型省略,具体内容参见数据流

出错信息字符串类型字符个数最大为50

来源:

检验数据(加工1)

去向:

销售管理系统(外部实体)

F2所有抽签结果

编号:

F2名称:

所有抽签结果

简述:

抽签程序产生的最终的抽签结果信息,是对所有抽签轮次结果的汇总。

是系统的输出之一。

该数据流是一个二维表格的形式,表中每一行为客户的基本信息和他所对应的选房顺序号。

表中的行数为所有参与抽签的客户数。

组成:

客户编号、选房序号客户姓名、身份证、联系电话、销售顾问、备注(+选房顺序号)

数据类型:

中包含数据的数据类型省略,具体内容参见数据流

选房顺序号整数类型取值范围[1,100000]

来源:

汇总结果(加工1)

去向:

销售或策划部(外部实体)

F3单轮抽签结果

编号:

F3名称:

单轮抽签结果

简述:

抽签程序产生的中间轮次的抽签结果信息,是系统的输出之一。

该数据流是一个二维表格的形式,表中每一行为客户的基本信息和他所对应的选房顺序号。

表中的行数为所有每轮抽取的客户数。

组成:

抽签轮次客户编号、选房序号、客户姓名、身份证、联系电话、销售顾问、备注(+选房顺序号+抽签轮次)

数据类型:

中包含数据的数据类型省略,具体内容参见数据流

选房顺序号整数类型取值范围[1,100000]

抽签轮次整数类型取值范围[1,抽签总人数/每轮抽签数之上确界]

F4选房顺序号

编号:

F4名称:

选房顺序号

简述:

由加工产生的选房顺序号集合,是一个一维表格,表格中元素个数为每轮的抽签数。

产生选房顺序号时,需要参考当前的抽签轮次。

组成:

选房序号

数据类型:

选房顺序号整数类型取值范围[1,100000]

F5抽取的客户数据

编号:

F5名称:

抽取的客户数据

简述:

由加工产生的输出数据流,通过随机选取后得到的客户数据信息,尚未加入选房顺序号。

该数据流用于和数据流F4一起产生数据流F3,是一个二维表格的形式,表格的行数为每轮抽取的

组成:

与相同

数据类型:

与相同

来源:

加工

去向:

加工

二、(数据项/数据条目)

三、数据存储

数据存储包含如下内容:

数据存储编号、数据存储名称、[简述][别名]、符号名称、组成(数据结构)、数据类型、[存取峰值]、组织方式、[用途][注释]

D1待抽签数据

编号:

D1名称:

待抽签数据

简述:

检验合格后得到的用于客户抽签的数据。

组成:

与相同

数据类型:

与相同

存取峰值:

组织方式:

可以按照客户编号进行索引,也可以不需要索引;

D2单轮抽签结果

编号:

D2名称:

单轮抽签结果

简述:

存储每轮抽签后的结果。

组成:

与F3相同

数据类型:

与F3相同

存取峰值:

组织方式:

每轮抽签得到的结果附在已有结果之后,无索引

D3配置信息

编号:

D3名称:

配置信息

简述:

这是一个组合类型的存储,由和组成。

组成:

+

数据类型:

参见和

存取峰值:

组织方式:

无索引

当前抽签轮次

编号:

名称:

当前抽签轮次

简述:

整个抽签过程需要多轮才能完成。

此存储表示当前正在抽签的轮次,用于辅助产生该轮次的选房顺序号。

组成:

抽签轮次

数据类型:

抽签轮次正整数

存取峰值:

组织方式:

无索引

每轮抽签数

编号:

名称:

每轮抽签数

简述:

表示每轮抽签时,抽出的编号个数

组成:

每轮抽取个数

数据类型:

每轮抽取个数正整数

存取峰值:

组织方式:

无索引

D5抽取数据集合

编号:

D4名称:

抽取数据集合

简述:

每轮抽签时将随机抽取的某条客户记录放置在抽取数据集合中,当抽取的数据多于每轮中的数据时,数据将按照队列的方式进行替换。

抽取数据集合可以看作是存储抽出数据的队列。

组成:

与F5相同

数据类型:

与F5相同

存取峰值:

组织方式:

无索引

四、加工说明

数据存储包含如下内容:

加工编号、加工名称、激发条件、加工处理逻辑、执行频率、优先级,输入、输出。

1.检验数据

加工编号:

1加工名称:

检验数据

激发条件:

将外部数据导入系统时

处理逻辑:

检查输入的每条客户记录所包含的信息是否完整,若不完整将不导入该条数据,并给出原因;

检查是否有重复的数据,若有则只导入一条记录,并将该条记录作为重复记录返回。

执行频率:

一次抽签活动只执行一次

输入:

销售系统提供的客户登记表

输出:

待抽签数据

2.单轮抽签

加工编号:

2加工名称:

单轮抽签

描述:

被分解为了加工,,和。

随机抽取数据

加工编号:

加工名称:

随机抽取数据

描述:

被分解为了加工2.1.1,和。

2.1.1随机抽取1条数据

加工编号:

2.1.1加工名称:

随机抽取1条数据

激发条件:

每轮抽签过程中

处理逻辑:

利用随机函数,产生一个随机数,从待抽签数据中获取一条客户信息,并将其中的客户编号传递给加工2.1.2,将客户信息添加到抽取数据集合中。

执行频率:

每轮抽签过程中需要循环调用

输入:

待抽签数据

输出:

抽取数据集合中的一条

2.1.2滚动显示

加工编号:

2.1.2加工名称:

滚动显示

激发条件:

每轮抽签过程中

处理逻辑:

将输入的客户编号,显示在屏幕上

执行频率:

每轮抽签过程中需要循环调用

输入:

客户编号

输出:

屏幕中显示的客户编号

2.1.3更新抽取数据

加工编号:

2.1.3加工名称:

更新抽取数据

激发条件:

每轮抽签过程中

处理逻辑:

按照队列替换方式,更新抽取数据集合中的数据

执行频率:

每轮抽签过程中需要多次调用

输入:

每轮抽签数、抽取数据集合

输出:

抽取数据集合

产生选房序号

加工编号:

加工名称:

产生选房序号

激发条件:

每轮抽签需要调用一次

处理逻辑:

根据当前抽签的轮次和每轮抽签数,产生当前轮抽出的客户的选房序号。

同时更改抽签的轮次。

执行频率:

每轮抽签均需要执行一次

输入:

当前的抽签轮次和每轮抽取的用户数

输出:

选房顺序号,更改后的抽签轮次。

生成本轮抽签结果

加工编号:

加工名称:

生成本轮抽签结果

激发条件:

每轮抽签结束

处理逻辑:

将选房顺序号和客户基本信息进行合并,得到每轮的抽签结果。

执行频率:

每轮抽签均需要执行一次

输入:

选房顺序号和抽取的用户信息

输出:

当前轮的抽签结果

处理配置数据

加工编号:

加工名称:

处理配置数据

激发条件:

抽签开始前,进行初始化时

处理逻辑:

直接指定程序的配置参数。

执行频率:

通常仅需要执行一次

输入:

每轮抽签数

输出:

每轮抽签数

3.打印结果

加工编号:

3加工名称:

打印结果

描述:

被分解为了加工,。

获取指定轮次的抽签结果

加工编号:

加工名称:

获取指定轮次的抽签结果

激发条件:

每轮抽签结束

处理逻辑:

从单轮抽取结果汇总中,根据指定的轮次,得到相应轮次的抽取结果

执行频率:

每轮抽签结束后需要调用一次

输入:

单轮抽取结果

输出:

获取指定轮次的抽签结果

显示和打印抽签结果

加工编号:

加工名称:

显示和打印抽签结果

激发条件:

每轮抽签结束,或者需要显示已有抽出的轮次结果时

处理逻辑:

对单轮抽取结果进行显示和打印处理

执行频率:

每轮抽签结束后需要调用一次

输入:

单轮抽取结果

输出:

单轮抽取结果

4.汇总结果

加工编号:

4加工名称:

汇总结果

激发条件:

抽签结束

处理逻辑:

检查抽签是否结束,若结束,将存储抽签结果的文件中的所有数据取出,按照选房序号从先到后,将客户信息进行排列,并输出到Excel文件中;若未结束,不进行任何操作。

执行频率:

通常为一次

输入:

所有轮次的抽签结果

输出:

汇总表(Excel文件形式)

第四节概要设计

说明程序系统的设计考虑:

包括基本处理流程、组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理等,为详细设计提供基础。

(主要内容为:

模块的组织结构、模块间的关系以及数据库与数据结构的说明)

一、根据流程图得到模块结构图

对于“数据导入模块”

名称

输入

输出

1

客户数据文件路径

客户数据文件中的所有信息

2

单条客户记录

校验结果

3

合格的客户数据

对于“抽签模块”

以此流程图为参考

名称

输入

输出

1

轮次

轮次对应的抽签结果

2

客户信息

3

轮次

选房序号

4

每轮抽取数

每轮抽取数

5

轮次对应的抽签结果

 

概要设计与详细设计说明书

说明对程序系统的设计考虑:

包括基本处理流程、组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理等,为详细设计提供基础.

引言

编写目的、背景,需要特别说明的定义和有关的参考资料(省略不写)

v总体设计

尽可能用图表说明系统的基本设计概念、处理流程、系统结构的组成,各项功能的实现同各个模块的分配关系,尚未解决的问题。

v接口设计(用户接口、外部接口、内部接口)

›用户接口:

说明向用户提供的命令和其语法结构以及软件系统的回答

›外部接口:

本系统软件和硬件的接口和各支持软件的接口

›内部接口:

系统内各个模块之间的接口和各种控制接口,即总体设计中定义的模块关系

总体的模块结构图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1