需求分析 应用服务的图形界面,有助于用户理解和高效的定位应用服务,负责处理用户的输入和向用户的输出,但并不负责解释其含义(出于效率的考虑,它可能在向上传输用户输入前进行合法性验证),这一层通常用前端工具(VB,VC,ASP等)开发;业务逻辑层位于显示层和数据层之间,专门为实现企业的业务逻辑提供了一个明确的层次,在这个层次封装了与系统关联的应用模型,并把用户表示层和数据库代码分开 。其主要功能是执行应用策略和封装应用模式,并将封装的模式呈现给客户应用程序,它是上下两层的纽带,它建立实际的数据库连接,根据用户的请求生成SQL语句检索或更新数据库,并把结果返回给客户端,这一层通常以动态链接库的形式存在并注册到服务器的注册簿(Registry)中,它与客户端通讯的接口符合某一特定的组件标准(如COM,CORBA),可以用任何支持这种标准的工具开发;数据层是三层模式中最底层,他用来定义、维护、访问和更新数据并管理和满足应用服务对数据的请求。
三层模式的主要优点为 :
①良好的灵活性和可扩展性。对于环境和应用条件经常变动的情况,只要对应用层实施相应的改变,就能够达到目的。
②可共享性。单个应用服务器可以为处于不同平台的客户应用程序提供服务,在很大程度上节省了开发时间和资金投入;
③较好的安全性。在这种结构中,客户应用程序不能直接访问数据,应用服务器不仅可控制哪些数据被改变和被访问,而且还可控制数据的改变和访问方式 。
④增强了企业对象的重复可用性。“企业对象”是指封装了企业逻辑程序代码,能够执行特定功能的对象。随着组件技术的发展,这种可重用的组件模式越来越为软件开发所接受。
⑤三层模式成为真正意义上的“瘦客户端”,从而具备了很高的稳定性、延展性和执行校率。
⑥三层模式可以将服务集中在一起管理,统一服务于客户端,从而具备了良好的容错能力和负载平衡能力。
7
北京信息职业技术学院毕业论文
My Eclipse的运用可以轻松地使用近年流行的三层结构模式开发WEB站点或基于B/S结构的应用程序。它可以使程序具有更好的扩展性,灵活性,安全性,平台无关性以及可维护性。My Eclipse的三层结构开发方法思想与Java类似:Java中的三层架构为前端的HTML,JSP,Serverlet,中间层为JavaBean,EJB,后面为数据器库服务器。而在My Eclipse中,前端为HTML,asp,aspx等,中间层为扩展名是.vb,.cs等文件编译而成的.dll控件,后面为数据库服务器。
多层结构的应用正是在对C/S 结构的总结基础上产生的,并且也已经扩展到了B/S应用开发领域。
学生成绩管理信息系统是由 Web后台进行统一管理,所有业务逻辑都集中在Web应用程序中管理和制定,具有数据的录入和查询统计等功能,客户端的分布广泛,数据集中处理,因此在设计时充分考虑各种体系结构的优缺点,选择三层WEB模式进行开发实现。
2.2.4 面向对象的开发过程
面向对象的软件开发和相应的面向对象的问题求解是当今计算机技术发展的重要成果和趋势之一,C#是一种面向对象的语言。面向对象编程具备了几个优点,比如:代码维护方便、可扩展性好、支持代码重用技术等等。这些优点是过程编程语言所不具备的。下面我们就来谈谈面向对象技术的这些优点:
(1) 可管理性 维护简单
对于面向过程的开发来说,版本管理主要是管理函数以及全程变量,而函数可以有很大的变动,同样,全程变量也可以有较大的变动,但是,对于面向对象程序设计来讲,一个系统是有对象来组成的,而对象是由类生成的,因此只需管理类就行,一个系统中,类是相对稳定的,因此便于管理.
(2) 模块化
6
需求分析 是面向对象编程中的一个特征。实体被表示为类和同一名字空间中具有相同功能的类,我们可以在名字空间中添加一个类而不会影响该名字空间的其他成员。
(3) 可扩充性
是对现代应用软件提出的又一个重要要求,即要求应用软件能够很方便,容易的进行扩充和修改,这种扩充和修改的范围不但涉及到软件的内容,也涉及到软件的形式和工作机制.
面向对象编程从本质上支持扩充性。如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。
面向对象的程序设计可以用很好的可扩充性.这是由于类可以根据人对事物的理解而进行丰富,没有必要进行作大的改动,可以利用继承,对新的类添加属性和方法.用它可以生成系统的简单雏形,在征求用户的意见,在加入新的类,以及类的方法与属性等.
(4) 代码重用
可重用性是面向对象软件开发的一个核心思路.面向对象程序设计的抽象,封装,继承,多态的四大特点都无一例外,或多或少的围绕着可重用性这个核心并为之服务.
由于功能是被封装在类中的,并且类是作为一个独立实体而存在的,提供一个类库就非常简单了。事实上,任何一个.NET Framework编程语言的程序员都可以使用.NET Framework类库,.NET Framework类库提供了很多的功能。更令人高兴的是,我们可以通过提供符合需求的类来扩充这些功能。
可重用性体现在两个方面:
(1) 开发的类可以被别人以及别的项目使用
(2) 由于可以继承,因此可以实现代码级的重用.
2.2.5 数据库系统选择
本系统将采用Microsoft SQL Server2005作为系统的DBMS支撑,SQL Server2000是能够支持企业级关系型数据库的管理系统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用户界面风格与Windows一
7
北京信息职业技术学院毕业论文 样非常友好。SQL Server2005在存储大容量数据方面,在数据的安全性和完整性方面,在分布式处理等都是适合于企业级应用的。而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较低。采用SQL Server2005 + My Eclipse开发本系统是一个较为理想的组合。
SQL Server2005的新特点:
动态的自我管理:SQL Server2005运行时动态配置运行环境,优化并简化了许多服务器配置选项,可随用户增多或者减少动态地请求追加或者释放资源,并可随数据的增减自动改变数据库大小。
丰富的管理工具:SQL Server2005提供了许多数据库系统管理工具。系统管理员可以在运行SQL Server Enterprise Manager的中央控制台上,管理和监视服务器运行性能和企业数据库。
可编程的管理:SQL分布式对象可用于编写应用程序,这就可以使应用程序数据包透明地将SQL Server 2005嵌入应用程序中。也可以使用SQL-DMO为不同站点的通用的管理任务建立应用程序。
可能收缩性和高可能性:SQL Server 2005数据库引擎可以几乎所有Windows平台上运行,是可管理上千万个用户的大型数据库。同时其还具有动态自我调解的特性,能有效地在笔记本或者PC上运行。
支持数据仓库: SQL Server 2005支持数据仓库。
系统访问Internet集成:SQL Server 2005与其他产品一起为Internet或Intranet系统形成一个稳定的安全的数据存储;可为运行在IIS下的Web应用程序提供一个高性能的数据存储服务;此外,SQL Server2000数据库引擎还包括了对XML的本地支持,Transact-SQL结果可以作为XML文档返回给使用OLEBD和ADO API的应用程序,XML文档还可以添加到SQL Server 2005中。
综上所述,在开发空警管理信息系统时,采用SQL Server 2005作为数据库管理系统。
2.2.6开发方法的选择
在开发方法的选择上,选择了演绎式原型法与生命周期法相结合的方法。具体来说,就是在系统开发之前对系统有一个总体框架设想,各功能单元的结构和
6
需求分析 功能也比较清楚,但是还没有具体实现。系统完成什么功能,分成哪几个部分,各个部分又有哪几个模块,都已理解掌握,且以后不需要做更大的变动,只是具体到每个模块,还没有全部实现。具体地设计可能是完全实现一个模块,也可能是用一个效率高地模块代替一个旧模块。信息系统的开发是一项比较复杂的工作,我们必须选用科学的有效的开发方法。近年来,国内外已逐步总结出一些开发信息系统的方法和技术,但是,从目前的情况来看,系统的开发技术仍是一个比较薄弱的环节。那么根据本系统开发的要求,本系统选择了生命周期法和原型法相结合的方法。现具体介绍如下:
生命周期这个概念源于系统工程方法。广义地说,任何系统均有其发生、发展、成熟、消亡或更新换代的过程,这个过程称为系统的生命周期。主要包括系统调查阶段、系统分析、系统设计、系统实施及系统维护与评价五个部分。根据系统设计而对整个系统实施,包括物理实施,程序设计,调试等。实施是最后的一步,关系着最后的成功。
在建筑学和机械设计学中,“原型”指的是其结构、大小和功能都与某个物体相类似的模拟该物体的原始模型。在管理信息系统开发中,用“原型”来形象地表示系统的一个早期可运行版本,它能反映新系统的部分重要功能和特征。“原型方法”则是利用原型辅助开发系统的一种新方法。原型方法要求在获得一组基本的用户需求后,快速地实现新系统的一个“原型”,用户、开发者及其他有关人员在试用原型的过程中,加强通信和反馈,通过反复评价和反复修改原型系统,逐步确定各种需求的细节,适应需求的变化,从而最终提高新系统的质量。因此可以认为原型方法确定用户需求的策略,它对用户需求的定义采用启发的方式,引导用户在对系统逐渐加深理解的过程中作出响应。
原型法主要包括确定系统基本需求阶段、构造初始原型阶段、原型的使用评价阶段、修改原型阶段和确定模型后的处理阶段。
原型法的基本思想是:凭借着系统分析人员对用户要求的理解,在强有力的软件环境支持下,快速地给出一个实实在在的模型(或称原型、雏形),然后与用户反复协商修改,最终形成实际系统。
在本系统中选择了演化型(EvolutionaryPrototying)原型法,其目的不在于改进规格说明和用户需求,而是将系统改造得易于变化,在改进原型的过程中将原型
7