收藏 分销(赏)

二手房中介管理系统需求分析.doc

上传人:人****来 文档编号:4318948 上传时间:2024-09-05 格式:DOC 页数:26 大小:500.37KB
下载 相关 举报
二手房中介管理系统需求分析.doc_第1页
第1页 / 共26页
二手房中介管理系统需求分析.doc_第2页
第2页 / 共26页
二手房中介管理系统需求分析.doc_第3页
第3页 / 共26页
二手房中介管理系统需求分析.doc_第4页
第4页 / 共26页
二手房中介管理系统需求分析.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、呼伦贝尔学院计算机科学与技术学院数据库系统开发与应用课程设计题 目:_二手房中介管理系统_学生姓名:_梅广丽_学 号:_201512102009_专业班级:_软件工程_任课教师:_白杨_ 完成时间:_2017年9月14日_ 目录第1章需求分析11.1总体需求简介11.2功能分析11.3组织结构分析11.3.1管理员系统功能模块图11.3.2用户功能模块图21.4业务流程图31.4.1订单管理业务流程图31.5数据流图31.6数据字典51.6.1数据项51.6.2数据结构71.6.3数据流71.6.4数据存储81.6.5数据处理8第2章概念结构设计92.1系统局部E-R图92.2 系统全局E-R

2、图10第3章逻辑结构设计113.1ER图到关系模式的转换113.2关系规范化11第4章数据库物理设计及数据库实施124.1数据库的存储结构和方法124.2数据库的创建144.3表的创建及完整性144.3.1表的创建144.3.2表的查询154.4视图、索引的创建与应用164.5存储过程、触发器的创建与应用174.6用户角色与权限管理194.7数据安全性20第1章 需求分析1.1 总体需求简介随着住房制度改革不断深化和居民收入水平的提高,住房成为新的消费热点。1998以后,随着住房实物分配制度的取消和按揭政策的实施,房地产投资进入平稳快速发展时期,房地产业成为经济的支柱产业之一。2003年以来,

3、房屋价格持续上扬,大部分城市房屋销售价格上涨明显。随之而来国家出台了多项针对房地产行业的调控政策,希望能引导房地产市场的健康发展。而房屋中介行业是房地产业的重要组成部分,房屋中介贯穿在房地产业经济运行的全过程之中,为房地产业的生产、流通和消费提供了多元化的中介服务。随着科学技术的飞速发展,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。城市生活当中房屋的租赁买卖十分的频繁。一套行之有效的房屋中介系统将给房屋中介商和房屋交易双方带来相当多的便利。正是这样的需求,我们着力为房屋中介行业定制这样一个计算机管理软件。力求为用户提供简洁、易操作的界面

4、,快速完成房源检索,房屋预定,交易管理。1.2 功能分析通过对系统的分析及对其他网店的参考,基本确定了“网上中介”的基本功能以及基本性能的基本需求。功能需求:这方面的需求指定系统必须提供的服务,通过需求分析应该划分出系统必须完成的所有功能。其功能如下:(1)用户管理,主要有用户注册、修改用户信息。(2)房屋求购信息管理,主要有登记求购者信息、修改信息、删除信息。(3)房屋出租信息管理,主要包括登记出租者信息、修改信息、删除信息。(4)管理员管理,主要有筛选信息、修改信息、通知用户、删除信息、订单处理。1.3 组织结构分析1.3.1 管理员系统功能模块图本系统中,管理员是系统中拥有最高权限的人,

5、管理员可以进行用户信息筛选、修改信息、通知用户、删除信息等。下图是对管理员功能的组织结构分析图,如下图1-1 管理员功能组织结构图。管理员筛选信息修改信息删除信息通知用户图1-1 管理员功能组织结构图1.3.2 用户功能模块图用户在本系统中,只拥有部分权限,用户可以通过注册登录,进入系统查看求购信息、出租信息等,如下图1-2 用户功能组织结构图所示。用户用户注册修改用户信息修改密码修改密码用户登录撤销用户信息查看租购信息图1-2用户功能组织结构图1.4 业务流程图1.4.1 订单管理业务流程图在用户确认订单信息并提交订单之后,此时,本系统的管理员可登入本系统,对订单信息进行管理,具体业务流程图

