信息系统建设
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章信息系统建设
【本章导读】
本章围绕信息系统建设相关内容展开分析,首先对信息系统建设进行了概述,使读者了解信息系统建设的特点和影响因素;其次,介绍了信息系统的开发方法和信息系统的开发方式,重点介绍了系统开发方法中的结构化系统开发方法、原型法、面向对象方法和计算机辅助软件工程法;最后,介绍了信息系统的项目管理,内容包括项目管理流程、项目管理的内容和信息系统项目组织,重点介绍了项目管理内容中的进度管理、成本管理和质量管理。
【本章要点】
●信息系统建设特点和影响因素
●信息系统开发方法:结构化系统开发方法、原型法、面向对象方法和计算机辅助
软件工程法
●信息系统的开发方式
●信息系统的项目管理流程
●信息系统的项目内容:进度管理、成本管理和质量管理
●信息系统项目组织
2.1 信息系统建设概述
2.1.1 信息系统建设的特点
信息系统的建设是一项复杂的系统工程,因为其开发周期长、耗资巨大、效益难以估量和涉及人员面广,要受到多方面条件的制约和多种因素的影响等原因,使信息系统建设具有的最大特点是复杂性。
复杂性主要表现在如下六个方面。
1.投资巨大,投资效益难以量化
信息系统的开发,从分析设计到运行维护,都需要投入大量的资金,而且还需要投入大量的人力和时间。
虽然目前在信息系统的开发中采用了大量的先进技术,但是实际开发过程中的自动化程度仍然不高,系统的分析、设计和程序编写,必须靠足够的人力和时间去完成。
这些都使得投入量很大,但是信息系统完成后,参与到组织运作后,究竟带来的绩效如何,却难以量化、难以评价。
2.建设环境的复杂性
信息系统建设通常要涉及组织内部各级机构、管理人员及组织面临的外部环境。
系统建设者必须十分重视、深刻理解组织面临的内、外环境及发展趋势,考虑到管理体制、管理思想、管理方法和管理手段的相互匹配、相互促进;考虑到人的习惯、心理状态及现行的制度等因素。
系统的目标、规模、功能和实施步骤必须与组织当前的发展水平相适应,所建系统还应具有足够的影响力,可以在一定范围内改革不合理的规章制度,促进管理水平的提高和组织目标的实现。
同时,信息系统也要具备一定的环境自适应能力,能够在一定程度上适应组织内外环境的变化。
3.用户需求的复杂性
信息系统的最终用户是各级各类管理人员。
满足这些用户的信息需求,支持他们的管理决策活动,是建设信息系统的直接目的。
然而,一个组织内各类机构和管理人员的信息需求
不尽相同,有些需求可能相互冲突,有些需求又十分模糊,有些需求在建设过程中可能会发生变化。
系统建设者面对这样复杂多样的需求,必须寻求使各方都比较满意的方案。
4.建设内容的复杂性
信息系统处理、管理的对象是信息,而组织的信息往往形式多样、来源复杂和涉及面宽、数量庞大,信息内容和处理要求又涉及广泛的学科和事业领域。
信息系统要实现一个组织的信息系统的综合处理以支持各级管理决策,必是一个规模庞大、结构复杂、具备多种功能、实现多个目标的大系统,就现有的企业信息系统而言,即使是中小企业,其信息处理内容的广泛性和系统结构的复杂性,也是一般工程技术系统难以比拟的。
5.技术手段的复杂性
信息系统是利用先进技术解决社会经济管理问题的应用之一。
计算机软、硬件技术、数据通信技术、各种控制与决策方法、建模与仿真技术以及人工智能技术等,都是进行系统建设、实现系统各种功能的技术手段。
掌握这些先进的复杂的技术以便正确地、熟练地使用它们,就要求系统建设者具有较高的科学技术水平。
同时,信息系统建设的核心是软件的开发,软件开发的工具、开发中使用的编程语言,更新速度较快,软件开发人员需要不断的进行知识更新。
因此,如何合理地应用这些技术手段以达到预期的效果,是信息系统建设面临的主要任务之一。
6.建设资源的密集性
信息系统的建设是一项投资密集型的建设项目。
由于规模大,建设内容复杂,系统开发需要投入大量的人工,因而也是劳动密集型项目。
另外,系统建设还是一个智力密集型或知识密集型的项目。
由此可见,建设系统所付出的代价十分昂贵,如何获取和合理使用这些资源,使之产生最大的经济与社会效益,是信息系统建设成功的一个关键。
只有在信息系统建设的过程实现各种资源合理的配置和利用,才能确保信息系统建设的成功。
2.1.2 信息系统建设涉及的因素
信息系统建设的复杂性决定了在建设的过程中,必然会受到各种各样因素的影响。
当说到影响信息系统建设的因素时,可能人们首先想到的是技术因素的影响,但是在人
们总结信息系统建设成功与失败的经验与教训时,人们发现失败的原因大多情况下并不
是由技术因素决定的,技术因素带来的影响并不是最主要的,更多的是由组织内外环境
中多种因素综合导致的。
1.文化社会因素
在信息系统开发建设的实践中,人们越来越认识到社会人文因素对信息系统建设的影响,并逐步受到重视。
信息系统是一个人机交互系统,其开发、设计、运行、维护的任何一个过程都离不开人的参与,信息系统的开发过程实际上是一个社会过程。
同时,组织体制即领导、组织、政策、法规、观念、员工的人文素养等文化社会因素在一定程度上决定着信息系统,只有组织体制顺畅、管理科学、领导重视、企业员工具备一定的信息素养的基础上,才能够建设成功的信息系统。
2.科学技术因素
信息系统是一个综合性系统,信息系统的建设过程,涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,要受到多方面条件的制约。
应用到信息科学技术、计算机科学技术、管理学和行为科学、通信工程、系统工程等各方面的知识。
同时,信息系统的开发离不开现代信息技术的支持。
3.领域知识因素
每个行业对信息系统的要求,或者说信息系统的功能是不同的,即开发建设的信息系统都是面向专业领域服务的。
开发信息系统的过程中,需要与专业领域中的专业知识融合,才
能提供针对性服务。
专业知识必须反映和渗透在信息系统之中,成为信息处理,业务处理,组织管理和辅助决策的依据,要求信息系统建设必须深入了解专业领域的各种业务,管理和决策知识。
4.环境多变因素
建设的信息系统要想成为一个组织在竞争中的有力武器,就必须能够适应组织所处的竞争环境,考虑环境的变化。
组织面临的市场、对手、政治、社会环境会发生变化;组织的目标、策略、管理、产品、技术、业务也在发生着动态变化;信息系统的技术(计算机,网络,软件等)不断发生着变化;这些变化的趋势和进程难以把握,要求信息系统能根据环境的变化进行动态调整。
5.组织管理因素
信息系统建设是一项复杂的系统工程,在建设的过程中需要实施有效的组织和管理。
可是,因为信息系统建设更多是智能性活动,工程对象的可见性不强,难于组织管理,使信息系统项目的组织管理较之于一般工程项目的组织管理更复杂。
信息系统建设的组织管理涉及到过程、人员、经费,材料、文档等多种要素,只有对这些要素进行有效的组织、计划、配置、控制、监督,才能够有序,有效,优质地进行信息系统建设。
2.2 信息系统开发方法
2.2.1 信息系统开发方法学
信息系统的建设是一项开发周期长、资金耗费大、涉及人员广泛的复杂系统工程,它既是组织对一个项目管理和控制的过程,又是综合运用目前各种先进的信息技术,达到解决实际管理问题的过程。
同时,随着信息系统应用程度的深入和应用规模的扩大,使得信息系统开发的规模和难度加大。
为了确保开发过程能够顺利进行,提高开发的质量、降低开发的成本、增强系统的适应性、方便用户使用、便于维护和管理,需要科学的方法做指导。
在信息系统开发实践中,20世纪60年约当(Edward Y ourdon)、康斯坦丁(Larry L.Constantine)等提出了自顶向下、结构化系统开发方法,开创了系统开发方法学研究的先河。
此后,人们开始了对信息系统开发方法和开发工具的系统研究,逐渐形成了信息系统开发方法学。
信息系统开发方法学是研究信息系统开发规律的学科,主要研究内容包括四个方面。
一是在信息系统开发实践的基础上或过程中,分析、总结经验,研究系统开发的一般性规律,形成系统开发的指导思想和基本原则;二是从系统思想和系统工程方法的角度,为系统分析、开发、设计人员提供工作过程中的思维方法及其具体的分析、设计、开发原则;三是形成与系统思想相对应,适合于系统开发的具体实施环节,各实施环节步骤的描述和应用的开发工具;四是系统开发过程中影响成功的因素、条件,以及促进系统开发成功的实施方法、组织运行机制。
信息系统开发方法实质上是思想、规范、过程、技术、环境及工具的集成,为认识系统、理解系统、描述系统、设计系统、开发系统、实施系统提供了一套思路,是一个认知体系。
到目前为止,人们已经总结出了各种各样的信息系统开发方法。
据不完全统计,达到七八十种。
不同的信息系统开发方法使用的工具和过程有所差异,使得信息系统开发领域尚未形成统一的开发理论和支持开发过程的统一方法。
对众多的系统开发方法进行研究就会发现,这些方法大都是从四种常用的系统开发方法中衍生出来的。
本章重点讨论结构化系统开发法、原型法、面向对象的方法和计算机辅助开发方法。
2.2.2 结构化系统开发方法
1.结构化系统开发方法的基本思想
结构化系统开发方法(Structured System Development Methodology,简称SSDM)是将生命周期和结构化程序设计思想相结合而形成的一种方法,是迄今为止应用最普遍、最成熟的一种开发方法。
结构化程序设计思想是20世纪60年代中期,荷兰埃因霍温大学的E.W.Dijkstra教授和C.Bohm 以及G.Jacopini先后提出来的,这种思想强调一个程序的详细执行过程可以按照“自顶向下,逐步求精”的方法确定。
“自顶向下”是将程序分解成若干个功能模块,这些模块之间尽可能彼此独立;“逐步求精”是将模块的功能进一步分解成一组子功能,通过对每一个子功能的实现来形成一个完整的程序。
后来人们受到结构化程序设计的启发,将其“模块化”核心思想引入到系统设计中来,把一个系统设计成层次化的模块结构。
生命周期的概念在20世纪70年代被引入软件工程领域,成为管理和控制工程项目的重要手段,形成了信息系统开发的方法——生命周期法。
任何一个系统从提出、开发、应用到系统的更新,经历了一个从孕育、生长到消亡的过程,这个过程称为系统的生命周期。
在系统开发中运用生命周期法,就是根据系统开发活动的需要,将系统开发过程划分为若干个阶段,各个阶段的任务尽可能彼此独立,同一个阶段各项任务的性质尽可能相同。
同时,应用系统工程的方法,按照各个阶段规定的任务要求,使用一定的图表工具,完成规定的文档资料。
综上所述,结构化系统开发方法的基本思想是采用结构化的系统分析和设计的方法——“自顶向下,逐步求精”,并依据系统开发的生命周期,把一个复杂的系统开发过程,严格划分成足够简单,并能被清楚地理解和表达的若干阶段,每一阶段规定它的任务、工作流程、管理目标,产生并编制出相应的文档,下一阶段的工作是在上一阶段文档的基础上进行,使开发工作易于管理和控制,形成一个可操作的规范,一个阶段一个阶段实现。
系统的生命周期和结构化程序设计思想的结合,使系统分析与设计结构化、模块化、标准化,面向用户且能预料可能发生的变化。
在上一阶段文档的基础上进行,使开发工作易于管理和控制,形成一个可操作的规范。
2.系统开发的生命周期
采用结构化系统开发方法将系统的开发过程划分为系统规划、系统分析、系统设计、系统实施和系统运行、维护五个相互衔接的阶段,称为系统开发的生命周期,如图2-1:系统的生命周期所示。
(1)系统规划
系统规划是信息系统开发的第一步,在规划阶段首要问题是通过对组织环境、目标、现行系统状况的调查分析,明确新开发系统的总体要求和适用范围,以及要解决的问题和实现的功能,实质上是进行系统定义。
其次是结合系统的难易程度、系统项目的大小、组织的技术力量等实际,制定初步的进度表;然后,在充分考虑新系统所受的各种约束下,给出拟建系统的备选方案;最后对这些方案从系统开发的必要性和经济、技术、组织管理、环境、进度等方面进行可行性研究、论证,形成可行性研究报告,并审议可行性研究报告,最终形成系统规划报告,审议通过后启动项目,如果不是自行开发,还要和开发单位签订合同。
因此,系统规划阶段的主要任务,如图2-2所示。
对所开发的系统进行系统科学的规划,形成系统规划文档,主要包括技术文档(系统规划报告)和管理文档(可行性研究报告、开发计划、开发合同、系统规划报告评审意见等)。
(2)系统分析阶段
系统分析是信息系统开发生命周期中最重要的一个阶段。
系统分析人员研究、结合现有系统与管理层、用户从信息系统的功能、操作、过程与数据等各个方面,进行全面的沟通,发现和理解用户的全面需求,是对系统进行详细调查的过程。
然后,确定新系统的目标,描述出新系统的功能,形成新系统总体逻辑方案;然后与用户反复沟通、分析、修改、完善和优化系统总体逻辑方案,逐步构建出新系统总体逻辑模型,如果用户对逻辑模型不满意,要继续修改,直到可行为止,或者项目终止;若逻辑模型可行,则进入下一阶段的工作。
系统分析阶段的文档是系统分析说明书,这是系统建设必备的文件,一旦系统分析说明书审议通过,它既是给用户看的,也是系统设计阶段工作的依据和将来系统验收的依据。
因此,系统分析阶段的主要任务,如图2-3所示。
(3)系统设计阶段
系统设计阶段主要解决新系统怎么做的问题,是以系统分析阶段确定的新系统功能为基础,研究具体用什么方法和技术实现的过程。
实质上是以系统分析说明书为依据,将分析模型进一步细化,全面确定系统应具有的功能和性能要求,并考虑技术细节和约束条件,进行系统总体设计和系统详细设计(总体、详细设计的具体内容见第四章),设计出一个可行的解决方案,最终形成系统设计说明书,以便于系统开发的程序员能很容易的编写代码。
如果系统设计说明书经过审议后通过,项目继续进入下一阶段,否则终止。
因此,系统设计阶段的主要任务,如图2-4所示。
(4)系统实施阶段
系统实施阶段是按照系统设计说明书的要求,具体实现新系统,进行测试,交付使用的过程。
具体划分为两个阶段,第一阶段是系统技术实现过程和这个过程的管理,主要包括建立编程标准、程序设计、系统测试、形成测试分析报告;第二阶段是用户转化阶段,主要包括用户培训(用户手册、操作手册等)、系统转换、评审鉴定后交付运行。
因此,系统实施阶段的主要任务,如图2-5所示。
(5)系统运行与维护
系统投入运行后,一般有一段试运行,在这个期间如果有旧系统的话,可以新旧系统一起运作,发现新系统是否存在问题,有问题要及时修改,没有问题说明新系统满足了用户需要,可以正式投入运行。
在以后的运行中进行系统维护和评价,记录系统运行情况,根据一定的程序对系统进行必要的修改,评价系统的工作质量和经济效益。
同时做好维护记录、评价报告、修改报告等。
图2-5 系统实施阶段的主要任务
3.结构化系统开发方法的优缺点
结构化系统开发方法,严格按照系统的生命周期进行开发,适合于大型系统的开发,其优点和缺点表现的都比较明显。
(1)结构化系统开发方法的优点
一是系统分析与设计采用自顶向下、逐步分解细化和模块化的思路,系统实施采用自底向上逐步实施的过程,便于系统的分析、设计、实施和维护,使复杂的系统开发工作简单化。
二是结构化和模块化,从全局观点出发进行系统分析和设计,保证系统总体结构的合理性、系统内数据信息的完整性与一致性、各子系统之间的有机联系。
同时,根据设计的要求,采用模块化设计技术进行具体的程序和功能模块的编程与调试,逐步组合实现整个系统,强调系统开发的整体性和全局性。
三是严格划分系统阶段,把系统完整的开发过程划分为若干阶段,每一阶段对应的目标和任务明确。
在实际的开发过程中一个阶段一个阶段开展工作,每一阶段及时总结、发现问题及时反馈和纠正,避免造成浪费和混乱,每一阶段前后衔接,正确性高。
四是面向用户,认识到用户决定系统开发成败的重要性,在系统开发过程中面向用户,充分了解用户的需求和愿望。
同时,系统分析、设计后形成相关的新系统方案,都要进行严格审议,审议通过后才可进行下一阶段工作,使错误较难传递到下一阶段,一定程度上减少了错误造成的损失,保证了系统开发的质量。
五是文档资料规划化、标准化。
系统开发过程工程化,要求开发过程的每一阶段都按工程标准规范化,标准化文档资料,即采用标准化、规范化的格式和术语、图表等形式组织文档,便于系统开发人员和用户的交流。
(2)结构化系统开发方法的缺点
一是结构化系统开发方法要求预先严格定义出完整准确的功能需求和规格说明。
即在开发之初就要全面认识用户的需求,充分预料到将来可能发生的各种变化。
可是,往往因为系统的复杂性,用户对“需求”的理解存在模糊性,在开发的过程中一些环境和约束条件都会变化,需要在开发的过程中不断明确和完善用户需求,修改系统,但是这种方法往往不能很好地充分了解用户的需求和可能发生的变化。
二是由于系统开发的过程中,每一阶段都要和用户交流沟通后,总结每一阶段的结果,撰写每一阶段对应的方案和相应的文档,并进行审议,导致系统的开发时间长,后果是可能因为开发周期内计算机理论和技术的发展与更新、系统环境的变化等,造成刚建立的新系统迅速变得落后和陈旧,缩短系统的使用寿命。
三是开发过程中每一阶段都要形成规范化,标准化的文档资料,使得文档的编写工作量极大,而有些文档用户在理解过程中存在困难,会导致文档在审批中存在困难。
同时,随着开发工作的进行,这些文档需要及时更新。
2.2.3 原型法
1.原型法的基本思想
结构化系统开发方法在强调面向用户观点的同时,也强调系统开发每一个阶段的严谨性,要求在系统设计和实施阶段之前预先严格定义出完整准确的功能需求和规格说明。
然而大多数系统,特别是对于规模较大或结构较复杂的系统,用户对“需求”的理解模糊,难以事先说清楚。
虽然经过系统分析人员反复的沟通、交换意见,形成一些相关文档,但是难以使系统描述完整,难以与实际环境相符,难以对产生的新变化作出反映,难以完成对一些文档的完善,对将来新系统的运行效果更是难以评估。
因此,用户需求具有的模糊性和形成文档难以完善性,成为结构化系统开发方法的重要阻碍。
原型法(Prototyping Approach,简称PA)就是为了解决上述问题,产生于20世纪80年代中期的一种系统开发方法,并逐渐被广大系统开发者认可和得到广泛的应用,成为一种流行的系统开发方法。
这种方法更符合人们认识事物的规律,是一种用户参与系统设计并修改直到满足用户需求的系统开发方法。
它的基本思想是,在开发实际的系统之前,明确了用户的基本需求后,借助功能强大的辅助系统开发工具,首先构造一个系统原型,即系统工作的模型,使用户尽早看到未来系统的概貌,在系统原型的实际运行中与用户一起发现问题,提出修改意见,不断完善原型,使它逐步满足用户的要求。
2.原型法的开发过程
原型法的开发过程通常划分为四个阶段,具体见图2-6:原型法开发的过程。
(1)确定用户的基本要求
当用户提出系统开发的要求后,系统分析和设计人员就要与用户进行沟通,如果有原系统的话,要对原系统进行研究和对组织的业务进行研究,在较短的时间里确定出用户的基本要求,即系统要实现的一些基本功能,主要是指人机界面、输入输出内容及格式、数据结构、数据处理方法等,这是下一阶段构造初始原型的依据。
虽然原型法对系统基本需求的确定不像结构化系统开发方法那么严格和尽可能地寻求完善,但是也要求把最基本的需求描述出来,否则会影响到下一阶段构造出来的初始原型。
否则,如果构造出的初始原型与用户的基。