【系统架构设计(二)】系统工程与信息系统基础中:信息系统基础
文章目录
- 一、信息系统的基础架构理论
- 1、信息系统生命周期
- 2、信息系统建设原则
- 二、信息系统开发方法论
- 1、传统开发方法
- 1.1、结构化法的系统化思维
- 1.2、面向对象方法的灵活性优势
- 1.3、 面向服务方法的集成优势
- 1.4、 原型法探索需求价值
- 1.5、方法选择的综合考量
- 2、现代开发方法
- 2.1、形式化方法:数学严谨性
- 2.2、统一过程方法(UP):系统化框架
- 2.3、敏捷方法:灵活响应能力
- 2.4、基于架构的开发方法(ABSD):设计优先
- 2.5、净室软件工程:零缺陷追求
- 2.6、方法选择的综合考量
- 三、信息系统分类体系
- 1、业务处理系统(TPS):数据基础
- 2、管理信息系统(MIS):集成优势
- 3、决策支持系统(DSS):智能分析
- 4、专家系统(ES):智能推理
- 5、办公自动化系统(OAS):流程优化,高效办公
- 6、企业资源计划(ERP):全面整合
- 7、系统演进:逻辑关系
- 四、电子政务系统架构
一、信息系统的基础架构理论
1、信息系统生命周期
信息系统的生命周期分为四个阶段,源自系统工程方法论:
-
产生阶段:这是系统的起始阶段,核心任务是挖掘和明确需求。通过调研分析,收集利益相关者的期望、业务痛点等信息,将初步想法转化为对系统功能、性能等方面的具体要求。
-
开发阶段:在明确需求后进入此阶段。涵盖总体规划、系统分析、系统设计、系统实施、系统验收等多个步骤,将概念转化为可运行的系统。
-
运行阶段:系统通过验收、移交后正式投入使用。在此期间,需保障系统稳定运行,进行日常维护、监控性能、处理用户反馈等工作。
-
消亡阶段:随着业务发展和技术进步,系统可能不再满足需求。此时会进行更新改造、功能扩展,或报废重建。
2、信息系统建设原则
高层管理人员介入原则:信息系统建设涉及组织资源调配、战略方向把控等关键问题。CIO等高层管理人员介入,可从组织战略高度协调资源,推动跨部门协作。
用户参与开发原则:用户是信息系统的最终使用者。让用户确定范围,能使系统贴合实际业务需求;核心用户全程参与,便于及时反馈使用感受和需求变更。
自顶向下规划原则:从组织整体架构和业务流程出发进行规划,先确定总体目标和框架,再逐步细化。这样能保障各子系统、模块间信息一致、协同工作。
工程化原则:引入软件工程方法,将系统开发视为工程项目,运用规范流程、标准方法和工具,对需求分析、设计、编码、测试等阶段进行科学管理。
其他重要原则:
- 创新性原则:鼓励在技术应用、业务模式等方面创新
- 整体性原则:把信息系统看作有机整体,综合考虑硬件、软件、数据、人员等要素
- 发展性原则:充分考量组织未来发展,使系统具备可扩展性、灵活性
- 经济性原则:在系统建设各环节权衡成本与效益,合理配置资源
二、信息系统开发方法论
不同的信息系统开发方法各有其独特的设计理念和适用场景,选择合适的方法对项目成功至关重要,需要根据项目特点、需求稳定性和团队能力进行综合考虑。
1、传统开发方法
1.1、结构化法的系统化思维
结构化法采用自顶向下的方式,将复杂系统逐步分解为可管理的模块,体现了系统工程的核心理念。 这种方法的优势在于开发目标清晰,工作阶段程式化,开发文档规范化,设计方法结构化,特别适合处理那些需求明确、系统边界清晰的复杂项目。
结构化法的具体实施过程包括需求分析、系统设计、程序编码、系统测试、系统维护等阶段,每个阶段都有明确的输入、输出和验收标准。例如,在需求分析阶段,通过数据流图、数据字典、处理逻辑等工具,将业务需求转化为系统功能规格说明。
然而,结构化法的应变能力较差,当需求发生较大变化时,调整成本较高。这是因为其自顶向下的设计方式使得系统各模块之间耦合度较高,局部变更往往会影响整个系统。因此,这种方法适用于需求明确、稳定,规模较大且对文档要求高的项目,如传统企业的大型管理信息系统开发。
1.2、面向对象方法的灵活性优势
面向对象方法自底向上进行开发,以对象为核心,具有更好的应变能力和复用性,符合人们的自然思维习惯。 这种方法的阶段界限不明显,开发过程更加灵活,能够更好地适应需求变化和系统演进。
面向对象方法通过封装、继承、多态等特性,实现了代码的模块化和复用。封装将数据和方法绑定在一起,隐藏内部实现细节;继承允许子类继承父类的属性和方法,实现代码复用;多态使得同一接口可以有多种实现,提高了系统的灵活性。
更重要的是,面向对象方法特别适合处理复杂系统的建模问题。通过将现实世界的实体抽象为对象,将对象间的交互抽象为消息传递,使得系统模型更加直观和易于理解。因此,这种方法广泛应用于各类软件系统开发,尤其在大型复杂系统、需要频繁迭代的项目中优势明显。
1.3、 面向服务方法的集成优势
面向服务的方法强调粗粒度、松耦合的设计理念,通过标准化和构件化实现系统的灵活集成和扩展。 这种方法的抽象级别从低到高包括操作、服务、业务流程,每一层都有其特定的设计原则和技术实现。
面向服务方法的核心价值在于其松耦合特性,服务之间通过标准化的接口进行通信,降低了系统各部分的相互依赖。这种设计使得系统更容易维护和扩展,当某个服务需要升级或替换时,不会影响其他服务的正常运行。
同时,面向服务方法通过标准化接口和协议,实现了不同技术平台和开发语言之间的互操作性。这意味着企业可以将现有的异构系统整合起来,实现业务流程的优化和创新。因此,这种方法特别适用于分布式系统、企业应用集成等场景,能够帮助企业快速响应业务需求变化。
1.4、 原型法探索需求价值
原型法主要用于需求阶段,通过快速构建原型来探索和验证需求,特别适合处理需求不明确或业务理解不深入的情况。 这种方法的核心理念是"快速失败,快速学习",通过迭代的方式逐步明确和细化需求。
-
原型法按功能分为水平原型和垂直原型两种类型。
水平原型侧重界面设计,主要用于验证用户界面的可用性和用户体验;垂直原型侧重复杂算法,主要用于验证技术方案的可行性和性能表现。 -
按最终结果分为抛弃式原型和演化式原型
抛弃式原型仅用于获取需求,后续会被抛弃;演化式原型在原型基础上逐步完善成最终系统。
更重要的是,原型法能够有效降低需求理解的风险。当用户对需求难以清晰表述,或开发团队对业务理解不够深入时,通过快速构建原型,可以让用户直观地看到系统的功能和界面,从而更容易发现需求中的问题和不足。这种方法特别适合创新性项目或业务领域不熟悉的项目。
1.5、方法选择的综合考量
选择合适的信息系统开发方法需要综合考虑项目特点、需求稳定性、团队能力和技术环境等多个因素。 每种方法都有其优势和局限性,没有一种方法能够适用于所有项目。
-
对于需求明确、稳定的传统企业项目,结构化法能够提供清晰的开发流程和完整的文档体系,降低项目风险。对于需求变化频繁、需要快速迭代的互联网项目,面向对象方法或敏捷方法能够提供更好的灵活性。对于需要整合多个异构系统的企业集成项目,面向服务方法能够提供标准化的集成方案。
-
同时,团队的技术能力和经验也是选择方法的重要考虑因素。如果团队对某种方法比较熟悉,采用该方法能够降低学习成本,提高开发效率。此外,技术环境、项目预算、时间要求等因素也需要综合考虑。
因此,在实际项目中,往往需要根据具体情况选择合适的方法,或者将多种方法结合起来使用,以达到最佳的开发效果。
2、现代开发方法
2.1、形式化方法:数学严谨性
形式化方法运用严格的数学语言和数学模型对软件系统进行描述、开发和验证,通过数学推理确保系统的正确性和一致性。 这种方法的核心理念是将软件开发过程数学化,通过精确的数学模型表达软件需求、设计和实现,从而在理论上保证软件的质量和可靠性。
形式化方法的具体应用包括形式化规格说明、形式化验证和形式化开发三个层面。在规格说明阶段,使用数学语言精确描述软件的功能需求和非功能需求;在验证阶段,通过数学推理证明软件设计满足规格说明;在开发阶段,基于形式化规格说明进行程序推导和生成。
更重要的是,形式化方法特别适用于对安全性、可靠性要求极高的系统开发,如航空航天控制系统、核电站控制系统、金融交易系统等。在这些领域,软件缺陷可能导致灾难性后果,因此需要通过数学方法确保软件的正确性,而不仅仅依赖传统的测试手段。
2.2、统一过程方法(UP):系统化框架
统一过程方法(UP)是一种迭代式、基于用例驱动、以架构为核心的软件开发过程,提供了完整的项目管理框架。 这种方法的优势在于将软件开发的复杂过程分解为可管理的阶段和工作流,每个阶段都有明确的目标、任务和交付物。
UP方法定义了四个主要阶段:
- 初始阶段:关注项目可行性和范围确定;
- 细化阶段:重点进行架构设计和风险控制;
- 构建阶段:进行详细设计和编码实现;
- 交付阶段:进行系统测试和部署。
每个阶段都包含需求、分析、设计、实现、测试、部署、配置管理、项目管理、环境等九个核心工作流。
同时,UP方法强调用例驱动和架构优先的设计理念。用例驱动确保开发过程始终围绕用户需求进行,避免技术导向的开发;架构优先确保系统具有良好的结构和可扩展性,为后续开发奠定基础。因此,UP方法特别适用于大型、复杂软件项目开发,能够有效管理项目进度和质量。
2.3、敏捷方法:灵活响应能力
敏捷方法强调团队协作、客户参与、快速响应变化,通过短周期迭代开发实现持续交付和价值创造。 这种方法的核心理念是拥抱变化,认为需求变化是软件开发过程中的常态,而不是异常,因此需要建立能够快速响应变化的开发机制。
敏捷方法的具体实践包括Scrum、XP、Kanban等多种框架,但都遵循敏捷宣言的四个核心价值观:
- 个体和交互胜过过程和工具
- 可工作的软件胜过详尽的文档
- 客户协作胜过合同谈判
- 响应变化胜过遵循计划
这些价值观体现了敏捷方法对人和协作的重视,以及对实用性的追求。
更重要的是,敏捷方法通过短周期迭代、持续集成、自动化测试等实践,实现了快速反馈和持续改进。每个迭代周期通常为1-4周,包含需求分析、设计、开发、测试、演示等完整流程,确保能够及时获得用户反馈并调整开发方向。因此,敏捷方法特别适用于需求不确定、变化频繁的项目,如互联网产品开发、移动应用开发等。
2.4、基于架构的开发方法(ABSD):设计优先
基于架构的开发方法(ABSD)以系统架构为核心,从架构角度对系统进行分析、设计和开发,确保系统的稳定性、可扩展性和可维护性。 这种方法的核心理念是架构优先,认为良好的架构设计是系统成功的基础,应该在开发初期就确定系统架构,并基于架构指导后续的开发工作。
ABSD方法的具体实施过程包括架构需求分析、架构设计、架构评估、架构实现等阶段。
- 在架构需求分析阶段,识别系统的质量属性和约束条件;
- 在架构设计阶段,设计满足需求的系统架构;
- 在架构评估阶段,评估架构的可行性和风险;
- 在架构实现阶段,基于架构进行构件设计和系统集成。
同时,ABSD方法强调架构的演进和治理。随着系统的发展和需求的变化,架构也需要相应调整,但调整过程需要在架构治理框架下进行(ing),确保架构的一致性和稳定性。因此,ABSD方法特别适用于大型分布式系统、企业级应用系统开发,能够帮助构建灵活、可扩展的系统架构。
2.5、净室软件工程:零缺陷追求
净室软件工程在受控"无污染"环境下进行软件开发,采用数学模型化手段,通过严格证明和验证确保软件质量,而非依赖大量测试。 这种方法的核心理念是预防胜于检测,通过在开发过程中尽早排除错误,而不是在后期通过测试发现和修复错误,从而实现零缺陷的软件开发。
净室软件工程的具体实践包括形式化规格说明、增量开发、统计质量控制和统计测试等。
- 形式化规格:说明确保需求的准确性和完整性;
- 增量开发:将系统分解为可管理的增量,每个增量都经过严格的验证;
- 统计质量控制:通过统计方法监控开发过程的质量;
- 统计测试:基于使用模型进行测试,确保测试的充分性和有效性。
更重要的是,净室软件工程强调过程控制和持续改进。通过建立严格的开发规范和过程控制机制,确保每个开发活动都在受控环境下进行,从而最大程度地减少错误的引入。因此,净室软件工程特别适用于对软件质量要求苛刻的领域,如军事、医疗等行业的关键软件系统开发。
2.6、方法选择的综合考量
选择合适的信息系统开发方法需要根据项目特点、质量要求、团队能力和技术环境进行综合考量。
- 对于安全性、可靠性要求极高的关键系统,形式化方法能够提供数学上的保证,但开发成本较高,对团队能力要求也较高。
- 对于大型、复杂的企业级项目,统一过程方法能够提供完整的项目管理框架,但过程相对复杂,灵活性较低。对于需求变化频繁的创新项目,敏捷方法能够提供快速响应能力,但对团队协作和客户参与要求较高。
同时,团队的技术能力、项目的时间要求、预算限制等因素也需要综合考虑。在实际项目中,往往需要根据具体情况选择合适的方法,或者将多种方法结合起来使用,以达到最佳的开发效果和质量要求。
三、信息系统分类体系
1、业务处理系统(TPS):数据基础
业务处理系统(TPS)是20世纪50-60年代早期最基础的信息系统,也叫电子数据处理系统(EDP),主要解决企业日常运营中的局部数据处理问题。 这种系统的主要功能包括数据输入、数据处理、数据库维护、文件报表生成和查询处理,为企业其他信息系统提供基础数据支撑。
TPS系统的核心价值在于其高效的数据处理能力。
系统运用批处理和联机事务处理(OLTP)两种方式处理数据,批处理适合对时效性要求不高的场景,如夜间批量结算;联机处理适合需要实时响应的场景,如银行ATM取款。同时,TPS系统通过严格的数据库维护机制,确保数据的准确性、完整性和一致性。
更重要的是,TPS系统服务于组织管理层次中的最低层,主要处理企业日常运营中的基础业务操作,如订单录入、库存出入库记录、客户信息管理等。这些基础数据为上层的信息系统提供了重要的数据源,是整个企业信息系统的基石。
2、管理信息系统(MIS):集成优势
管理信息系统(MIS)在TPS基础上引入大量管理方法(业务沉淀),属于高度集成化的人机信息系统,具备金字塔式的多层级结构。 这种系统的核心价值在于整合企业内部数据,为各级管理人员提供信息支持,辅助日常管理决策。
MIS系统的架构特点体现在其四个核心部件:
信息源提供企业内外部数据,信息处理器对数据进行识别、记录、变换和存储,信息用户包括不同层级的管理人员,信息管理者负责系统的规划、开发、运行和维护。
这种架构设计确保了系统能够有效地收集、处理和分发信息。
同时,MIS系统的结构分为开环结构和闭环结构两种类型。
开环结构强调信息的单向流动,从数据收集到决策执行;
闭环结构强调信息的双向流动,能够根据反馈及时调整决策和行动。这种结构设计反映了不同管理场景对信息流动的不同要求。
3、决策支持系统(DSS):智能分析
决策支持系统(DSS)在MIS系统基础上整合了管理功能,由语言系统、知识系统、问题处理系统三个互相关联的部分组成。 这种系统的核心价值在于辅助企业管理层进行决策,通过对大量数据的分析和模型计算,为决策提供依据和建议。
DSS系统的架构特点体现在其三个核心组件的协同工作。
- 语言系统作为用户与系统交互的桥梁,支持自然语言查询、图形化界面和语音交互等多种交互方式;
- 知识系统存储与决策相关的各种知识,包括事实、规则、模型等;
- 问题处理系统负责对用户输入的问题进行分析和求解,调用知识系统中的知识和数据,运用合适的算法和模型进行处理。
更重要的是,DSS系统的主要资源是数据和模型,系统支援而非代替用户决策,主要解决半结构化及非结构化问题,提高决策有效性而非效率。这种设计理念体现了DSS系统对决策质量的重视,而不是决策速度的追求。
4、专家系统(ES):智能推理
专家系统(ES)基于"知识+推理"模式,是人工智能的重要分支,智能化程度更高,能够处理复杂的专业领域问题。 这种系统的核心价值在于将领域专家的知识和经验以规则等形式存入系统,通过推理机制解决实际问题。
ES系统的架构特点体现在其与传统计算机系统的显著差异。与一般计算机系统相比,
- 专家系统不仅能解决问题,还能对结果进行解释,并且做出判断与决策;
- 可处理数字与符号两种类型的信息;
- 处理的问题多为准结构性或非结构性,能处理不确定知识。
这些特点使得专家系统特别适合处理那些需要专业知识和经验判断的复杂问题。
ES系统的具体应用包括医疗诊断专家系统、投资决策专家系统、地质勘探专家系统等。例如,医疗诊断专家系统能够依据患者症状和医学知识进行病情诊断,不仅给出诊断结果,还能解释诊断的依据和推理过程,帮助医生和患者更好地理解诊断结果。
5、办公自动化系统(OAS):流程优化,高效办公
办公自动化系统(OAS)由计算机设备、办公设备、数据通信及网络设备、软件系统构成,实现办公流程自动化、信息共享与协同工作。 这种系统的核心价值在于提高办公效率,通过技术手段优化传统的办公流程。
OAS系统的架构特点体现在其硬件和软件的有机结合。硬件包括计算机设备、办公设备(如打印机、复印机)、数据通信及网络设备;软件包括办公软件、流程管理软件、协作工具等。这种架构设计确保了系统能够支持各种办公场景的需求。
同时,OAS系统强调信息共享与协同工作,通过建立统一的信息平台,实现部门间和人员间的信息共享,提高协作效率。这种设计理念体现了现代办公对协作和信息共享的重视。
6、企业资源计划(ERP):全面整合
企业资源计划(ERP)旨在打通企业供应链,对企业内部资源和外部供应链资源进行集成与整合。 这种系统的核心价值在于帮助企业实现资源优化配置,提升整体运营效率和管理水平。
ERP系统的架构特点体现在其全面的资源整合能力。系统不仅整合企业内部的人力、财务、生产、销售等资源,还整合外部供应链资源,实现内外部资源的统一管理和优化配置。这种整合能力使得企业能够更好地协调各种资源,提高整体运营效率。
同时,ERP系统强调业务流程的优化和标准化,通过建立统一的数据标准和业务流程,消除信息孤岛,提高数据的准确性和一致性。这种设计理念体现了现代企业对流程优化和数据管理的重视。
7、系统演进:逻辑关系
从TPS到ERP,信息系统的发展体现了从局部到整体、从简单到复杂、从自动化到智能化的演进过程。 每种系统类型都有其特定的应用场景和价值,共同构成了企业信息系统的完整体系。
- TPS系统为企业提供基础的数据处理能力
- MIS系统在此基础上提供管理支持
- DSS系统进一步提供决策支持
- ES系统提供智能化的专业服务
- OAS系统优化办公流程
- ERP系统实现全面的资源整合
这种演进过程反映了企业对信息系统需求的不断深化和扩展。
同时,不同系统类型之间也存在相互支撑和集成的关系。TPS系统为其他系统提供基础数据,MIS系统整合TPS的数据提供管理信息,DSS系统基于MIS的数据进行决策分析,ES系统可以集成到其他系统中提供智能化功能。这种集成关系使得企业能够构建完整的信息系统架构,满足不同层次和不同方面的管理需求。
四、电子政务系统架构
电子政务中不同主体间互动类型包括:
- G2G(Government-to-Government):政府对政府,侧重于政府部门间信息交互与协作
- G2E(Government-to-Employee):政府对雇员,主要用于政府内部管理系统
- G2B(Government-to-Business):政府对企业,表现为政府向企业颁发各类经营所需证照
- B2G(Business-to-Government):企业对政府,企业承担向政府缴税义务,通过竞/投标为政府供应商品和服务
- G2C(Government-to-Citizen):政府对公民,涉及与公民生活密切相关的公共安全信息发布
- C2G(Citizen-to-Government):公民对政府,公民需按规定缴纳税费,同时可反馈民意、参与征求意见
例题理解