软件工程作业
1. Try to develop a set of actions for the communication activity. Select one action and define a task set for it.
沟通活动的一系列动作
-
对于个人负责的小型软件项目
- 一个电话
- 一封邮件
-
对于涉及多人利益的大型软件项目
- 起始
- 需求获取
- 需求细化
- 协商
- 规格说明
- 确认
某一动作的任务集
- 针对电话交流的任务集
- 通过电话与利益相关者取得联系
- 讨论需求并做记录
- 将笔记整理成一份简单的书面需求
- 通过E-mail请利益相关者审阅并认可
2. A common problem during communication occurs when you encounter two stakeholders who have conflicting ideas about what the software should be. That is, you have mutually conflicting requirements. Develop a process pattern(this would be a stage pattern) using the template presented in Section 3.4 that addressed this problem and suggest an effective approach to it.
-
模式名称:需求冲突
-
驱动力:该模式描述了一种构建模型的方法,使得利益相关者可以了解需求,以便更清楚确定软件需求。
-
类型:阶段模式
-
启动条件:(1)利益相关者已确定(2)利益相关者和软件工程师已经确立了协作通信(3)软件要解决的主要问题由软件开发团队已建立。(4)对已开发的项目范围,基本的业务需求和项目的限制有了初步的了解。
-
问题: 对正在开发的软件,利益相关者的需求出现了相互的矛盾。
-
解决方案:所有的利益相关者被要求区分需求的优先级,暂时保住利益相关者的优先级最高或投票的最多的需求从而解决这一问题。
-
结果: 由利益相关方的确定的需求优先顺序列表来指导软件开发团队构件软件初始模型。
-
相关模式:定义指导和协作方针,范围隔离,需求收集,约束描述和混合需求。
-
已知应用和实例: 必要的沟通是贯通整个软件工程中
3. Provide three examples of software projects that would be amenable to the waterfall model. Be specific.
- 数据结构
- 软件架构
- 程序的细节
- 借口表征的对象
4. Provide three examples of software projects that would be amenable to the prototyping model. Be specific.
- 人机交互和
- 复杂计算机图形软件应用程序
- 某些类别的数学算法
- 命令驱动系统
- 其他应用在没有实时交互时结果可以很容易地检查。
- 控制和过程控制功能许多种类的实时应用程序和嵌入式软件。
5. Provide three examples of software projects that would be amenable to the incremental model. Be specific.
- 每一个线性序列产生的字处理软件开发使用增量范式可能会提供基本的文件管理,编辑和文件制作功能在第一增量,更复杂的编辑和文件制作能力在第二增量;拼写和语法检查在第三增量,先进的页面布局能力在第四增量。任何增量的处理流程 可以纳入原型范式。增量发展是特别有用当人员无法在经营期限为一个已成立的项目做完美的实施。
6. Visit the Official Agile Modeling site and make a complete list of all core and supplementary AM principles.
- 有目的的模型
- 使用多个模型
- 轻装上阵
- 内容重于表达形式
- 理解模型及工具
- 适应本地需要