王利民 ,韩义勇,雷 霆
(1.广西玉柴机器股份有限公司,广西 玉林537005;2.天津大学 计算机科学与技术学院,天津300072)
社区是居民居住的主要环境,社区的管理和服务与社区住户息息相关。社区居民希望能更方便地了解自己所居住的社区环境,能够更直接地与社区服务部门交流和沟通。社区服务系统正是为了满足社区居民的这种需求而开发的。系统采用ASP.NET[1-2]技术,将SQL Server[3-4]作为后台数据库,开发了基于客户机/服务器的社区服务系统,为社区用户提供了方便了解社区信息的途径。
社区服务系统面向的主要用户群及其需求如下:
(1)小区居民:需要上网查询相关信息,包括小区最近有什么通知、自己的收费情况,以及一些相关的资讯信息等,他们是主要的使用者。
(2)物业公司:可以通过此系统来发布收费情况和通知公告。
(3)普通浏览者:可以访问网站,获得小区的相关信息,但是有些信息是不能看到的,此系统可以展示小区风貌。
(4)管理员:负责系统的维护和一些相关信息的发布,以及论坛的管理等。物业公司发布通知和收费情况是通过管理员来实现的,管理员也是此系统的直接使用者。
1.1.1 功能性需求
(1)管理员对住户的数据进行管理,对社区管理和收费情况进行各种操作。
(2)管理员能够发布新闻和通知,管理论坛。
(3)普通用户登录系统之后可以浏览页面,查询感兴趣的信息,比如衣食住行的连接。还可以进入论坛,但是没有发贴的权限。
(4)小区的注册会员可以获得一些普通用户无法获得的服务,比如查看收费和到论坛发帖。
1.1.2 非功能性需求
(1)对客户端的各种浏览器支持要广泛,使访问方便。
(2)管理员能经常在线管理,及时回复大家的问题和一些情况的汇报,等待时间不要超过1 h。
(3)当访问量大时,设置好的服务器配置不要出现无法连接的情况。
系统用例比较多,但是它们之间都有相似性,经过分析用例,对用例的行为描述和参与者与系统之间通过用例的分析,获得直接与系统交互的用例清单,如表1所示。
表1 社区服务系统用例表
表1列出了整个系统交互的参与者、用例名和用例描述,其中用例描述是用来描述此用例的参与者与系统之间的交互行为。
图1 社区服务系统用例模型图
社区服务系统用例模型图如图1所示。图1是整个系统的用例图,其中系统的参与者被简化,只有普通用户、注册会员和管理员3种,他们有的用例是类似的,所有用例均在图中列出。
在分析用例的基础上,继续发现对象、筛选建议对象之后确定对象有:用户信息、新闻、资讯、收费情况、访客记录、论坛帖。
然后确定关联关系和重数、概化/特化关系以及聚合关系,在这些分析之后获得社区服务系统的类图如图2所示。
此处以注册用例为例画出其顺序图,其余则略。
注册功能包括的各对象有:普通用户、注册页面、数据库。生命线是垂直的线,垂直线之间的箭头表示动作,从上到下是表示顺序,如图3所示。
社区服务系统各功能模块之间的结构如图4所示。
以添加社区新闻及查看收费模块为例来说明详细设计过程。
(1)新闻信息添加
管理员可以添加新闻并实时发布一些通知和公告等。点击添加新闻按钮会跳到另外一个AddNews.aspx的页面,在此页面填写新闻标题、新闻内容、发布者和发布时间后提交;然后后台数据库生成一个OperateDB类,提取页面各个TextBox控件中的文本,调用存储过程将新闻插入到数据库中,数据库中将自动生成一个有顺序的newsID,保存为一条新的新闻记录。添加新闻的活动图如图5所示。
(2)小区收费情况发布和查看
小区收费情况指的是物业公司的收费情况发布,只有注册登录的会员才可以看到这个功能。登录之后可以看到一个 “查看收费”的按钮,点击触发事件跳转到showfees.aspx页面,然后根据输入的数据进行查询。如果只输入栋号,则此栋的所有用户收费情况都会列出;如果输入栋号和单元号,则会显示此栋此单元的收费情况,如果再填入房屋号,就可以看到具体某间住户的收费情况。这样的查询方式便于查看和对比,但只提供给注册会员查看。
如果以管理员的身份登录,则还有增加和删除记录的功能,管理员能够使以增加记录和删除记录。
此模块使用功能强大的GridView[5-6]控件,因为要根据控件内容来显示不同的数据,所以为了动态地绑定数据,需要在后台进行。后台绑定的优势是灵活,可以根据不同的条件来进行绑定,所以使用起来更加方便。
图2 社区服务系统类图
图3 注册用例的顺序图
图4 系统模块结构图
查看收费情况的活动图如图6所示。
本文对社区服务系统进行了分析与设计,系统实现了居民社区服务的信息化和电子化,使居民生活更加方便,居民与物业公司居委会更好地交流,居民之间更好地接触与互相帮助,营造一个良好地小区居住软环境。
图5 新闻信息添加活动图
图6 查看收费情况的活动图
[1]郝刚,袁永刚,严治国,等.ASP.NET 2.0开发指南[M].北京:人民邮电出版社,2006.
[2]龚赤兵.ASP.NET 2.0网站开发实例教程[M].北京:人民邮电出版社,2006.
[3]徐迎晖.基于.NET的WEB数据库中间件的设计与实现[J].计算机技术与发展,2006,16(9):13-15.
[4]杨智泽.浅析SQL存储过程在.NET数据库中的应用[J].山西广播电视大学学报,2006,11(5):34-35.
[5]高继,任贺宇,熊建芳.基于 ASP.NET的ADO与 ADO.NET 分析与 研 究[J].计 算机与现代 化 ,2006(7):36-38.
[6]杨智泽.简论提高 ASP.Net应用程序性能的六种策略[J].微电子学与计算机,2006,23(7):34-35.