一. 信息系统开发方法
1) 结构化方法
结构化方法是应用最为广泛的一种开发方法。按照信息系统生命周期,应用结构化系统开发方法,把整个系统的开发过程分为若干阶段,然后一步一步地依次进行,前一阶段是后一阶段的工作依据;每个阶段又划分详细的工作步骤,顺序作业。
特点:( l )遵循用户至上原则。
( 2 )严格区分工作阶段,每个阶段有明确的任务和取得的成果。
( 3 )强调系统开发过程的整体性和全局性。
( 4 )系统开发过程工程化,文档资料标准化。
缺点:开发周期长,设计说明繁琐,工作效率低。
2) 原型法
原型法认为在很难一下子全面准确地提出用户需求的情况下,首先不要求一定要对系统做全面、详细的调查、分析,而是本着开发人员对用户需求的初步理解,先快速开发一个原型系统,然后通过反复修改来实现用户的最终系统需求。
原型应当具备的特点如下。
( l )实际可行。
( 2 )具有最终系统的基本特征。
( 3 )构造方便、快速,造价低。
缺点:用户配合不好,盲目修改,就会拖延开发过程。
3) 面向对象方法
面向对象的信息系统开发,其关键点是能否建立一个全面、合理、统一的模型
它既能反映问题域,也能被计算机系统求解域所接受一般将多种开发方法组合用应用。面向对象开发方法主要有分析、设计和实现三个阶段。
面向对象的基本概念: 面向对象的基本概念有对象、类、抽象、封装、继承、多态、接口、消息、组件、模式和复用等。 面向对象系统分析与设计。
二.可视化建模与统一建模语言 1 .统一建模语言(Unifief Modeling Language UML)的概念:是一个通用的可视化建模语言,它是面向对象分析和设计的一种标准化表示,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。它记录了对所构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。 统一建模语言UML具有以下特征 ( 1 )不是一种可视化的程序设计语言,而是一种可视化的建模语言。 ( 2 )是一种建模语言规范说明,是面向对象分析与设计的一种标准表示 ( 3 )不是过程,也不是方法,但允许任何一种过程和方法使用它。 ( 4 )简单并且可扩展,具有扩展和专有化机制,便于扩展,无需对核心概念进行修改。 ( 5 )为面向对象的设计与开发中涌现出的高级概念(如协作、框架、模式和组件)提供支持,强调在软件开发中,对架构、框架、模式和组件的重用 ( 6 )与最好的软件工程实践经验集成。 2. UML的设计目标 最重要的目标是使UML成为一个通用的建模语言,可供所有建模者使用。 最终目标是在尽可能简单的同时能够对应用系统的各个方面建模。 3. UML视图
4. 使用面向对象技术进行软件开发的最佳实践― RUP(生命周期模型有提到,与UML有什么联系,即UML与RUP之间的关系和作用???)
RUP (Rational Unified Process 的缩写,翻译成中文就是“统一软件过程”)是软件工程的过程。它提供了在开发组织中分派任务和责任的纪律化方法。它的目标是在可预见的日程和预算的前提下,确保满足最终用户需求的高质量产品。 因此RUP是一个流程定义平台,是一个流程框架。RUP又将周期划分为4个连续的阶段:初始阶段,细化阶段,构造阶段和交付阶段。 RUP 的6 个基本最佳实践经验如下。 三。软件构架 1. 软件构架的概念:将软件系统划分成多个模块,明确各模块之间的相互作用,组合起来实现系统的全部特性,就是系统的架构。将其简单理解为:软件架构为软件系统提供了一个结构、行为和属性的高级抽象,并由构成系统的元素的描述及元素的相互作用、元素集成的模式以及这些模式的约束组成。 软件总是有构架的,不存在没有构架的软件。 2。典型构架 1)管道/过滤器模式 2 )面向对象模式 抽象数据类型概念对软件系统有着重要作用,面向对象模式建立在数据抽象和面向对象的基础上,将数据的表示方法及其相应操作封装在一个抽象数据类型或对象中。 3)事件驱动模型 事件驱动模式的基本原理是构件并不直接调用过程,而是触发一个或多个事件。系统中的其他构件可以注册相关的事件,触发一个事件时,系统会自动调用注册了该事件的构件过程,即触发事件会导致另一构件中过程的调用。 4 )分层模式 分层模式的典型应用是分层通信协议,如1S0 / 0S1 的七层网络模型. 5)知识库模式 6)客户机/服务器模式 四。软件中间件
为了解决分布系统的异构问题,人们提出了中间件(Middleware )概念。
几种主要的中间件: 1)数据库访问中间件 2)远程过程调用 3)面向消息中间件 4)分布式对象中间件 5)事物中间件 五。典型应用集成技术。
1.数据仓库(Data Warehouse )是一个面向主题的(Subject oriented )、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。可以从两个层次理解数据仓库:首先,数据仓库用于决策支持,面向分析型数据处理,不同于企业现有的操作型数据库;其次,数据仓库是对多个异构数据源(包括历史数据)的有效集成,集成后按主题重组,且存放在数据仓库中的数据一般不再修改。 OLAP联机事务处理
数据仓库(DW)和数据挖掘(DM)的关系 2. Web Services 技术 ( 2 )应用程序集成 ( 3 ) BZB 集成 ( 4 )软件重用 web 服务也可能会降低应用程序的性能。不适合使用W 七b 服务的情况如下。 3. J2EE 架构、.NET 架构 1) . J2ZZ 架构 J2ZZ ( Java 2 Platform Enterprise Edition )是由Sun 公司主导、各厂商共同制定并得到广泛认可的工业标准。 ( 4 ) nEE 参考实现 2). .NET 构架 微软的.NET 是基于一组开放的互联网协议而推出的一系列的产品、技术和服务。.NET 开发框架在通用语言运行环境基础上,给开发人员提供了完善的基础类库、数据库访问技术及网络开发技术,开发者可以使用多种语言快速构建网络应用。.NET 开发框架如图所示。
4. 工作流技术 工作流(Workflow )就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。 5. 构件及其在系统集成项目中的重要性 构件技术就是利用某种编程手段,将一些人们所关心的,但又不便于让最终用户去直接操作的细节进行了封装,同时对各种业务逻辑规则进行了实现,用于处理用户的内部操作细节。这个封装体就常常地被称作构件。 构件封装了系统运行的各种规则甚至运行环境,而构件对象(构件的集合),要考虑到构件对象中的各个构件的协调功能。构件有其自身的规则实现,而规则的实现又具体到了接口的实现,构件对象本身也是一个构件,也有业务逻辑规则需要处理,要起到相关构件的协调作用。 6. 常用构件标准 1 . COMIDCOMICOM + 3 . EJB
六。计算机网络知识(略) 1。网络存储模式:DAS(直连).NAS(以太网连接),SAN(光纤网络连接). 2.综合布线、机房工程
2 )综合布线系统的范围 2.机房工程 l )机房工程概念及要求 2 )机房工程设计原则 在进行机房设计时,遵循以下设计原则。 (1)功实用性和先进性。 (2)安全可靠性。 (3)灵活性和可扩展性。 (4)标准化。 (5)经济性/投资保护 (6)可管理性。 七。项目生命周期 1. 项目生命周期定义了从项目开始直至结束的项目阶段。 大多数项目生命周期定义的阶段顺序通常从技术上可以这样来划分阶段:需求分析、系统设计,系统构建、系统运行。阶段的交付物通常都经过技术正确性的评审,并在下一阶段开始前得到批准。阶段之间要完成技术交接或移交。 也可以按管理活动出现的先后,把项目的生命周期划分为启动、计划、执行和收尾等4 个典型的阶段。针对一个具体的项目,根据项目管理的需要,其项目的阶段可以不止4 个. 根据需要,在条件许可或涉及的风险可以接受时,下一阶段可以在前一阶段完成前开始,这种部分重叠阶段的做法就叫快速跟踪管理技术。 项目生命周期通常定义如下: 每个阶段的交付物应何时产生? 对每个交付物如何进行评审、验证和确认? 每个阶段都有哪些人员参与? 如何控制和批准每个阶段? 至于典型的信息系统项目的生命周期,一般可划分为可行性分析、业务流程优化或变革、信息系统规划、系统需求分析、系统设计、系统实现、系统测试、系统实施、系统试运行、验收等阶段。 2.项目阶段的特征 每个项目阶段都以一个或一个以上的可交付物的完成为标志,这种可交付物是一种可度量、可验证的工作成果。项目阶段一般要完成若干可交付物,是一个用来确保对项目的适当控制、为了获得项目目标要求的产品或服务而在项目生命周期中划出的一个时间段。 项目生命周期的典型阶段如下图所示:
3. 项目生命周期与产品生命周期的关系 一个项目要交付特定的产品、成果和完成特定的服务。项目生命周期定义项目的开始与结束。假如一个项目交付特定的产品,那么该产品的生命期比项目生命周期更长,从该产品的研发(此时是项目的任务),到该产品投入使用(或运营),直到该产品的消亡就构成了该产品的生命周期。
八。典型生命周期模型
1. 1 .瀑布模型
瀑布模型中每项开发活动具有以下特点: ( l )从上一项开发活动接受其成果作为本次活动的输入。 ( 4 )对本次活动的实施工作成果进行评审。 缺点: 过程基本不可迭代,需求在开始的不确定性,错误到最后才能发现,开发进程呈现塞阻状态 2 . V 模型
V 模型的左边下降的是开发过程各阶段,与此相对应的是右边上升的部分,即各测试过程的各个阶段。 3 .原型化模型 如图所示:
增量模型也是原型化开发方法。如图所示
模型要点:瀑布和原型模型相结合,强调版本升级。
4.螺旋模型
图中的螺旋线代表随着时间推进的工作进展;开发过程具有周期性重复的螺旋线形状。4 个象限分别标志每个周期所划分的4 个阶段:制定计划、风险分析、实施工程和客户评估。螺旋模型要点:统一了瀑布模型与原型模型,与增量模型相似,更强调风险分析。 5 .迭代模型 喷泉模型:体现认识事物的循环迭代性,强调开发活动之间的无间隙性,无明显的活动阶段划分,适用于面向对象的开发过程。如图所示:
RUP ( Rational Unified Process )软件统一过程是一种“过程方法”,它就是迭代模型的一种。如图所示。
RUP中的软件生命周期在时间上被分解为4 个顺序的阶段,分别是:初始阶段( Inception )、细化阶段(Elaboration )、构建阶段(Construction )和交付阶段(Transition )。这4 个阶段的顺序执行就形成了一个周期。每个阶段结束于一个主要的里程碑(Major Mileslones )。在每个阶段的结尾执行一次评估以确定这个阶段的目标是否己经满足。
( 1 ) 迭代式开发。
( 2 )需求管理。
( 3 )使用以组件为中心的软件架构。
( 4 )可视化软件建模。
( 5 )验证软件质量。
( 6 )控制软件变更.
在管道/ 过滤器架构模式中,每个构件都有一组输刀输出,构件读取输入的数据流,经过内部处理后,产生输出数据流,该过程主要完成输入流的变换及增量计算。
事件驱动模式的主要特点是事件的触发者并不知道哪些构件会受到事件的影响,且不能假定构件的处理顺序,甚至不知道会调用哪些过程,使用事件驱动模式的典型系统包括各种图形界面工具。
分层模式采用层次化的组织方式,每一层都是为上一层提供服务,并使用下一层提的功能。
知识库模式采用两种不同的构件:中央数据结构构件说明当前状态,独立构件在中央数据存储上执行,中央数据构件与独立的外部构件间的相互作用是系统中的主要问题。知识库模式有两种不同的控制策略:如果输入流触发进程执行的选择,则为基于传统数据库型的知识库模式:如果中央数据结构的当前状态触发进程执行的选择,则为基于黑板系统的知识库模式。
客户机服务器(Client/Server , C / S )模式是基于资源不对等,为实现共享而提出的。C / S 模式将应用一分为二,服务器(后台)负责数据管理,客户机(前台)完成与用户的交互任务。c / s 模式具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。
客户机/服务器模式的示意图(如下),由两部分构成:前端是客户机,通常是PC : 后端是服务器,运行数据库管理系统,提供数据库的查询和管理。
中间件是位于硬件、操作系统等平台和应用之间的通用服务,如图所示,这些服务具有标准的程序接口和协议。不同的硬件及操作系统平台,可以有符合接口和协议规范的多种实现.
Web 服务〔 Web Services )定义了一种松散的、粗粒度的分布计算模式,使用标准的HTTP ( s )协议传送XML 表示及封装的内容。Web 服务的典型技术包括:用于传递信息的简单对象访问协议、用于描述服务的Web 服务描述语言、用于Web 服务的注册的统一描述、发现及集成、用于数据交换的XML 。
Web 服务的主要目标是跨平台的互操作性,适合使用web services 的情况如下。( l )跨越防火墙。
( l )单机应用程序:只与运行在本地机器上的其他程序进行通信的桌而应用程序最好不使用Web 服务,只用本地的API 即可。
( 2 )局域网上的同构应用程序:使用同一种语言开发的在相同平台的同一个局域网中运行的应用程序直接通过TCP 等协议调用,会更有效。
J2ZZ 应用将开发工作分成两类:业务逻辑开发和表示逻辑开发,其余的系统资源则由应用服务器自动处理,不必为中间层的资源和运行管理进行编码。这样就可以将更多的开发精力集中在应用程序的业务逻辑和表示逻辑上,从而缩短企业应用开发周期、有效地保护企业的投资。
完整的J2ZZ 技术规范由如下4 个部分组成。
( 1 ) J2ZZ 平台 ( 2 )J2EE 应用编程模型 ( 3 ) J2ZZ 兼容测试套件
COM 是个开放的组件标准,它有很强的扩充和扩展能力。COM 把组件的概念融入到Windows 应用中。DCOM 在COM 的基础上添加了许多功能和特性,包括事务特性、安全模型、管理和配置等,使COM 成为一个完整的组件架构。COM 十将COM 、DCOM 和MTS 形成一个全新的、功能强大的组件架构。
2 . CORBA
CORBA ( Common object Request Broker Arehitecture ,公共对象请求代理架构)是由OMG 组织制订的一种标准的面向对象的应用程序体系规范。或者说CORBA 架构是对象管理组织(object Management Group , OMG )为解决分布式处理环境(Distributed ComPuting Envirolunent , DCE )中硬件和软件系统的互连而提出的一种解决方案。
EJB 用于封装业务,而业务可分为业务实体和业务过程。在JZEE 模型当中,中间层的业务功能通过EJB 构件实现,使用JSP 实现业务逻辑处理结果的动态发布,构成动态的HT 侧[L 页面,中间层也可以使用Servlet 实现更为灵活的动态页面。
1 .综合布线
1 )综合布线系统概念及相关标准
综合布线系统(Premises Distribution System , PDS )是楼宇和园区范围内,在统一的传输介质上建立的可以连接电话、计算机、会议电视和监视电视等设备的结构化信息传输系统.
目前在综合布线领域被广泛遵循的标准是EIA/TIA 568A.在EIA/TIA-568A中把综合布线系统分为6 个子系统:建筑群子系统、设备间子系统、垂直干线子系统、管理子系统、水平子系统和工作区子系统,如图所示。
综合布线系统的范围应根据建筑工程项目范围来定,主要有单幢建筑和建筑群体两种范围。
机房建设工程不仅仅是一个装饰工程,更重要的是一个集电工学、电子学、建筑装饰学、美学、暖通净化专业、计算机专业、弱电控制专业、消防专业等跨学科、跨专业领域的综合工程,并涉及到计算机网络工程,PDS 工程等专业技术的工程。
每个阶段应完成哪些技术工作?
瀑布模型是一个经典的软件生命周期模型,一般将软件开发分为可行性分析(计划)、需求分析、软件设计(概要设计、详细设计)、编码(含单元测试)、测试、运行维护等几个阶段,如图所示。
( 2 )利用这一输入,实施本次活动应完成的工作内容。
( 3 )给出本次活动的工作成果,作为输出传给下一项开发活动。
如图所示
V 模型的优点在于它非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发各阶段的对应关系。
原型化模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,经过和用户针对原型的讨论和交流,弄清需求以便真正把握用户需要的软件产品是什么样子的。充分了解后,再在原型基础上开发出用户满意的产品。
螺旋模型是一个演化软件过程模型,将原型实现的迭代特征与线性顺序(瀑布)模型中控制的和系统化的方面结合起来。使得软件的增量版本的快速开发成为可能。在螺旋模型中,软件开发是一系列的增量发布。螺旋模型的整个开发过程如图所示。