6、如下图1-5 管理员订单管理流程图。开始是否登录进入管理员界面对租购信息进行编辑通知用户结束返回主界面否是图1-5 管理员订单管理流程图1.5 数据流图(1) 二手房中介管理系统房屋出租流程图本系统数据流图如下图1-6 二手房中介管理系统数据流图所示。求租房屋信息求租信息统计表查询求租房屋信息求租房屋信息登记出租出租信息登记出租登记出租管理员用户出租信息统计出租出租信息查询房屋信息出租信息出租房屋信息统计表通知用户图1-6二手房中介管理系统数据流图(2)二手房中介管理系统房屋求购流程图本系统数据流图如下图1-7 二手房中介管理系统数据流图所示。求购房屋信息求购信息统计表查询求购房屋信息求购房屋

7、信息登记求购求购信息登记求购登记求购管理员用户求购信息统计求购求购信息查询房信息求购信息求购房屋信息统计表图1-7 二手房中介管理系统数据流图1.6 数据字典1.6.1 数据项数据项名:userID含义说明:每个用户的代号,用来对所有用户加以区分。别名:用户编号数据类型:长整型长度:24取值范围:所有字母、数字和下划线。数据项名:user_name含义说明:用来对每个用户加以区分和标示。别名:用户名数据类型:字符型长度:10取值范围:所有汉字或英语数据项名:user_sex含义说明:每个用户的性别进行区分。别名:用户性别数据类型:字符型长度:2取值范围:男或女:数据项名:user_email含

8、义说明:可以传送通知信息及找回密码。别名:邮箱数据类型:字符型长度:50取值范围:所有自然数、字母、下划线和字符数据项名:user_password含义说明:保证用户信息安全别名:密码数据类型:字符型长度:10取值范围:所有英文字母及所有自然数数据项名:user_phone含义说明:用来通知用户别名:电话数据类型:长整型长度:22取值范围:所有自然数数据项名:guanID含义说明:对每个管理员加以标示和区分别名:管理员编号数据类型:整型长度:10取值范围:所有自然数数据项名:guan_name含义说明:用来对每个管理员加以区分和标示数据类型:字符型长度:18取值范围:所有汉字和英语1.6.2

9、数据结构数据结构名含义组成用户是二手房中介管理系统的主体数据结构,定义了一个关于用户的有关信息.用户编号、用户姓名、性别、邮箱、密码、地址、电话求购信息是二手房中介管理系统的主体数据结构,定义了一个关于求购信息的有关信息.求购编号、求购姓名、电话、房屋种类、面积、备注、地址、求购价格、求购情况出租信息是二手房中介管理系统的主体数据结构,定义了一个关于出租信息的有关信息.出租编号、出租姓名、电话、房屋种类、面积、备注、地址、出租价格、出租情况管理员信息是二手房中介管理系统的主体数据结构,定义了一个关于管理员的有关信息.管理员编号、管理员姓名1.6.3 数据流名称:登记注册简述:管理员登记用户信息

10、数据来源:求购房屋或出租房屋的客户数据去向:用户登记表数据组成:用户编号、用户姓名、性别、邮箱、密码、地址、电话名称:求购信息简述:用户发布房屋求购信息数据来源:求购房屋的客户数据去向:房屋求购登记表数据组成:求购编号、求购姓名、电话、房屋种类、面积、备注、地址、求购价格、求购情况名称:出租信息简述:用户发布房屋出租信息数据来源:出租房屋的客户数据去向:房屋出租登记表数据组成:出租编号、出租姓名、电话、房屋种类、面积、备注、地址、出租价格、出租情况1.6.4 数据存储数据存储名称:用户登记来源:由用户登录注册产生组成:用户编号、用户姓名、性别、邮箱、密码、地址、电话数据存储名称:房屋求购信息登

11、记来源:由用户登录填写房屋求购信息产生组成:求购编号、求购姓名、电话、房屋种类、面积、备注、地址、求购价格、求购情况数据存储名称:房屋出租信息登记来源:由用户登录填写房屋出租信息产生组成:出租编号、出租姓名、电话、房屋种类、面积、备注、地址、出租价格、出租情况1.6.5 数据处理处理名称:房屋求购信息处理流入数据流:用户求购信息统计表流出数据流:合适的房屋出租信息周期:3次/周处理逻辑:用户将房屋求购信息表提交给管理员,管理员审查,并与房屋出租信息表对比,筛选出合适的房屋出租客户,将信息记录,通知用户。处理名称:房屋出租信息处理流入数据流:用户出租信息统计表流出数据流:合适的房屋出租信息周期:

