房屋出租系统(软件工程导论课程设计)(共31页).doc

上传人:飞****2 文档编号:13700455 上传时间:2022-04-30 格式:DOC 页数:31 大小:814.50KB
返回 下载 相关 举报
房屋出租系统(软件工程导论课程设计)(共31页).doc_第1页
第1页 / 共31页
房屋出租系统(软件工程导论课程设计)(共31页).doc_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《房屋出租系统(软件工程导论课程设计)(共31页).doc》由会员分享,可在线阅读,更多相关《房屋出租系统(软件工程导论课程设计)(共31页).doc(31页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精选优质文档-倾情为你奉上湖南人文科技学院计算机系课程设计说明书课程名称:软件工程导论课程代码:题 目:屋出房租系统年级/专业/班:学生姓名:学 号:指导老师:颜富强开题时间:2010年6月5日完成时间:2010年6月30日2010年6月30日专心-专注-专业课程设计任务书及成绩评定课程名称:软件工程导论完成者:1、设计的目的与要求 1)加强学生的实践能力;2)理解小型系统开发的基本步骤; 3)本系统的功能包括:房屋信息查询模块、注册模块、房屋信息管理模块(包括基本的添加、修改、删除功能)。2、设计进度及完成情况日 期内 容6.5-6.7项目开发计划书6.8-6.10系统可行性研究 6.11-

2、6.15系统需求分析 6.16-6.23系统设计 6.24-6.27系统测试 6.28-6.30项目的递交3、成绩评定设计成绩: (教师填写)指导老师: (签 字)2011 年 月 日目 录第一章 项目开发计划书1.1引言 1.1.1编写目的此项目开发计划书的编写主要是为了给开发房屋租赁系统做主要的规划和整合,在开发过程中起到引导作用,以及给使用者提供简要的说明。1.1.2背景随着我国市场经济的快速发展和信息化水平的不断提高,人们的生活节奏也日益加快。而传统房屋租赁信息发布和查找的效率无疑是十分低下的。如何利用先进的技术来提高房屋租赁效率,是一个十分迫切需要解决的问题。于是,我们决定开发一个新

3、系统以实现利用计算机对房屋租赁进行管理。使用计算机对房屋出租信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高房屋租赁管理的效率。面对目前的实际状况,开发一个新系统来适应这一些工作,是十分必要的。1.2项目概述1.2.1工作内容房屋出租系统针对的用户是需要租房和需要发布租房信息的人;该系统需要实现如下功能:浏览查询:主要是让想租房的人对想要了解的信息进行查询,包括房屋类型,租金,地段等。用户注册:主要用于用户注册。用户登陆:主要用于用户的登录。当用户输入用户名和密码后经过确认以后可以发布租房信息和查看房屋

4、信息以及对房屋信息进行管理。房屋信息管理:只有当用户注册登陆之后才可以使用这个功能。用户可以发布房屋信息和对房屋信息进行修改、添加或删除。1.2.2主要参加人员 组长:设计: 开发: 1.2.3产品1 系统开发计划书2 系统需求说明书3 系统设计说明书4 测试计划5 一个能正确运行的可执行程序 源程序清单(有注释)1.2.4服务安装、维护和运行支持从使用该系统开始,维护期限为一年。 1.2.5验收标准 各个功能均能正常使用,满足用户的需求。1.2.6本计划的批准者和批准日期 批准者:颜富强批准日期:2010年6月5日1.3实施计划 1.3.1工作任务的分配与人员分工 组长: 任务: (1)系统

5、总的开发计划书 (2)每周至少组织小组讨论一次,列出本周开发计划 (3)项目开发进度的管理 (4)团队的组织和协调设计: 任务: (1)参与小组讨论 (2)进行系统的需求分析和系统设计 (3)完成系统需求说明书和系统设计说明书 (4)编写测试计划,参与系统测试 (5)协助文档人员完成用户相关文档开发: 任务: (1)参与小组讨论 (2)根据设计完成编码,并注释 (3)进行单元测试1.3.2进度 系统规划阶段: 项目标志性事件 开始到完成开发阶段: 项目开发计划书的完成 6.5-6.7需求分析阶段: 系统需求说明书完成 6.8-6.10设计阶段: 系统设计说明书 6.11-6.15编码实现: 项

