房屋租赁系统详细设计.docx
《房屋租赁系统详细设计.docx》由会员分享,可在线阅读,更多相关《房屋租赁系统详细设计.docx(21页珍藏版)》请在冰豆网上搜索。
房屋租赁系统详细设计
学生住宿服务系统详细设计说明书
1.引言
简单的房屋租借已经不能满足市场经济的快速发展和学生对于房屋租借的需求。
如何利用先进的管理手段,提高房屋租赁管理水平,是当今社会所面临的一个重要课题。
1.1编写的目的
A.指导开发人员需求分析以及后续开发的输入和输出的需要;
B.面向的使用人员主要是:
a.房主b.学生
C.使用户和软件开发者双方对该软件的初始规定有一个共同的理解,规定和控制项目开发的内容,保证本项目的需求分析活动在受控状态下进行,在进行软件开发前,明确本系统应达到的目标,对系统目标做出完整、准确、清晰、具体的要求。
保证本需求分析的结果能够完整、无遗漏地反映本系统的要求。
1.2背景
A.待开发的系统的名称:
学生住宿服务系统
B.本项目的任务提出者:
xx学校
开发者:
工程师
用户:
学生,房主
C.该系统同其他系统或其他机构的基本的相互来往关系:
该软件系统与操作系统、SQLServer数据库管理系统。
1.3定义
1.4参考资料
《软件工程》张海藩编著,清华大学出版社,2006年10月版,北京
《房屋租赁系统详细设计报告》
《总体设计模板(国家标准)》
房屋租赁系统的可行性分析,开题报告;
软件需求说明书,软件可行性分析说明说,软件总体设计说明书等国际开发标准。
网上一些类似比较完整的系统,人事管理系统,企业一些其他的系统的设计理念,好的报告分析。
2.系统的结构
3.注册设计说明
3.1模块描述
这一部分程序模块是完成用户注册的。
在该模块里包括房主信息、学生信息和房屋信息。
该部分程序为不常驻内存,并且是顺序执行的。
3.2功能
IPO表
系统:
学生住宿服务系统
作者:
软件1113班
模块:
注册
日期:
2012年12月
用户如果想要注册,则按要求房主需要输入:
姓名、地址、电话号码;学生需要输入:
姓名、现住址、电话号码、出生日期、性别。
完成注册后,学生和房主就可以登陆系统了。
调用:
无
被调用:
无
输出:
房主的ID
学生的ID
输入:
房主需要输入:
姓名、地址、电话号码
学生需要输入:
姓名、现住址、电话号码、出生日期、性别
处理:
生成学生信息表和房主信息表
3.3性能
对精度没有要求,但是对时间上要求还是要响应时间短,一般为1-2秒,可以让更多的人来注册此系统。
网页还要具有输入出错处理能力和提示选择功能
3.4输入项
输入项要求输入用户的基本信息,房主要输入姓名、地址、电话号码和密码;学生要输入:
姓名、现住址、电话号码、出生日期、性别和密码。
3.5输出项
输出项为房主和学生的ID,ID是系统分配的唯一身份标识,能让房主和学生登入系统。
3.6设计方法(算法)
当用户按下注册按钮时,系统执行
privatevoidRegister()函数。
3.7流程逻辑
在程序开始时,先判断是学生还是房主,然后给他们赋以不同的功能。
其流程图如下:
3.8接口
由于该程序块是没有注册系统的第一个模块,所以没有上层程序,它的下层程序为用户登陆模块。
与该模块关联的数据结构有房主信息表,房屋信息表。
所调用的方式都是函数调用。
3.9存储分配
房主和学生分别存储在房主信息和学生信息中。
房主信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
ID
Varchar(10)
√
密码
varchar(10)
学生信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
出生日期
datetime
性别
Char
(2)
ID
Varchar(10)
√
密码
Varchar(10)
3.10注释设计
用/*……*/作多行注释,用//作单行注释
3.11限制条件
用户的系统不支持本系统,或者系统响应时间太长,用户放弃注册。
3.12测试计划
测试计划:
碰到了相同姓名的用户能否区分
输入数据:
相同的姓名
预期结果:
系统输出不同的ID
进度安排:
1个星期
设备条件、驱动程序:
一般情况即可,无特殊要求。
3.13尚未解决的问题
用户同时段注册人数太多,系统无法运行。
系统运行中途发生重大错误的数据恢复。
4.登陆设计说明
4.1模块描述
这部分程序就是为了完成用户的登陆的。
用户登陆后,系统会判断用户的身份是房主还是学生。
登陆成功后尽享房主和学生的相应操作,登陆失败则重新进行登陆操作或者退出登录系统。
该部分程序为不常驻内存,并且是顺序执行的。
4.2功能
用户登录主要是针对用户可以登录系统的凭证,用户输入系统分配的唯一ID和密码方可进入系统进行相应的操作。
房主登陆后可以添加新的可租用房屋信息和修改房屋属性;学生登陆后可以进行查询系统房屋信息的操作。
IPO表
系统:
学生住宿服务系统
作者:
软件1113班
模块:
登陆
日期:
2012年12月
调用:
无
被调用:
无
输出:
房主信息和学生信息
输入:
房主的ID和密码或者学生的ID和密码
处理:
添加新的可租用房屋信息、修改房屋属性和查询房屋信息
4.3性能
该部分主要是用于用户登陆系统,所以对精读要求不高,但是对于时间特性要求较高,因为登录时间短,用户才能对进入本系统有耐心而不至于因为每次登陆时间过长而放弃使用本系统。
因此在此段程序里,从数据库里查询房主信息和学生信息的时候可以用存储过程,以节约时间。
4.4输入项
房主的ID和密码或者学生的ID和密码,用于检验用户的身份是学生还是房主,已进行相应的操作。
4.5输出项
用户基本信息,如姓名、地址、电话号码等,具体字段信息参考概要设计系统数据结构设计。
4.6设计方法(算法)
当用户按下登录按钮时,
系统执行privatevoidEnter()函数.
函数内部执行
privatevoidCheck()验证身份。
4.7流程逻辑
4.8接口
由于该程序块是用户登入系统的第一个模块,所以没有上层程序,但是它的下层程序有两个:
一个是更新房屋信息,一个是学生查询。
与该模块关联的数据结构有房主信息表,房屋信息表。
所调用的方式都是函数调用。
4.9存储分配
房主信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
ID
Varchar(10)
√
密码
varchar(10)
学生信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
出生日期
datetime
性别
Char
(2)
ID
Varchar(10)
√
密码
Varchar(10)
4.10注释设计
用/*……*/作多行注释,用//作单行注释
4.11限制条件
在该程序中,当用户不记得其用户名或密码则不能进行登陆。
用户不能自定义其ID为自己喜欢的名称。
对于不同的用户,不能操作其他用户的功能。
能房主只能进行更新房屋信息,学生只能进行查询。
4.12测试计划
测试计划:
用户密码输入错误能否进入系统
输入数据:
错误的密码
预期结果:
系统提示密码输入错误
进度安排:
1个星期
设备条件、驱动程序:
一般情况即可,无特殊要求。
4.13尚未解决的问题
如是用户忘记了ID和密码就不能登陆系统了。
5.学生查询设计说明
5.1模块描述
该部分程序是为了帮助学生查询本系统中有的房屋信息,让学生挑选满意的房屋,如,合适的房租,适当的离校距离等。
该部分程序为不常驻内存,并且是顺序执行的。
5.2功能
该部分的功能实现的是学生的查询房屋的信息,学生根据房屋的地址、类型(单间/套间)、适合住宿的人数、房租以及现在是否可以出租来选择自己自己想要租住的房屋。
学生可以再搜寻到满意的房屋后向系统提交租房请求。
IPO表
系统:
学生住宿服务系统
作者:
软件1113班
模块:
学生查询
日期:
2012年12月
处理:
查询具体的房屋信息,并提交选定的房屋信息给系统已完成租房请求
输出:
学生选定的房屋信息
输入:
房屋信息
被调用:
无
调用:
无
5.3性能
由于这些程序是对数据库的操作,所以在精度上没有过多的要求,所要求的就是对时间特性的,要求学生查询的房屋信息能快速的显示出来,并且房屋的信息能够及时更新。
5.4输入项
输入项主要是包括对房屋的地址、类型(单间/套间)、适合住宿的人数、房租以及现在是否可以出租的选择,学生依据自己感兴趣的房屋类型来选择自己喜欢的相应的房屋。
5.5输出项
输出的是学生选定的具体某一个房屋的基本信息,包括该房屋的房屋地址、类型(单间/套间)、适合住宿的人数、房租、房主的ID以及现在是否可以出租,在租房请求中提交给系统,以让系统来进行相应的会面安排。
5.6设计方法(算法)
当学生按下查询按钮时,系统执行
privatevoidSearch()函数。
5.7流程逻辑
5.8接口
由于该程序块就是系统登录后的第一个模块,所以没有上层程序,而且它只有一个下层程序,就是学生查询系统房屋信息。
与该模块关联的数据结构有房屋信息表、房主信息表、学生信息表。
所调用的方式都是函数调用。
5.9存储分配
房主信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
ID
Varchar(10)
√
密码
varchar(10)
学生信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
出生日期
datetime
性别
Char
(2)
ID
Varchar(10)
√
密码
Varchar(10)
房屋信息表:
列名
数据类型
主键
允许空
地址
Nvarchar(50)
类型
Char(5)
适住人数
tinyint
房租
money
房主ID
Varchar(10)
√
可租否
Bit
5.10注释设计
用/*……*/作多行注释,用//作单行注释
5.11限制条件
学生只能查询按条件输入所寻找出来的房屋信息,但是学生不能再系统中将几所房屋做具体的比较。
5.12测试计划
测试计划:
学生在没有更新的房屋信息上提交租房请求
输入数据:
租房请求
预期结果:
系统提示更新租房请求
进度安排:
1个星期
设备条件、驱动程序:
一般情况即可,无特殊要求。
5.13尚未解决的问题
学生选定房屋发出租房请求后不能在改变主意后撤销租房请求。
6.更新房屋信息设计说明
6.1模块描述
这一部分程序模块是房主用来添加新的可租用房屋信息和修改以前的房屋属性的。
该部分程序为不常驻内存,并且是顺序执行的。
6.2功能
该部分程序的功能是帮助房主更新房屋的信息,包括增加新的可租用的房屋信息和在房屋信息变化以后,修改以前以添加的房屋属性,包括房屋地址、类型(单间/套间)、适合住宿的人数、房租以及现在是否可以出租等。
IPO表
系统:
学生住宿服务系统
作者:
软件1113班
模块:
更新房屋信息
日期:
2012年12月
处理:
更新房屋信息和添加房屋信息
输出:
新的房屋信息
输入:
新的可租用房屋信息和修改以前的房屋属性的
调用:
无
被调用:
学生查询
6.3性能
对精读没有要求,但是对时间上要求还是要相应时间,一般为1-2秒,房主才能相信系统,添加和修改更多的房屋信息,已更新房屋信息。
为此,可以把一些频繁的操作用存储过程来实现。
6.4输入项
输入项为新的可租用的房屋信息和在房屋信息变化以后,修改以前以添加的房屋属性,包括房屋地址、类型(单间/套间)、适合住宿的人数、房租以及现在是否可以出租。
6.5输出项
输出项为新的房屋信息,可为学生提供最新的房屋信息。
6.6设计方法(算法)
当按下更新按钮时,执行
privatevoidupdateHousse()函数。
函数内部执行
privatevoidmodifyHouse()函数更新房屋状态。
6.7流程逻辑
6.8接口
由于改程序快就是房主登陆后的第一个模块,所以没有上层程序,但是它有两个下层程序:
一个是添加可租用房屋信息,一个是修改房屋属性。
与该模块关联的数据结构是房屋信息表。
调用方式是函数调用。
与房屋管理通过函数调用。
6.9存储分配
房主信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
ID
Varchar(10)
√
密码
varchar(10)
房屋信息表:
列名
数据类型
主键
允许空
地址
Nvarchar(50)
类型
Char(5)
适住人数
tinyint
房租
money
房主ID
Varchar(10)
√
可租否
Bit
6.10注释设计
用/*……*/作多行注释,用//作单行注释
6.11限制条件
房主想修改可增加的房屋属性中,只能是房屋地址、类型(单间/套间)、适合住宿的人数、房租以及现在是否可以出租,不能添加一些别的房屋的属性。
6.12测试计划
测试计划:
房主添加了重复的房屋信息
输入数据:
房屋信息
预期结果:
系统提示房屋信息已存在
进度安排:
1个星期
设备条件、驱动程序:
一般情况即可,无特殊要求。
6.13尚未解决的问题
房主误修改了房屋属性,以前的属性被删除,不能找回了。
7.处理会面信息设计说明
7.1模块描述
这一程序块是系统对学生发出的租房请求,安排用户双方进行会面。
用户双方只有在会面详谈以后才能确定是否要租用该房屋。
该部分程序为不常驻内存,并且是顺序执行的。
7.2功能
系统安排学生和房主会面的时间和地点,并通知学生和房主。
IPO表
系统:
学生住宿服务系统
作者:
软件1113班
模块:
处理会面信息
日期:
2012年12月
处理:
安排学生和房主会面
输出:
会面的时间和地点
输入:
学生的租房请求
调用:
无
被调用:
无
7.3性能
对精度没有要求,但是对系统处理时间还是有时间要求,系统应尽快的安排好会面的时间和地点,以防学生选择新的房屋。
7.4输入项
输入项是学生的租房请求,系统根据学生的房屋信息中的房主ID来确定可安排会面的时间。
7.5输出项
输出项为会面的时间和地点,用来告知学生和房主会面的具体时间和地点。
7.6设计方法(算法)
当点击安排会面按钮时,系统执行
privatevoidarrangeMetting()函数.
函数内部执行读取租房请求
privatevoidreadRequest()
通知学生和房主执行
privatevoidInform()函数。
记录会面信息执行
privatevoidRecord()函数。
7.7流程逻辑
7.8接口
由于该程序块是系统登录后的第一个模块,所以没有上层程序,只有一个下层程序,通知房主和学生时间和地点。
分别为租房请求、通知、记录。
与该模块关联的数据结构有房屋信息表、会面信息表、房主信息表、学生信息表。
所调用的方式都是函数调用。
7.9存储分配
房主信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
ID
Varchar(10)
√
密码
varchar(10)
学生信息表:
列名
数据类型
主键
允许空
姓名
Nvarchar(20)
地址
Nvarchar(50)
电话号码
Varchar(12)
出生日期
datetime
性别
Char
(2)
ID
Varchar(10)
√
密码
Varchar(10)
房屋信息表:
列名
数据类型
主键
允许空
地址
Nvarchar(50)
类型
Char(5)
适住人数
tinyint
房租
money
房主ID
Varchar(10)
√
可租否
Bit
会面信息表:
列名
数据类型
主键
允许空
时间
Datetime
地点
Nvarchar(50)
房主ID
Varchar(10)
学生ID
Varchar(10)
7.10注释设计
用/*……*/作多行注释,用//作单行注释
7.11限制条件
时间和地点有系统安排,不是有房主和学生讨论出的合理时间。
7.12测试计划
测试计划:
房主或者学生没有收到会面信息
输入数据:
会面信息
预期结果:
系统提示用户没有接收到请求,请重新发送
进度安排:
1个星期
设备条件、驱动程序:
一般情况即可,无特殊要求。
7.13尚未解决的问题
系统不能根据学生和房主的最新作息时间表来安排合理的时间和地点。