SWSAD-hw2

软件项目与知识团队管理基础

1、简答题

  • 用简短的语言给出对分析、设计的理解。

    • 分析。 就是对软件产品的需求、可行性进行分析。确定要做什么功能,需要什么成本,承担什么风险,能否成功,有怎样的收益,值不值得这么做。
    • 设计。 在软件产品完成分析阶段并决定继续开发之后,将更加实际地、系统地、细致地考虑和规划实现层面的细节,比如确定要用什么样的系统架构,什么样的管理体系,接口怎么设计,模块怎么分工等。
  • 用一句话描述面向对象的分析与设计的优势。

    • 自顶向下,设计时不用考虑太多底层细节。
    • 使设计简化,逻辑清晰。
    • 低耦合,模块之间较为独立,各司其职。
    • 模块可以被复用。
    • 灵活,便于审查、调整、维护以及扩展功能。
  • 简述 UML(统一建模语言)的作用。考试考哪些图?

    • UML作用主要是协助软件需求分析和软件设计,用简洁的语言描述类属性、类方法以及类与类之间的关系,简化分析与设计过程且逻辑清晰。
    • UML类图分类 参考
      • 用例视图
        • 用例图:从用户的角度描述了系统的功能,并指出各个功能的执行者,强调用户的使用者,系统为执行者完成哪些功能。
      • 设计视图
        • 类图:描述类的内部结构和类与类之间的关系。
        • 对象图:可以被看作是类图在某一时刻的实例。
      • 进程视图
        • 序列图:强调时间顺序。
        • 协作图:描述了收发消息的对象的组织关系,强调对象之间的合作关系。
        • 状态图:类似状态机。
        • 活动图:描述了活动到活动的控制流。
      • 实现视图
        • 构件图:表示系统中构件与构件之间,类或接口与构件之间的关系。
      • 拓扑视图
        • 部署图:描述了系统运行时进行处理的结点以及在结点上活动的构件的配置。强调了物理设备以及之间的连接关系。
  • 从软件本质的角度,解释软件范围(需求)控制的可行性

    • 由于软件本身的复杂性、不可见性、不一致性、可变性,在多数情况下,客户与开发者能就项目的 20% 内容给出严格的需求约定,80% 的内容都是相对模糊的。因此,围绕客户目标,发现并满足客户感兴趣的内容是最关键的。因此,范围管理是软件项目管理的重中之重!
    • 一些2/8法则:
      • 80%的工程量用在20%的需求上
      • 80%的开发成本花费在20%的部件上
      • 80%的错误是由20%的部件引起的
      • 80%的延期或返工是由20%的变更造成的
      • 80%的系统资源是由20%的部件消耗的
      • 80%的进度是由20%的人完成的

2、项目管理实践

  • 看板使用练习(提交看板执行结果贴图,建议使用 Git project)
  • 使用截图工具(png格式输出),展现你团队的任务 Kanban
  • 每个人的任务是明确的。必须一周后可以看到具体结果
  • 每个人的任务是1-2项
  • 至少包含一个团队活动任务

3、UML绘图工具练习(提交贴图,必须使用 UMLet)

请在 参考书2 或 教材 中选择一个类图(给出参考书页码图号)

  • 参考书:UML和模式应用(原书第三版)
  • 页码:7
  • 绘图练习:
    在这里插入图片描述