6、目的形成 6.16-6.23测试阶段: 测试计划 6.24-6.27移交阶段: 项目的递交 6.28-6.301.4支持条件1.4.1计算机系统支持操作系统需要 windows 2000以上;操作系统环境:java虚拟机,.netFrameWork3.0;数据库需要SQL Server 2000;数据库驱动:Microsoft公司的sqljdbc驱动;前台开发工具:MyEclipse5.5,Dreamver mx 8.8;前台界面类型:html,jsp,servlet。 第二章 可行性分析2.1可行性研究前提要求:满足客户发布房屋出租的基本信息及要求,并对客户资料具有保密性。目标:实现无纸化办

7、公,节省成本,提高工作效率。条件、假定、限制:本软件自开发到运行结束至少可运行5年,开发成本不超过500人民币,开发软件到投入使用不超过1个月。2.2 对现有系统的分析如今没有一个专门用于提供发布和提供住房出租信息的平台。人们想要发布或寻找租房信息,主要是通过纸质广告、广播、电视等传统的传媒手段。这样做不仅信息发布的目标受众并不准确、效果不好而且花费也是十分高昂的。需要寻找租房信息的人也没有一个及时准确的信息平台。在生活节奏日益加快的今天,这种状况已无法满足人们的对租房效率的要求了。2.3 建议新系统2.3.1 新系统说明新系统能够为想发布租房信息的人和想租房的人提供一个良好的平台。使租房信息

8、能及时准确到达受众。想租房的人能快捷、方便的找到想要的信息。而且本系统界面友好,操作简单,对硬件要求不高,且用户的花费是几乎可以忽略的,因此十分有利于推广。本系统的用户可分为两种:想发布租房信息的用户可先注册,已注册用户可直接登录,然后就可管理自己的房屋信息了;若只是想查询信息的用户只是可以以游客的身份进行查询,不需要注册。2.3.2 新系统的流程图图1 新系统的流程图2.4经济上可行性开发成本:500元人民币。效益:暂时无法具体衡量。效益/投资比:暂时无法估算。投资回收期:大约2个月。2.5技术可行性软件需求:操作系统WINDOWS 2000 Advance Server以上。硬件需求:赛扬

9、1.7G CPU、512M内存 80G硬盘的计算机。使用语言为:java 页面为jsp 编辑工具为: MyEclipse 数据库为:SQL Server 20082.6开发工具的选择MyEclipse5.5作为前台的开发工具;用SQL Server 2008作为后台支持数据库;通过JDBC的数据库驱动来连接SQL Server 2008中并对其编程来实现各种功能。2.7 新系统的影响l 设备的影响:创建新系统需要添置一台性能良好的服务器。l 人员的影响:新系统需要一个专职维护人员。l 用户的影响:用户可准确、高效的发布和查找信息。 2.8 结论 综上所述,房屋租赁系统在技术非常成熟,主客观条件

10、都具备,且具有良好的效益,因此开发此系统是可行的。为了提高房屋租赁效率,方便人们查找和发布房屋租赁信息,建议立即开发。第三章 需求分析3.1市场需求分析过去人们对房屋出租信息的发布主要通过人力宣传、海报等方式。这些传统方式及浪费金钱又浪费时间,效率十分低下。现在通过房屋出租平台将出租房的信息发布到网上不仅降低了成本,同时检索迅速、查找方便、可靠性高、存储量大、保密性好。这样做极大地提高房屋租赁管理的效率。3.2系统功能性需求分析3.2.1 功能划分本系统的目标使用人群是广大的人民群众,建成后将有助于改善现有出租房管理混乱的状况,加强住户和房主的联系。 因此本系统首先需要实现用户的注册功能,注册

11、后客户可发布自己的租房信息或管理自己的已发布的租房信息,包括修改、删除等;已注册的用户就可直接登录,之后就可对自己已发布的信息进行管理,填加新信息;而未注册的用户也可同已注册的用户一样可查询到自己想要的信息。3.2.2 功能描述3.2.2.1 注册功能模块对于想利用本系统进行房屋租赁信息发布的用户,首先需要注册成为系统的会员用户,系统才能保存他们的信息。在注册时用户仅需要输入自己喜欢的任何英文字母组成的用户名和由英文、数字或英文加数字组成的密码。用户注册成功之后,注册页面随即转入首页。 3.2.2.2 登录功能模块主要用于用户的登录。已注册的用户进入系统后可根据之前注册的用户名和密码直接登录自

