基于构件的学生宿舍管理信息系统的构建
2016-05-30王昌建
【摘 要】分析了基于构件的学生宿舍管理信息系统的主要技术,包括设计模式、基于构件的设计方法等,并对系统进行了设计和实现。
【关键词】构件技术 宿舍管理系统 SQL server
1 引言
过去几年来,软件复用技术已融入软件工程建设主流之中。许多软件设计技术如可视化编程、云计算等为广大工程技术人员和系统开发者的首选技术。事实上这些技术和工具提供的開发环境,其真正的效益并不在于它们所提供的可视化编程范型,而在于它们对软件复用的基础支持。
2 基于构件的学生宿舍管理信息系统
2.1 基于构件的复用系统设计模式
应用软件系统的开发过程通常包含需求分析、系统设计、编码、测试、维护等几个典型阶段。采用软件复用技术可以有效地避免各应用系统在以上各阶段可能出现地重复劳动,其宗旨是应用系统开发不在一切从头开始地模式,而以已有工作成果为基础,充分利用过去开发时积累的经验和知识(如需求分析结果、设计方案、测试计划、维护方法等),乃至可直接使用或稍加修改后便可使用的源代码、功能模块等。
基于构件的软件复用系统设计同一般的软件工程设计过程(如瀑布模型)类似,它主要由以下几个方面组成:
1.需求分析
由用户或系统分析员对已有成果进行分析,结合应用系统的特殊要求,在深刻理解用户需求的基础上,编写系统功能和用法的非形式化描述,输出为需求说明和新产生的可复用知识、规则等。
2.功能分析
用形式化语言描述系统功能,包括复用部分和可作为可复用构件的部分。输出为功能说明和可复用构件描述。也可将该过程归入总体设计。
3.详细设计
用可复用的构件构造软件的算法描述。在该阶段,针对具体算法还将产生可复用的构件功能级描述,以便生成新的可复用构件。
4.编码
构造可执行代码,包括直接利用(或修改后)可复用构件,并按构件接口规则生成新的可复用构件。
5.运行维护
在功能级上进行维护。
6.软件复用和理解
经充分考验的软件及设计说明均可作为可复用的构件存库。
详细设计和编码阶段,将涉及可复用构件的检索、修正、组合。在最后阶段还将面临构件入库的问题。实际上,这正是软件复用的核心开发模式,可用如下图1表示。
入库前的标识是实现复用的前提,以便在复用时快速检索到可复用的构件。可复用构件的可靠性、正确性是非常重要的,因而在标识后还必须进行严格地测试和审查,即对可复用构件进行验证。入库前的最后一个过程为分类,即对可复用构件的功能、用法、适用范围、接口等进行说明性描述,以便为构件检索提供准备。
2.2 构件的设计方法
基于构件的软件复用技术不同于以往的各种软件构造方法,它更着重于可复用构件的检索与使用方法,即用现有的构件组装软件系统。可复用构件的获取是基于构件的软件复用系统的前提。而从应用领域中设计可复用构件则是系统实现的关键。
软件构件化方式是对具有特定功能的构件对象进行设计与实现,就像上图中“设计可复用的构件”,再将构件对象组合起来生成软件系统的开发方式。这种方式如同硬件那样,是基于面向对象的、以嵌入后立即使用的即插即用型软构件的概念为中心,通过构件的有机组合来建立应用系统的技术体系。构件具有可视化、規格标准化、可立即执行等几大特征,方便使用,可靠性强。
2.3 基于构件的应用软件系统的体系结构
在软件工程实践中,应用软件系统的开发一直是一项困难的工作,软件开发的主要困难在于系统分析及系统多变性而造成的软件维护量大。具体而言,存在着需求的不确定性和易变性、可复用性差、编码工作量大、非形式化、维护困难等问题。因此其直接后果是体系结构设计只是被开发人员含糊的理解,体系结构的选择建立在直觉和经验上,而非坚实的工程原则上,难以对体系结构设计做出一致或完整的分析等等。软件构件化技术被普遍认为是解决这些难题的一个很有前途的解决方案,它是继面向对象技术之后发展起来的一种新的软件工程技术。良好的系统体系结构对保证系统的成功起着至关重要的作用,如同高楼大厦一样,每个软件系统都有一定的系统体系结构。
2.4 基于构件的学生宿舍管理信息系统总体设计
根据上述的思路,在这里简要的分析一下学生宿舍管理信息系统。随着高校教育计划的扩充,学校规模的扩大,越来越多的学生集聚在大学校园里面,以前手工操作的宿舍管理己经很不适应学生急剧增加的形式了,于是对学生宿舍进行科学化、规范化管理迫在眉睫。而基于构件的学生宿舍管理信息系统,利用计算机实现了学生基本情况、学生住宿分配、住宿人员管理等。
通过采集信息、调研、对用户的需求分析及目前宿舍管理状况的分析总结出系统包括以下几个模块:
(1)宿舍管理模块
(2)学生基本情况管理模块
(3)学生住宿分配管理模块
(4)住宿人员管理模块
(5)物业物资管理模块
(6)后勤人员管理模块
(7)财务管理模块
(8)用户权限管理模块
系统框架的功能总体设计框架如下图2所示。
3 基于构件的学生宿舍管理信息系统结构及开发环境
3.1 分层结构
系统采用三层结构的计算机体系,其三层结构应用软件模型如下图3所示。
第一层,客户服务层。负责处理与用户的交互和与应用服务器的交互。它负责实现在客户系统上的数据显示和操作,以及对用户输入作合理性校验。
第二层,应用层。介于客户层与数据服务层之间,分别与客户服务层和数据服务层交互。它负责接受客户方应用程序的请求,再根据应用逻辑将该请求转化为数据库请求后与数据库服务器交互,并将与数据库服务器交互的结果传送给客户机的应用程序。
第三层,数据服务层。根据应用服务器发送的请求,进行数据库操作,为Web服务器和应用服务器提供数据信息。
3.2 系统的开发环境
系统环境需求是:PIII500以上CPU,512M以上内存,软件采用Windows2000作為系统及网络软件,SQL Server
2005作为后台数据库管理软件,C#作为前台用户界面开发软件。
对软件的性能指标要求是:人机界面交互反应时间不超过4秒,系统启动运行不超过15秒,占用内存不大于100M,占用外存不大于500M,具有密码口令验证安全保密功能。
SQL Server不是一个数据库,它是一个关系型数据库管理系统,是用来存储和管理数据库的引擎。SQL Server是一个作为服务运行的Windows应用程序。这就是说,它要运行在Windows环境下,并且启动后需要极少的用户交互。SQL Server提供了用于建立用户连接、提供数据安全性和查询请求服务的全部功能。
C#是面向.NET的开发工具。C#是一种现代的面向对象的程序开发语言,它使得程序员能够在.NET平台上快速开发种类丰富的应用程序。.NET平台提供了大量的工具和服务,能够最大限度的发掘和使用计算和通信能力。并且使用C#语言设计的组件能够用于Web服务,这样通过Internet,可以被运行于任何操作系统上任何编程语言所调用。其显著特点是:简洁的语法、精心的面相对象设计、与Web的紧密结合、完整的安全性和错误处理、版本处理技术以及灵活性与兼容性等。
3.3 系统体系结构
系统采用三层体系结构,其构件体系如图4所示,横向即为三层应用,纵向为构件层次。
图4 系统构件体系
从数据相关性的角度来看,构件可分为三类:第一类只与客户端数据有关,与后台数据无关,适合放在客户端;第二类与客户端、后台数据均有关,适合放在应用服务器:第三类只与后台数据有关,与客户端数据无关,后者后台数据已满足构件功能处理的需要,适合放在数据库服务器。
4 基于构件的MIS开发模型
综上所述,整个系统的开发均采用了基于构件的软件复用思想。通过领域分析技术建立了领域模型和提取构件。在分析了学生宿舍管理信息系统需求文档的基础上,抽取出该领域的共同部分即领域模型,将其不变部分做成通用构件,将其可变部分做成知识库、数据库。通过领域分析,可以做成了以下几类的通用构件:文档类,计算类,统计类,查询类,报表类,计划类。这几种通用构件产生后,将它们装入领域通用构件库供系统调用。做好以上几类领域通用构件后,复用它们,并形成开发领域的专用构件。
5 小结
本文根据提出的思想和方法,分析了一个基于构件的软件复用的学生宿舍管理信息系统。简要介绍了该系统的总体设计思想和系统组成,并采用三层结构体系构建系统。研究了基于构件的宿舍管理系统体系结构以及构件的分层结构,分析了系统的开发模型和设计的各构件的功能。从应用角度说明了可复用构件及软件复用技术在系统设计和快速实现方面所具有的突出优势和强大的生命力。
参考文献
[1]杨芙清.构件技术引临软件开发新潮流[M].北京:电子出版.2005.2
[2]曹春萍,龚崇栋.基于可复用构件的软件开发过程[J].上海水产大学学报.2005.3
[3]贺新闻.基于可復用构件MIS开发模式探讨[J].中国管理信息化(综合版).2006,(10)
作者简介:王昌建(1977-),男,辽宁盘锦人,副教授,研究方向为软件设计与开发、教育教学方法研究。