系统规划与管理师-应用系统规划核心知识点:过程、方法与软件工厂
一、引言
应用系统规划是信息系统生命周期的起始阶段,是软考高级系统规划与管理工程师考试的核心考点,分值占比约 4-5 分,覆盖信息系统综合知识、IT 战略规划两大知识领域。该领域的理论发展经历了三个阶段:20 世纪 70 年代以结构化分析为核心的传统系统规划阶段,90 年代以企业架构、面向服务架构为代表的体系化规划阶段,2010 年之后以软件工厂、敏捷规划为特征的工业化规划阶段。相关行业标准包括 GB/T 8566-2007《信息技术 软件生存周期过程》、TOGAF 9.2、ISO/IEC 38500 等。本文将从核心过程、常用方法、软件工厂三个维度系统梳理知识点,明确考试重点与实践应用要求。
二、应用系统规划核心过程
应用系统规划是从用户初始需求出发,经过调研、分析、论证到确定系统建设方案的完整过程,分为 5 个 sequential 阶段,各阶段输出为后续工作提供法定依据。
(一)初步调研
- 定义与目标:初步调研是系统规划的启动活动,目标是掌握用户组织概况、识别现存业务痛点、明确新系统初步建设目标,为可行性研究提供基础输入,避免后续工作出现方向性偏差。
- 核心调研内容:包括组织概况(业务范围、组织架构、战略目标)、组织环境(政策约束、行业规范、上下游协作关系)、现行系统概况(功能覆盖、运行效率、存在问题)、干系人态度(领导层支持程度、业务部门需求预期)、资源约束(可投入的资金、人员、时间范围)。
- 实践要求:初步调研需在 7-15 个工作日内完成,输出《初步调研报告》,调研样本需覆盖至少 3 个核心业务部门,避免以个别用户的需求代替整体组织需求。
(二)可行性研究
- 定义与核心价值:可行性研究是对系统建设的必要性、合理性进行全面论证的过程,输出结果分为三类:完全可行(按计划启动建设)、基本可行(调整建设目标、范围或技术方案后实施)、不可行(终止立项),是项目立项决策的核心依据。
- 四大分析维度
(1)经济可行性:开展成本效益分析,成本端包含建设成本(软硬件采购、开发实施、咨询培训费用)和运行成本(年度运维、 license 续约、能耗成本);效益端包含直接效益(业务效率提升、人力成本节约)和间接社会效益(合规性提升、用户满意度改善),需通过投资回收期、净现值、内部收益率等量化指标评估经济合理性。
(2)技术可行性:评估现有技术成熟度、开发团队能力、配套开发环境能否支撑系统建设目标,原则上优先选用经过行业验证的成熟技术,引入未大规模落地的前沿技术时需单独开展技术预研与风险论证。
(3)社会可行性:评估系统建设是否符合行业监管政策、数据安全法规、公序良俗要求,同时开展操作可行性分析,对比现有业务流程与系统流程的差异,评估用户操作能力能否适配新系统要求。
(4)管理可行性:评估领导层的支持力度、中层管理人员的接受程度、现有管理基础数据的完整性,以及业务人员对流程调整的接受度,管理可行性不足的项目通常面临较高的落地失败风险。 - 八大实施步骤:①复查系统目标和规模→②研究目前正在使用的系统→③导出新系统的高层逻辑模型→④重新定义问题→⑤导出和评价供选择的方案→⑥推荐一个方案并说明理由→⑦草拟开发计划→⑧书写文档并提交审查,步骤顺序为固定考点,需准确记忆。
- 输出成果:《可行性研究报告》,包含首页、正文、附件三部分,正文内容涵盖建设任务背景、系统建设目标、初步调研概况、多方案对比、可行性分析结论、实施建议等,需通过组织内部评审或第三方论证后方可生效。
可行性研究四维度框架与八步骤流程图
(三)详细调研
- 定义与目标:详细调研是在可行性研究通过后,对现行系统业务全流程开展的深度摸排活动,目标是完整掌握现行系统运行现状、查明业务执行的具体规则、收集系统建设所需的全量数据与流程资料,为系统分析提供输入。
- 调研范围:覆盖组织功能架构、业务战略目标、核心业务工艺流程、全量数据流、端到端业务流程、现有管理决策方式、资源约束条件、现存业务痛点与改进点。
- 六大实施原则:自顶向下全面展开、用户全程参与、同步识别系统改进点、采用工程化工作方式、全面覆盖与重点调研相结合、保持主动沟通的工作方式。
- 六项核心活动
(1)收集信息:确保信息的准确性、全面性、时效性,数据类信息需覆盖至少 3 个完整业务周期的样本。
(2)系统需求建模:明确 “系统需要完成哪些功能” 的核心问题,输出初步需求清单。
(3)需求优先级划分:采用 MoSCoW 方法区分必须实现、应该实现、可以实现、暂不实现的需求,明确系统建设的核心优先级。
(4)构建系统原型:对核心功能开发低保真或高保真原型,验证技术可行性与用户理解度。
(5)产生和评估候选方案:形成至少 2-3 套技术与实施方案,从成本、周期、风险等维度开展对比评估。
(6)管理部门复查:将候选方案提交管理层评审,确定是否进入后续设计与实现阶段。 - 常用调研方法:包括资料收集、结构化调研表发放、专题调研会、关键用户一对一访问、业务实践跟班等。
(四)系统分析
- 定义与核心任务:系统分析阶段回答新系统 “做什么” 的核心问题,是用户需求与技术实现之间的衔接环节,输出的《系统需求规格说明书》是用户与研发团队之间的 “技术合同”,是后续开发、测试、验收的法定依据。
- 三个实施阶段
(1)问题分析:明确系统建设背景、目标、范围,识别关键利益相关方,建立现有业务流程模型,定位核心痛点。
(2)需求分析:梳理功能性需求(业务功能、数据处理、接口交互需求)和非功能性需求(响应时间、并发量、安全性、可靠性、可扩展性要求)。
(3)需求定义:整合需求内容形成最终需求模型,编写标准化的需求规格说明。 - 四类常用分析方法
(1)面向过程的结构化方法:以数据流图为核心工具,适合流程清晰的政务、制造类系统。
(2)面向数据的信息工程方法:以实体关系图为核心工具,适合数据处理为核心的金融、统计类系统。
(3)基于 UML 的用例驱动方法:当前行业主流方法,通过用例图、时序图等可视化工具呈现需求,适配大多数信息系统建设场景。
(4)基于敏捷的用户故事方法:适合需求动态变化的互联网、创新类系统,以 “角色 + 需求 + 价值” 的结构表述需求。 - 输出文档要求:《系统需求规格说明书》需符合正确性、完整性、一致性、无二义性、可修改性、可跟踪性六大特征,内容包含引言、需求概述、实施计划三部分。
应用系统规划全过程阶段 - 输入 - 输出对应关系表
(五)系统设计
- 定义与核心任务:系统设计阶段回答系统 “如何做” 的核心问题,分为总体设计(概要设计)和详细设计两个子阶段,总体设计明确系统整体架构、模块划分、核心技术选型,详细设计明确每个模块的实现逻辑、接口定义、数据库结构等细节。
- 五大设计目标:可靠性(抵御故障、快速恢复的能力)、可变更性(后续功能迭代、问题修复的便捷程度)、效率(系统响应时间、单位时间处理业务量)、通用性(在同类组织的可复用程度)、工作质量(输出结果准确性、操作界面易懂性、使用便捷性)。
- 六大设计原则:系统性(统一代码规范、数据标准,实现跨模块数据共享)、灵活性(采用模块化设计,实现模块间低耦合、高内聚)、可靠性(内置安全控制、容错、备份恢复机制)、经济性(避免过度设计,平衡功能丰富度与建设成本)、管理可接受(符合用户现有管理习惯与实际环境)、可扩展性(支持未来 3-5 年的业务发展需求)。
- 核心设计内容:总体结构设计、处理流程设计、代码设计、人机界面设计、输出设计、输入设计、数据库设计、安全保密设计、系统物理配置方案设计,最终输出《系统设计说明书》。
三、应用系统规划常用方法
(一)应用系统组合法(APA)
- 定义:APA 是评估和管理组织存量应用系统的方法论,核心目标是识别现有系统的业务价值与技术状态,确定系统保留、更新、替换、淘汰的策略,优化组织 IT 资源投入结构,避免重复建设。
- 六大实施步骤:①梳理应用系统全量清单,包含系统名称、建设时间、使用部门、技术栈、投入成本等基础信息;②开展应用系统评估,从业务价值、技术健康度、运维成本、潜在风险四个维度评分;③分析应用系统组合,识别功能重复、技术过时、维护成本过高的冗余系统;④制定优化策略,针对每个系统明确保留、升级、替换、淘汰的具体路径;⑤实施优化计划,明确每个优化动作的时间节点、责任部门、资源投入;⑥持续监测和评估,每年度更新系统清单与评估结果,动态调整优化策略。
- 实践案例:某大型国企通过 APA 方法梳理出 127 套存量应用系统,识别出 32 套功能冗余系统、28 套技术栈过时系统,优化后年度运维成本降低 35%,系统间数据打通效率提升 50%。
(二)TOGAF 企业架构框架
- 定义与发展:TOGAF 是 The Open Group 推出的开放式企业架构框架标准,当前最新版本为 9.2,核心目标是实现企业架构设计的标准化,统一架构术语、避免厂商技术锁定、节省架构设计成本、最大化 IT 投资回报。
- 六大核心组件:架构开发方法(ADM,核心组件)、ADM 指南和技术、内容框架、企业连续体和工具、TOGAF 参考模型、架构能力框架。
- ADM 架构开发十个阶段
(1)预备阶段:定义组织机构、架构原则、选用的架构框架与工具。
(2)需求管理:全流程识别、记录、管控架构需求,确保需求与架构设计一致。
(3)A 阶段(架构愿景):设置架构工作范围、约束、干系人期望,输出架构工作说明书。
(4)B 阶段(业务架构):开发现有业务基线架构与未来目标架构,开展差距分析。
(5)C 阶段(信息系统架构):设计应用架构与数据架构,明确系统间交互关系与数据流转规则。
(6)D 阶段(技术架构):设计支撑信息系统运行的技术底座、软硬件选型标准。
(7)E 阶段(机会和解决方案):制定初步实施规划,将架构落地任务划分为多个项目群。
(8)F 阶段(迁移规划):开展绩效分析、风险评估,制定详细的架构迁移路线图与实施计划。
(9)G 阶段(实施治理):定义架构落地约束,开展项目实施过程监督,发布架构合同。
(10)H 阶段(架构变更治理):持续监测业务与技术变化,开展架构变更管理,确保架构持续适配业务需求。 - 迭代模式:包含三个层级迭代,分别为整体架构的全周期迭代、多个阶段之间的跨阶段迭代、单个阶段内的细节迭代。
TOGAF ADM 十阶段循环流程图
(三)面向服务的架构(SOA)
- 定义:SOA 是一种软件架构设计方法论,核心思想是将应用系统的不同功能单元封装为独立服务,通过标准化的接口与契约实现服务间的互联互通,降低系统耦合度,提升功能复用率。
- 六大设计原则:明确的接口定义(采用标准化的接口描述语言,与实现技术无关)、自包含与模块化(服务不依赖外部系统的上下文信息,可独立部署)、粗粒度(每个服务封装完整的业务能力,避免服务粒度过细导致交互复杂)、松耦合(核心原则,服务内部实现逻辑变化不影响调用方)、互操作性(支持不同技术栈实现的服务之间相互调用)、策略声明(明确服务的访问权限、性能指标、安全要求)。
- 六大核心技术内容:服务封装、服务编排、服务注册与发现、服务治理、服务安全、服务可靠性和可用性保障。
- 典型应用场景:组织级应用集成、跨部门业务流程管理、系统功能扩展与复用、云计算与微服务架构落地、异构系统跨平台集成。
- 实践案例:某电商平台将支付、订单、商品、物流等核心业务封装为独立服务,订单服务从关系型数据库迁移到 NoSQL 数据库时,支付服务无需任何修改即可正常调用,充分体现了松耦合原则的价值。
SOA 架构与传统单体架构对比示意图
四、软件工厂体系
(一)概念与核心构成
- 定义:软件工厂的核心思想是将传统制造业的工业化生产模式引入软件开发领域,通过标准化、自动化、规模化的生产方式提升软件开发效率、降低成本、保障质量,解决传统开发模式中效率低、质量不稳定、复用率低的痛点。
- 五大构成要素:专业人员(核心资源,包含架构师、开发工程师、测试工程师、运维工程师等角色)、基础设施和硬件(开发环境、测试环境、生产环境、服务器、网络等硬件资源,是软件工厂的运行基石)、工具和技术(包含需求管理工具、开发工具、自动化测试工具、CI/CD 工具等,提升生产自动化水平)、流程规范和方法论(标准化的开发流程、交付规范、文档模板,是软件工厂的运作指南)、质量管理(全流程质量管控机制,包含代码评审、自动化测试、安全扫描等,保障交付质量)。
(二)与传统开发模式的对比
| 对比维度 | 传统开发模式 | 软件工厂模式 |
|---|---|---|
| 敏捷交付 | 长周期、一次性交付,需求变更响应慢 | 迭代开发、CI/CD 持续交付,用户反馈驱动优化 |
| 流水线作业 | 环节间手工衔接,依赖个人经验,并行度低 | 清晰的环节划分、明确的输入输出与流转规则,支持并行处理,内置自动化支持与监控机制 |
| 安全可靠 | 安全问题事后补救,质量依赖个人能力 | 安全左移,内置安全开发实践、CI/CD 全流程安全扫描,常态化团队安全意识培训 |
| 协同开发 | 跨角色沟通效率低,知识沉淀不足 | 标准化的站会、代码评审机制,完善的知识库与协同工具,知识资产可复用 |
软件工厂与传统开发模式对比表
(三)建设方法与应用场景
- 四大建设维度
(1)组织建设:明确软件工厂的组织架构、岗位职责,设计标准化的工作流程,优化跨角色沟通机制,培育标准化、自动化的团队文化,定期开展流程成熟度评估。
(2)资源部署:开展项目前置规划,基于项目需求匹配人员与工具资源,准确估算工作量,配置全流程项目管理与变更管理机制。
(3)业务管理:覆盖项目管理、资源管理、质量管理、绩效管理、沟通管理、数据分析六大模块,实现全流程可监控、可追溯。
(4)体系保障:建立完善的质量管理体系、标准化流程规范、全量文档记录体系,确保生产过程可复制、可优化。 - 核心应用场景
(1)软件开发组织:建立规范的开发流程、版本控制机制,实现自动化构建测试、模块化设计、CI/CD 持续交付,提升开发效率与质量稳定性。
(2)软件项目交付:覆盖发布管理、安全检查、事件响应全流程;运营阶段支持安全监控、风险评估、应急响应、升级变更、服务支持、运营反馈闭环管理。
五、考试重点与备考建议
(一)高频考点梳理
- 过程类考点:可行性研究的四维度、八步骤(排序题高频考点)、详细调研的六大活动、系统分析与系统设计的核心任务差异(常考概念辨析)、需求规格说明书的核心特征。
- 方法类考点:APA 的核心目标、TOGAF ADM 十个阶段的顺序与核心任务、SOA 的六大设计原则(尤其是松耦合原则的场景应用)。
- 软件工厂考点:软件工厂与传统开发模式的差异、流水线作业的核心要素、自动化支持的定位(不能完全取代人工决策)。
(二)典型习题解析
关于信息系统可行性研究的步骤顺序,正确的是( )
A. ①复查系统目标和规模→②研究目前正在使用的系统→③重新定义问题→④导出新系统的高层逻辑模型→⑤导出和评价供选择的方案→⑥推荐一个方案并说明理由→⑦草拟开发计划→⑧书写文档并提交审查
B. ①研究目前正在使用的系统→②复查系统目标和规模→③导出新系统的高层逻辑模型→④重新定义问题→⑤导出和评价供选择的方案→⑥推荐一个方案并说明理由→⑦草拟开发计划→⑧书写文档并提交审查
C. ①复查系统目标和规模→②研究目前正在使用的系统→③导出新系统的高层逻辑模型→④重新定义问题→⑤导出和评价供选择的方案→⑥推荐一个方案并说明理由→⑦草拟开发计划→⑧书写文档并提交审查
D. ①复查系统目标和规模→②研究目前正在使用的系统→③导出新系统的高层逻辑模型→④重新定义问题→⑤推荐一个方案并说明理由→⑥导出和评价供选择的方案→⑦草拟开发计划→⑧书写文档并提交审查
答案:C,核心是先导出逻辑模型再重新定义问题,先评价多方案再推荐最优方案。在面向服务的架构(SOA)中,某电商系统将支付功能设计为独立服务,当订单服务从关系型数据库迁移到 NoSQL 数据库时,支付服务无需任何修改即可继续正常工作。这最能体现 SOA 的( )设计原则
A. 明确的接口定义 B. 自包含与模块化 C. 粗粒度 D. 松耦合
答案:D,松耦合原则的核心是服务内部实现变化不影响调用方,符合题干描述。关于软件开发流水线作业的关键要素,下列说法错误的是( )
A. 环节划分要求将开发过程划分为多个环节,每个环节需有明确输入输出
B. 流转规则定义了任务在不同环节之间如何流转和交接
C. 并行处理通过同时执行多个任务来提高开发效率
D. 自动化支持主要是为了减少人工参与,完全取代人工监控和决策
答案:D,自动化支持可以替代重复性劳动,但异常处理、关键决策仍需人工参与,无法完全取代人工。
(三)备考与实践建议
- 备考策略:重点记忆可行性研究步骤、TOGAF ADM 阶段顺序、SOA 设计原则等固定考点,通过练习题强化场景应用类考点的解题能力,区分系统分析与系统设计、松耦合与自包含等易混淆概念。
- 实践应用:在企业应用系统规划过程中,优先采用可行性研究四维度框架开展项目论证,避免盲目立项;存量系统较多的组织可引入 APA 方法优化系统组合,降低 IT 运维成本;软件开发规模超过 50 人的组织可参考软件工厂模式优化开发流程,提升交付效率与质量。