12、3次/周处理逻辑:用户将房屋出租信息表提交给管理员,管理员审查,并与房屋求购信息表对比,筛选出合适的房屋求购客户,将信息记录,通知用户。第2章 概念结构设计2.1 系统局部E-R图1. 如图2.2.1 为用户实体其属性分别为:用户编号,姓名,性别,油箱,密码,地址,联系电话性别姓名安全问题编号邮箱联系电话地址密码用户如图2.2.1用户信息2.如图2.1.2 为房屋求购信息实体其属性分别为:求购编号,姓名,电话,房屋种类,面积,地址,备注,求购价格,求购情况房屋种类电话编号姓名求购情况面积你价格求购信息地址备注如图2.1.2房屋求购信息3.如图2.1.3 为出租等信息统计表实体其属性分别为:出租

13、编号,姓名,电话,房屋种类,面积,地址,备注,出租价格,出租情况房屋种类电话编号价格姓名出租情况面积出租信息地址备注如图2.1.3房屋出租信息4.如图2.1.4 为管理员实体其属性分别为:管理员编号,管理员姓名管理员编号管理员姓名管理员如图2.1.4管理员信息2.2 系统全局E-R图如图2.1.5 为二手房中介管理系统实体之间的关系n11111出租信息注册出租11统计信息管理员用户注册求购11求购信息n111n111通知如图2.1.5实体联系属性第3章 逻辑结构设计3.1 ER图到关系模式的转换在概念设计阶段得到的数据模型,是独立于具体DBMS产品的信息模型。在逻辑设计阶段就是将这种模型进一步

14、转化为某一种(某些类)DBMS产品支持的数据模型。目前大部分的流行的数据库管理系统(SQL Server、Sybase 、Oracle、DB2等)基本上都是基于关系的数据模型,包括该系统将采用的SQL Server2000数据库系统,因此,应将概念设计阶段的E-R图模型转化为关系数据模型。首先,管理员和出租求购信息是一对多联系,用户与管理员也是一对多联系,根据他们的关系分别设计成如下的关系模式:用户注册出租信息,求购信息是一对一关系管理员管理出租求购信息是一对多关系管理员(管理员编号,管理员姓名,求购编号,出租编号,用户编号)求购信息(求购编号,管理员编号,姓名,电话,房屋种类,面积,地址,备

15、注,求购价格,求购情况)出租信息(出租编号,管理员编号,姓名,电话,房屋种类,面积,地址,备注,出租价格,出租情况)管理员通知用户是一对多关系用户(用户编号,管理员编号,姓名,性别,油箱,密码,地址,联系电话,安全问题)3.2 关系规范化在提出关系模式后,我们必须在规范化和实际要求进行优化,这实际上是一个权衡的过程。如果设计没有完全规范化,如可能用于决策支持(与需要大量更新的事务处理相对)的数据库(如数据仓库)则可能没有冗余更新,而且可能对查询更易于理解和更高效。不过,在数据库应用程序内,未规范化的数据在设计过程更需要注意。一般的策略是以规范化设计为出发点,然后出于特定因素有条件地非规范化某些

16、表,以达到系统总体的优化目的。首先,需要我们确定上面建立的关系模式中的函数依赖,一般在作需求分析时就了解到一些数据项的依赖关系,如教师的编号决定了教师的姓名和其它的数据项信息,而实体间的联系本身也是反映了一种函数依赖关系,但是这不是研究的对象,我们针对的是在一个关系模式中的函数依赖对象。其次,对上一步确立的所有函数依赖进行检查,判别是否存在部分函数依赖以及传递函数依赖,针对有的依赖通过投影分解,消除在一个关系模式中存在的部分函数依赖和传递函数依赖。大部分数据库系统只要满足第三关系范式就可以,这也是我们这里规范化的基本要求。由于需求分析阶段的方法得当,经过简单的分析可以看出,上述所有关系中每个数

