1、简答题
1)用简短的语言给出对分析、设计的理解。
分析主要是强调问题和需求的调研过程,比如分析一个系统的功能点、分析它的主要用法等,发掘关键要素、抽离出问题的概念模型;设计则从软件或硬件层次给出一个理论上能满足需求的解决方案,并不是指具体实现,比如系统的结构、软件设计层级等。
2)用一句话描述面向对象的分析与设计的优势。
面向对象的分析与设计是对现实中的对象进行结构化,抽象化,使得面向对象的分析者不必是某个程序语言的专家,问题域的专家和在实现层面的专家可以通过通用的符号进行沟通,便于在软件中构建更真实的虚拟世界
3)简述 UML(统一建模语言)的作用。考试考哪些图?
UML作为一种模型语言,它适用于数据建模,业务建模,对象建模,组件建模等,能够使开发人员专注于建立产品的模型和结构,而不是选用什么程序语言和算法实现。UML对大规模,复杂系统进行建模方面,特别是在软件架构层次十分有效,它可以贯穿软件开发周期中的每一个阶段。
考试主要考4类图:
用例图:用户角度、功能、执行者
静态图:系统静态结构,包括类图、对象图、包图;
行为图:系统动态行为,包括交互图、状态图、活动图
实现图:描述系统的组成和分布状况,包括构件图、部署图
4)从软件本质的角度,解释软件范围(需求)控制的可行性
软件具有复杂性、一致性、可变性、不可视性。软件开发本身具有可变性,而任何微小的需求变化都可能对软件的设计开发造成很大的影响,会影响软甲开发的难度,提高复杂性,如果不对软件的需求做出控制,会无意义地增加开发难度,对软件制品的质量产生负面效果,所以控制软件需求是必须的。
在需求分析与设计的过程中,我们可以围绕软件开发的复杂性,对现有的需求进行评估,同时围绕软件开发的成本进行调控,并对其可变和不可视的环境变化,也就是意外改动进行一致性的冗余设计,由此可以使得软件生产的预算、工期、意外变化等在一定程度都在我们的掌控之中
2、项目管理实践
1)看板使用练习(提交看板执行结果贴图,建议使用 Git project)
- 使用截图工具(png格式输出),展现你团队的任务 Kanban
- 每个人的任务是明确的。必须一周后可以看到具体结果
- 每个人的任务是1-2项
- 至少包含一个团队活动任务
2)UML绘图工具练习(提交贴图,必须使用 UMLet)
- 请在 参考书2 或 教材 中选择一个类图(给出参考书页码图号)
UML和模式应用(第三版) 图16 - 5