结构化方法属于 (问题1) 的开发方法。它是目前最成熟、应用较广泛的一种工程化方法。但与此同时,该方法也存在着一定的局限性。 (问题2) 不属于结构化方法的主要不足和局限性。
结构化方法是当前成熟度高、应用广泛的工程化系统开发方法,以自顶向下、逐步求精为核心开发策略,属于面向过程、数据驱动的方法,常依托瀑布模型开展开发,擅长处理事务性强、数据流清晰的数据处理类系统,与自底向上开发策略、强调快速迭代的敏捷开发在核心思路上存在明显差异。但该方法也存在局限性,比如遵循严格的阶段划分导致开发周期偏长,前期分析设计完成后难以灵活适配需求变更,且相比面向对象方法,对数据结构的关注度不足。需要注意的是,结构化方法并非不适合数据处理领域,反而这类场景是它的主要应用方向。
本题考察的是结构化方法的开发策略和特点。
结构化方法是一种自顶向下、逐步求精、面向过程、以数据流为驱动的系统开发方法。
问题 1:
A选项自底向上:自底向上的开发方法是与结构化方法的“自顶向下”相对的策略,不符合结构化方法的原则,因此不是结构化方法的特点。
B选项敏捷:敏捷开发是一种强调快速迭代、客户参与和应对变化的现代开发方法,与结构化方法在思想上不同,因此不是结构化方法的种类。
C选项自顶向下:这是结构化方法的典型特点之一,开发从系统总体结构出发,逐步细化设计。因此这个选项是结构化方法的特点,不符合题干要求“哪一个不属于”,所以为正确答案。
D选项数据驱动:结构化方法以数据流图(DFD)为核心建模工具,因此是典型的数据驱动方法,属于结构化方法的特征。
因此,小题1的正确答案是 C。
问题 2:
A选项开发周期长:结构化方法一般遵循瀑布模型,自顶向下、阶段严格分明,导致开发周期较长,尤其在需求变更频繁的项目中尤为明显,属于其主要不足之一。
B选项难以适应需求变化:结构化方法的分析和设计阶段前置,一旦需求发生变化需要修改多个文档和设计,是其典型不足。
C选项很少考虑数据结构:结构化方法更强调过程和功能的分解,对数据结构的描述不够完善,尤其是与面向对象方法相比,这是其公认的弱点之一。结构化方法更加强调过程,面向过程建模,而不是像面向对象一样考虑明确每个实体在过程中的位置,从过程中抽象出实体来。
D选项不适合于数据处理领域的问题:结构化方法以数据流驱动,擅长处理事务性、数据流明显的系统,正是数据处理类问题的主要应用场景。因此这个选项说法错误,不是结构化方法的不足。
因此,小题2的正确答案是 D。