17、据项都是基本的,任何非主属性都不存在对主码的部分依赖,也不存在非主属性存在着对主码的传递依赖。可见,以上所有的关系模式都属于3NF。在实际的应用中,关系模式的规范化程度并不是越高越好,因为在关系模式的规范化提升过程中,必须进行着将一个关系模式分解成为多个关系模式的过程。这样,在以后执行查询时,如果需要相关的信息,就必须作多个表的连接方能达到查询的目的,这无疑给系统增加一定的开销,特别存在很多用户同时访问或者关系中存在许多元组等因素其负担会越加明显。为了兼顾性能的需要,在适当的时候可能需要对相关程度比较高的一些关系模式进行合并处理,或者在关系模式中增加相关程度比较高的属性等。这是有可能选择第二范

18、式甚至第一范式。为了满足实际应用对系统的系统要求,必须对使用系统的用户增加登录的验证口令,因此需要在用户和管理员的关系模式中增加口令属性。自然地,如果根据其它的安全应用要求,还可以设置用户的登录地点如通过增加IP属性来达到目的等。第4章 数据库物理设计及数据库实施4.1 数据库的存储结构和方法(1)用户表字段名数据类型是否为空长度描述useridvarcharnot null,主键20用户编号 usernamevarcharnot null16用户姓名usersex charnull2性别emailvarcharnull30邮箱userpwdvarchar Not null20密码u_dizh

19、ivarcharnull40地址u_phonevarcharnull22电话(2) 求购信息表字段名数据类型是否为空长度描述q_qiuidvarcharnot null,主键20求购编号UseridvarcharNot null,外键20用户编号q_phonevarcharnot null22电话q_zhongvarcharnull20房屋种类q_mianjiIntnull18面积q_dizhivarcharnull50地址q_zhuvarcharnull28备注q_priceintnull40求购价格q_qingvarcharnull30求购情况(3) 出租信息表字段名数据类型是否为空长度描

20、述c_zuidvarcharNot null,主键20出租编号编号useridvarcharNot,null20用户编号c_phonevarcharNot null22电话c_zhongvarcharnull20房屋种类c_mianjiIntnull18面积c_dizhivarcharnull50地址c_zhuvarcharnull28备注c_priceintnull40出租价格c_qingvarcharnull30出租情况(4) 管理员信息表字段名数据类型是否为空长度描述g_idvarcharnot null,主键20管理员编号g_namevarcharnot null16管理员姓名(5)