12、己的账户,但用户需要填入正确的用户名和用户密码。如果用户登录时的用户名或密码错误,就会有提醒用户登录失败的页面。如果用户输入的用户名和密码经过确认后,页面需跳转到房屋出租管理系统的管理首页。3.2.2.3 查询功能模块所有上网用户都可以使用本系统的查询功能,对房屋的基本情况进行了解,并且查询需要支持模糊查询。用户在查询框输入需要查询的房屋类型,系统则会根据输入的类容进行搜索,并给出所有搜索结果。对于查询出的结果,用户还可以通过点击对应的标题查看其地段、房主联系方式、说明等详细信息。3.2.2.4 管理功能信息模块只有登录的合法用户才可以使用管理功能模块。用户可以发布新的房屋租赁信息和对自己发布

13、的房屋出租的信息进行管理,当用户查看自己的发布的房屋信息的时候可以对房间的基本信息(房屋类型、租金、地址、详细信息等)进行修改,并可以添加、删除等。3.3 系统非功能性需求3.3.1 可用性本系统的潜在用户群具有的身份、背景可能会有较大的差异,因此对本系统的可操作性和易用性都提出了很高的要求。过于复杂的操作将不可避免的损失大量的用户,本系统应能让任何用户都不必借助任何操作手册或相关的系统帮助就能顺利地进行各种操作。3.3.2 可靠性系统建成后预计将有大量的用户在此发布和查询房屋租赁信息,因此对系统的稳定性也有比较高的要求。一旦系统不能正常工作,会给用户群带来巨大的损失也将导致失去用户对系统的信

14、任。3.3数据字典通过系统需求分析,对房屋租赁系统编制数据字典如下:各主要数据流的定义如表1至表3所示。名字:用户登录信息描述:确认是否是注册用户的基本信息定义:用户登录信息=用户名+密码位置:登录界面表1表1 名字:用户档案描述:用户的房屋出租信息定义:用户档案=房屋标题+月租金+发布时期位置:房屋出租管理平台 用户租房信息表2名字:出租房管理信息描述:用户需要对出租房进行管理的信息定义:出租房管理信息=【发布租房信息】【租房删除】【租房修改】位置:房屋出租管理平台表 33.4实体-联系图根据需求分析,可以画出系统E-R图如下:图2 房屋租赁系统E-R图第四章 系统设计4.1 总体设计4.1

15、.1需求概述本系统的目标是实现让任何想租房的人能找到有用的信息,任何想发布租房信息的人能有一个良好的信息发布、管理平台。因此,本系统需要实现对发布的信息的查询功能,发布和管理已发布的租房信息的功能。而在用户发布信息前需要在系统注册,登录。即系统还需实现用户的注册、登录功能。4.1.2客户关系管理系统功能设计根据系统需求分析和系统功能模块结构图来看,该系统应具备如下基本功能:l 普通游客的查询l 用户注册l 已注册用户的发布、修改、删除房屋信息其功能模块结构图如下:图3 程序功能模块图4.2数据库设计4.2.1数据库详细设计数据库文件名:(1) 房屋表结构列名数据类型允许Null值描述p_idi

16、nt否房屋信息序列h_idint否房主的序列h_titlevarchar(50)是房屋信息标题h_qxvarchar(50)是区县h_jdvarchar(50)是街道h_shiint是几室h_tingint是几厅h_typevarchar(50)是房屋的类型h_pricemoney是租房的价格h_pervarchar(50)是联系人h_telvarchar(50)是电话h_datedatetime是日期主键为:房屋序列(2)注册用户表结构列名数据类型允许Null值描述p_idint是用户的序列p_namevarchar(50)否用户名p_passwordvarchar(50)否用户密码主键为:

17、用户的序列4.2.2数据结构与程序关系程序各个模块都要与数据库系统联系。物理数据结构主要用于各模块之间函数的信息传递。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。4.3功能模块的设计与实现4.3.1会员注册模块用户如果想要注册,则按要求输入信息,包括用户名,密码,确认密码。输入完后点击“注册”,则系统自动转入首页。若想重新设置,则可点击“重置”,则系统将已输入的数据清空,等待用户重新输入。注册界面如下:图4 注册界面具体方法代码实现如下:package org.svse.dao;import java.sql.Connection;import java.

