【系统分析与设计】是软件工程领域中的核心课程,涵盖了软件开发过程的多个关键环节。在中山大学2007级软件工程专业的期末考试试题(A卷)中,考题涉及了该课程的重要知识点,包括设计模式、统一建模语言(UML)、统一过程(Unified Process)以及敏捷开发方法等。
1. 设计模式的选择题中,"Iterator"迭代器模式被问及是否是某一模式的特例。选项给出了Factory Method(工厂方法)、DAO(数据访问对象)、Façade(外观模式)和Delegate(代理模式)。迭代器模式通常被视为对集合对象的遍历访问,它并不直接对应于这四个选项中的任何一个,但最接近的是Factory Method,因为两者都涉及对象的创建。
2. UML图类型的问题中,描述静态视角的设计模型的图是类图(Class Diagram),而非状态图(State Diagram)、序列图(Sequence Diagram)或通信图(Communication Diagram)。
3. 统一过程的四个阶段问题,正确的顺序是Inception(初始阶段)、Elaboration(细化阶段)、Construction(构造阶段)和Implementation(部署阶段),而不是其他选项所示的流程。
4. 在设计类图中,表示"has-a"关系的是组合(Composition)关系,而不是泛化(Generalization)、依赖(Dependence)或继承(Inheritance)关系。
5. 属于极限编程(Extreme Programming,XP)的敏捷方法是测试驱动开发(Test Driven Development,TDD),而非共同项目工作室(Common Project Workroom)、自我组织团队(Self-Organizing Teams)或回归测试(Regression Testing)。
6. 关于UML和面向对象设计的陈述,正确答案是只有两个陈述是真实的:(2) 分配职责是面向对象设计的主要任务;(3) UML是面向对象分析和设计的方法论。因此,正确答案是C(2个正确)。
7. 关于用例的陈述,只有一个不真实,即(1) 用例的参与者可以分为主要参与者、支持参与者和后台参与者。其他两个陈述是正确的:(2) 一个用例可以包含多个场景;(3) MVC模式的主要思想是将表现逻辑代码与业务逻辑代码分离。所以,正确答案是B(1个不真实)。
8. 关于操作合同、领域模型和用例的陈述,有两个是真实的:(2) 领域模型也被称为概念模型、领域对象模型和分析对象模型;(3) 用例主要用于捕获非功能需求。因此,正确答案是C(2个真实)。
9. 关于分析的陈述,只有一个是真的:(2) 领域模型也称为概念模型、领域对象模型和分析对象模型。其他两个陈述不正确:(1) 前置条件不是操作合同中最重要的部分;(3) 用例主要用于捕捉功能性需求。所以,正确答案是B(1个真实)。
这些题目反映了系统分析与设计课程的核心内容,包括设计模式的理解、UML图的用途、软件开发过程的阶段划分、敏捷开发方法的应用,以及分析和设计过程中的关键概念。学生需要对这些概念有深入理解,并能灵活运用到实际问题中。通过开卷考试,可以检验学生对理论知识的实际应用能力和解决问题的能力。