软件工程第一周作业

时间:2021-01-17 21:54:41

针对《构建之法》提出的五个问题。

  1.开发什么样的软件适合瀑布模型?

  瀑布模型提供了软件开发的基本框架。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确认,则继续下一项活动;否则返回前面,甚至更前面的活动。
  在我看来我做的项目都不太适合用瀑布模型开发,因为瀑布模型已不再适合现代的软件开发模式,几乎被业界抛弃。
  (1) 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;
  (2) 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;
  (3) 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。

  2.软件开发团队中各部门人员的分配比例是多少最恰当?

  软件团队有各种形式,使用于不同的人员与需求。基于直觉形成的团队模式未必是最适合的。

  主治医师模式、明星模式、社区模式、业余剧团模式、秘密团队、特工团队、交响乐团模式、爵士乐模式、功能团队模式、官僚模式,这些软件团队模式都适合开发什么样的软件?

  3.什么样的软件开发团队要开发什么样的软件才适合敏捷流程?

  “敏捷流程”是一系列价值观和方法论的集合。

  敏捷开发的原则是:

  (1)尽早并持续地交付有价值的软件以满足顾客需求

  (2)敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势

  (3)经常发布可用的软件,发布间隔能短则短

  (4)业务人员和开发人员在项目开发过程中应该每天共同工作

  (5)以有进取心的人为项目核心

  (6)要面对面交流

  (7)可用的软件是衡量项目进展的主要指标

  (8)敏捷流程应保持可持续的发展

  (9)只有不断关注技术和设计才能越来越敏捷

  (10)保持简明尽可量简化工作量

  4.MSF 敏捷开发模式与MSF CMMI开发模式的区别?

  MSF敏捷开发模式吸收了近几年来在软件行业界流行的各种“敏捷”开发模式的优点,认识到大部分的软件是以网络应用相联系的,强调和用户更紧密的交流,快速迭代,避免不必要的等待和流程。

  5.如何成为一名优秀的软件需求分析人员,做好开发人员和用户之间的桥梁?

  准确而全面地找到软件需求的步骤:

  (1)获取和引导需求

  (2)分析和定义需求

  (3)验证需求

  (4)在软件产品的生命周期中管理需求