18、sql.SQLException;import org.svse.model.Per;public class PerDAO extends BaseDAO public boolean savePer(Per per) boolean isflat = false;String sql = insert into t_per values(?,?);Connection conn = this.getConn();try ps = conn.prepareStatement(sql);ps.setString(1, per.getName();ps.setString(2, per.getP

19、wd();int count = ps.executeUpdate();if (count 0) isflat = true; catch (SQLException e) e.printStackTrace();finallycloseResource();this.closeConn(conn);return isflat;4.3.2用户登录模块 在系统首页的左侧有一个登录窗口,用户可在相应的位置输入用户名和密码。输完后点击“登录”系统即会跳转到相应的用户界面。期间点击“重置”可重新输入用户名和密码。图5 登录界面登录后通过此方法从数据库检索是否有此用户:public Per getPer

20、ByNameAndPwd(Per o)Per per = null;Connection conn = getConn();String sql = select * from t_per where P_name=? and p_password=?;try ps = conn.prepareStatement(sql);ps.setString(1, o.getName();ps.setString(2, o.getPwd();rs = ps.executeQuery();if(rs.next()per = new Per();per.setId(rs.getInt(p_id);/注意这个

21、不能少?per.setName(rs.getString(P_name);per.setPwd(rs.getString(p_password); catch (SQLException e) e.printStackTrace();finallycloseResource();this.closeConn(conn);return per; 4.3.3 查询模块本系统的注册用户或未注册的用户都可直接在系统首页的输入框中输入想要查询的房屋类型,系统会在已发布的房屋信息的标题中进行搜索。并给出相应的搜索结果。例如:某游客想想查询所有的商品房信息就可在首页的搜索框中直接输入“商品房”点击“查询”。

22、系统会将所有标题为商品房的房屋信息搜索出来。图6 搜索界面从页面传递的查询信息,通过此方法来从数据库中检索符合条件的资料:public List getHouseInfoBylike(String key)List list = new ArrayList();String sql = select h_id,h_title,h_price,h_date from t_house where h_title like ?;/h_id不能忘了Connection conn = getConn();try ps = conn.prepareStatement(sql);ps.setString(1

23、, % + key.trim() +%);/注意啊rs = ps.executeQuery();while (rs.next() HouseInfo info = new HouseInfo();info.setH_id(rs.getInt(h_id);/h_id不能忘了,因为detail需要info.setH_title(rs.getString(h_title);info.setH_price(rs.getDouble(h_price);info.setH_date(rs.getDate(h_date);list.add(info); catch (SQLException e) e.pr

24、intStackTrace(); finally closeResource();this.closeConn(conn);return list;4.3.4 用户管理自己租房信息模块 用户登录后可发布自己想要发租的房屋的信息,也可对已发布的信息进行修改、删除等操作。图7 租房信息管理界面通过用户的序列来查找对应用户的房屋出租信息的方法:public HouseInfo getHouseInfo(int h_id) HouseInfo info = null;String sql = select * from t_house where h_id=?;Connection conn = ge

25、tConn();try ps = conn.prepareStatement(sql);ps.setInt(1, h_id);rs = ps.executeQuery();while (rs.next() info = new HouseInfo();info.setH_id(rs.getInt(h_id);info.setH_title(rs.getString(h_title);info.setH_per(rs.getString(h_per);info.setH_tel(rs.getString(h_tel);info.setH_type(rs.getString(h_type);inf

26、o.setH_shi(rs.getInt(h_shi);info.setH_ting(rs.getInt(h_ting);info.setH_price(rs.getDouble(h_price);info.setH_qx(rs.getString(h_qx);info.setH_jd(rs.getString(h_jd);info.setH_date(rs.getDate(h_date);info.setH_remark(rs.getString(h_remark); catch (SQLException e) e.printStackTrace(); finally closeResou

27、rce();this.closeConn(conn);return info;修改对应用户租房信息的代码实现:public boolean updateHouse(HouseInfo info) boolean isflat = false;String sql = update t_house set h_title=?,h_qx=?,h_jd=?,h_shi=?,h_ting=?,h_type=?,h_price=?,h_per=?,h_tel=?,h_remark=? where h_id=?;System.out.println(sql);Connection conn = this.

28、getConn();try ps = conn.prepareStatement(sql);ps.setString(1, info.getH_title();ps.setString(2, info.getH_qx();ps.setString(3, info.getH_jd();ps.setInt(4, info.getH_shi();ps.setInt(5,info.getH_ting();ps.setString(6, info.getH_type();ps.setDouble(7, info.getH_price();ps.setString(8, info.getH_per();p

29、s.setString(9, info.getH_tel();ps.setString(10, info.getH_remark();ps.setInt(11, info.getH_id();int count = ps.executeUpdate();if (count 0) isflat = true; catch (SQLException e) e.printStackTrace();finallythis.closeResource();this.closeConn(conn);return isflat;删除租房信息的具体代码实现:public boolean deleteHous

30、eById(int id) boolean isflat = false;String sql = delete from t_house where h_id=?;Connection conn = this.getConn();try ps = conn.prepareStatement(sql);ps.setInt(1, id);int ncount = ps.executeUpdate();if (ncount 0) isflat = true; catch (SQLException e) e.printStackTrace(); finally closeResource();th

31、is.closeConn(conn);return isflat;第五章 系统测试5.1 测试的作用和意义 系统测试是管理信息系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测试阶段被发现并纠正,问题迟早会在运行中暴露出来,到那时要纠正错误将会付出更大的代价。系统测试占用的时间、花费的人力和成本占软件开发的很大比例。统计表明,开发较大规模的系统,系统测试的工作量大约占整个软件开发工作量的4050。而对于一些特别重要的大系统,测试的工作量和成本更大,甚至超过系统开发其他各阶段的总和的若干倍。因此做好系统交付前

32、的系统测试的目的就是在系统在投入生产性运行之前,尽可能多的发现系统的潜在错误,这是保证系统质量的关键,也是减少系统后期维护投入的最佳方法。5.2 测试方法 本次测试主要是对系统进行黑盒测试。由未参与系统编程的组员参与。通过设计不同的等价输入类对系统的各项功能进行反复运行,观察系统的返回结果来判断系统的各项功能的实现情况。5.3 测试内容1 软件的正常运行、关闭及退出时保存记录情况。2 用户界面是否友好,可操作性及安全性能是否良好。3 数据库的可维护性好,数据的录入、删除及更改是否能顺利完成。5 各模块的共能是否能达到预期要求。6 系统的稳定性是够良好。5.4 测试结果5.4.1注册和登录模块测

33、试 经过测试,用户能在本系统进行正常的注册和登录,并在用户输入不存在的用户名或错误的密码后能给出提示。说明本系统的注册和登录模块的各项功能都圆满实现了。图8 登录成功后的界面图9 输入错误的用户名或密码后系统的提示界面5.4.2 查询模块测试 在本系统的搜索框中输入不同类容进行搜索时系统都能返回准确的结果。例如下图是在搜索输入框中输入“商品”,点击“查询”后系统返回的结果,从中可看出本系统的搜索功能可以正常运行,即说明本系统的查询模块的各项功能都能良好实现。图10 搜索结果界面5.4.3 房屋信息发布、修改和删除模块测试通过在本系统发布若干个房屋信息和系统返回的结果观察,可知本系统的信息发布、

34、修改和删除等各项功能均运行良好。图11 房屋信息发布、修改界面图12 信息发布成功后的界面5.4 结论经过反复测试,系统完成后运行用户注册、登录、管理房屋信息等功能均正常,发布1.0版。虽然此系统仍存在许多缺陷,但是通过该系统设计达到了系统设计目的意义,基本掌握了软件开发的主要步骤,了解了各环节在开发时要注意的问题,从方便用户的角度出发,去考虑开发出好的软件。另外,在设计过程中也逐渐提高了软件开发技能和编程技能。因此本设计虽然较粗糙,但是从学习的角度上看,非常有意义。第六章 总结在本系统的开发过程中,使我们更清楚的了解了 JAVAEE系统的开发流程, 但由于是第一次把 JAVA 语言应用于WE

35、B建设, 因此系统必然会存在一些缺陷和不足,特别是在功能方面不是很完善,但我们会在今后的学习过程中不断修改,使系统更加完善。尽管本系统存在着一些不足之处,但其基本功能全面、易于日后程序更新、数据库管理容易、界面美观友好、操作方便、效率高、安全性好等优点是本系统所必需的。相信本房屋出租系统在网络信息宣传中是一套非常有用的系统。在本次课程设计中,我们受益匪浅,这对于我以后的工作和学习都有一种巨大的帮助。在此,感谢颜富强老师耐心的辅导。另外,在系统开发过程中通过组员之间的密切合作,大家互相帮助,勇于向实际困难挑战,基本完成此次设计,极大增强了团队合作意识参考文献1. 张海藩著,软件工程导论(第五版),清华大学出版社,2008年2. 郑人杰著,软件工程,人民邮电出版社,2009年3. 闪四清著,邵明珠译,SQL Server 2008数据库应用实用教程,清华大学出版社,2010年4. 郑阿奇著,SQL Server实用教程(第3版),电子工业出版社,2009年5. 郝玉龙著,JavaEE编程技术,清华大学出版社,2008年6. 吴映波著,Java EE 5开发基础与实践,清华大学出版社,2008年7. 李芝兴、杨瑞龙著,Java EE Web编程,机械工业出版社,2008年1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com