21、管理信息表字段名数据类型是否为空长度描述g_idvarcharNot null30管理员编号c_zuidVarcharNot null20出租编号q_qiuidvarcharNot null20求购编号HousestatevarcharNot null6房屋状态4.2 数据库的创建创建二手房中介管理系统的数据库ershoufangcreate database ershoufang4.3 表的创建及完整性4.3.1 表的创建1. 创建用户表create table 用户表(userid varchar(20) primary key,userpwd varchar(20) not null,u

22、sername varchar(16) not null,usersex char(2) check (usersex=男 or usersex=女)default 男,email varchar(30),u_dizhi varchar(40),u_phone varchar(22)2. 创建求购信息表create table 求购信息表(q_qiuid varchar(20) primary key,q_phone varchar(22) not null,q_zhong char(20),q_mianji varchar(18),q_dizhi varchar(50),q_zhu varc

23、har(28),q_price varchar(40),q_qing varchar(30),userid varchar(20) foreign key references 用户表(userid)3. 创建出租信息表create table 出租信息表(c_qiuid varchar(20) primary key,c_phone varchar(22) not null,c_zhong char(20),c_mianji varchar(18),c_dizhi varchar(50),c_zhu varchar(28),c_price varchar(40),c_qing varchar

24、(30),userid varchar(20) foreign key references 用户表(userid)4. 创建管理员信息表create table 管理员信息表(g_id varchar(20) primary key,g_name varchar(16) not null,)5. 创建管理信息表create table 管理信息表(g_id varchar(20) foreign key references 管理员信息表(g_id),c_qiuid varchar(20) foreign key references 出租信息表(c_qiuid),q_qiuid varch

25、ar(20) foreign key references 求购信息表(q_qiuid),Housestate varchar(6)4.3.2 表的查询1.select c_qiuid,c_mianji,c_price from 出租信息表group by c_price,c_zhong,c_qiuid,c_mianji2.select c_qiuid,c_price,c_mianji,avg(c_price),sum(c_mianji) from 出租信息表 group by c_qiuid,c_mianji,c_price3.select *from 出租信息表where c_qiuid=

26、101014.select *from 求购信息表5.select *from 求购信息表,用户表where 求购信息表.userid=用户表.userid 6.select *from 用户表,出租信息表where 出租信息表.userid=用户表.userid 7.select 用户表.useridfrom 求购信息表,用户表where 求购信息表.userid=用户表.userid and q_price2250 8.select 用户表.userid from 用户表 where username=( select username from 用户表 where u_phone=155

27、40068708)9.select 用户表.userid,username,求购信息表.q_price,avg(q_price),sum(q_mianji) as 平均价格 from 求购信息表,用户表 group by 用户表.userid,q_price,username10.select c_mianji from 出租信息表 group by c_qiuid,c_mianji having count(c_qiuid)=14.4 视图、索引的创建与应用1. 创建用户表视图V用户表create view V用户表asselect 用户表.userid,username,userpwd,c

28、_qiuid from 用户表,出租信息表where 用户表.userid= 出租信息表.userid 2. 创建求购信息表视图V求购信息表 create view V求购信息表asselect 用户表.userid,username,userpwd,q_qiuid,q_phone,q_zhong,q_dizhi,q_pricefrom 用户表,求购信息表where 用户表.userid= 求购信息表.userid and u_phone=q_phone3. 创建出租信息表视图V出租信息表create view V出租信息表asselect 用户表.userid,username,userpw

29、d,c_qiuid,c_phone,c_mianji,c_price from 用户表,出租信息表where 用户表.userid= 出租信息表.userid and c_mianji=(select max(c_mianji) from 出租信息表)4. 创建管理员信息表视图V管理员信息表create view V管理员信息表asselect * from 管理员信息表where g_id=3010015. 创建管理信息表视图V管理信息表create view V管理信息表asselect 管理员信息表.g_id,g_name,用户表.userid,username,出租信息表.c_qiui

30、d,c_mianji,c_price from 用户表,出租信息表,管理信息表,管理员信息表where 用户表.userid= 出租信息表.userid and 出租信息表.c_qiuid=管理信息表.c_qiuid and c_price= any (select max(c_price) from 出租信息表)4.5 存储过程、触发器的创建与应用1. 创建出租信息表存储过程c_chuzucreate procedure c_chuzu x decimal,y decimal as select * from 求购信息表 where q_price between x and y go ex

31、ec c_chuzu 4000,100002. 创建管理信息表存储过程g_guanli create procedure g_guanli dg varchar(20),gy varchar(20) output,zh varchar(20) output as select gy=g_id,zh=c_qiuid from 管理信息表 where q_qiuid=dg godeclare dg varchar(20), gy varchar(20),zh varchar(20)set dg=20104exec g_guanli dg ,gy output,zh outputprint 求购编号

32、:+ dg+ 管理员编号: + gy + 出租编号: + cast(zh as varchar(20)3. 创建用户表存储过程u_users create procedure u_users xh char(20) as select 用户表.userid,username,出租信息表.c_phone,c_qing from 用户表, 出租信息表 where 用户表.userid=出租信息表.userid and 用户表.userid=xh go exec u_users xh=20151210014. 创建用户表触发器tr_delete_yongcreate trigger tr_delet

33、e_yongon 用户表 after delete asupdate 出租信息表 set c_qiuid=nullwhere userid in(select c_qiuid from deleted)5. 创建出租信息表触发器tr_insert_cucreate trigger tr_insert_cuon 出租信息表 after insert asif not exists (select userid from 用户表 where useridin(select userid from inserted) begin rollback transaction end6. 创建管理信息表触

34、发器tr_update_qiucreate trigger tr_update_qiuon 管理信息表 after update asdeclare ckh varchar(20)if update(q_qiuid)begin if not exists (select * FROM 求购信息表 where q_qiuid = (select q_qiuid from inserted) begin rollback transaction end elsebegin select ckh=q_qiuid from inserted if ckh=20101 update 求购信息表 set q_price=q_price*1.1 where q_qiuid=(select q_qiuid from inserted)endend4.6 用户角色与权限管理本数据库用户角色有普通用户和管理员。1.普通用户可以进行用户的登录和注册,可以对出租和求购信息进行查询,可以向管理员发布求购和出租信息,对房屋进行预定。2.管理员可以进行后台用户管理进行对用户的查询和对用户的预定信息进行查询,可以对求购出租信息进行增删改查后通知用户的信息变更情况。4.7 数据安全性1. 数据库备份和恢复2. 文件和文件组的备份和恢复第 24 页 (共 26 页)

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服