1、简答题
-
用简短的语言给出对分析、设计的理解。
分析强调的是对问题和需求和调查研究,而不是解决方案。其含义较为广泛,如市场分析,需求分析,面向对象分析等等。
设计强调的是满足需求上的解决方案,但不涉及其实现,设计通常不会涉及较为底层细节的描述,更多是描述宏观的事物和策略。
简单来说分析就是做正确的事,设计就是正确地去做事。
-
用一句话描述面向对象的分析与设计的优势。
使开发者在关注程序实现功能的同时不会忘记用抽象去表达设计理念,并且抽象获得的对象有助于隐藏复杂度,在一定程度上简化了通过对象表达和理解软件虚拟世界的难度。
-
简述 UML(统一建模语言)的作用。考试考哪些图?
UML是描述,构造和文档化系统制品的可视化语言,是图形化表示法的事实标准,主要用来绘制和展示 与软件(尤其是OO
软件)相关的图形和文字,能够形象直观的表达面向对象软件设计中各个部分的逻辑和关联,帮助软件开发人员更好的理解项目设计。
考试图如下:
- 用例图:
展现了一组用例、参与者(actor)以及它们之间的关系。用例图从用户角度描述系统的静态使用情况,用于建立需求模型。 - 静态图:
- 类图:用于描述系统的静态结构。
- 对象图:表示在某一时刻一组对象以及它们之间关系的图
- 包图:描述系统的分解结构
- 行为图:
- 状态图:用来描述类的对象所有可能的状态以及时间发生时状态的专业条件
- 活动图:描述满足用例要求所要进行的活动以及活动间的约束关系,使用活动图有利于识别系统的并行活动。
- 序列图:描述对象之间的交互顺序,着重体现对象间信息传递的时间顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程。
- 协同图:描述对象之间的合作关系,侧重于说明哪些对象之间有消息传递
- 实现图:
用来描写叙述实现方面的信息,它从系统的层次来描写叙述下面双方面的信息:硬件的组成和布局;软件系统划分和功能实现。
-
从软件本质的角度,解释软件范围(需求)控制的可行性
因为软件本质包括复杂性、一致性、可变性、不可视性,所以多数情况,客户与开发者能只就项目的 20% 内容给出严格的需求约定,其余的内容都是含混不清的。如果我们能围绕客户要求,很好的细化有效要求,发现并满足客户感兴趣的内容,同时舍弃无用且复杂的内容,那么就可以带来事半功倍的效果。所以说软件需求控制就是可行的。
2、项目管理实践
-
看板使用练习(提交看板执行结果贴图,建议使用 Git project)
- 使用截图工具(png格式输出),展现你团队的任务 Kanban
- 每个人的任务是明确的。必须一周后可以看到具体结果
- 每个人的任务是1-2项
- 至少包含一个团队活动任务
-
UML绘图工具练习(提交贴图,必须使用 UMLet)
- 请在 参考书2 或 教材 中选择一个类图(给出参考书页码图号)
《UML和模型应用 中文第三版》P193 关联类