基本模型

    xiaoxiao2021-03-25  43

    1.      CMU与美国国防部合作提出CMM/CMMI模型,解决了美国国防部什么问题?它对软件产业的作用是什么?

    帮助评价美国国防部的软件合同承包组织的能力,并帮助其改善软件质量。

    CMM/CMMI是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述,把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好地实现商业目标。

    2.      简述瀑布模型、增量模型、螺旋模型(含原型方法)的优缺点。

    瀑布模型:优点:定义了软件开发基本流程与活动。

              缺点:依赖问题,前面需求模糊,后面工作很难进行。

    容错问题,在后期发现需求问题,工作量难接受。

    资源调配问题,知识技能需求不同,人员数量要求不同。

    增量模型:优点:需求明确。

              缺点:项目控制和团队组织都比较困难。

    螺旋模型:优点:需求随用户评估进化新问题。

              缺点:迭代次数较多,不适合大团队,无法确定发布日期。

    3.      简述RUP的三大特点,其中哪些内容体现了用户驱动的开发,哪些内容体现风险驱动的开发?

    RUP的三大特点:用例驱动:驱动大量的开发活动,同步不同模型的内容。

                       以架构为中心:在早期使全局的结构基本稳定,控制了架构质量,就可以保证重大风险不会发生,保证了软件未来的扩展性,经验丰富的高层次的开发人员来完成架构,水平低的人员做其他部分。

                        迭代和增量开发:开发被组织成一系列固定的短期小项目,称为迭代,每次迭代都具有各自的需求分析、设计、实现和测试活动。

    用例驱动体现了用户驱动的开发。

    以架构为中心,迭代和增量开发体现风险驱动的开发。

    4.      RUP四个阶段的划分准则是什么?关键的里程碑是什么?

    初始阶段:为系统建立商业用例,确定项目的边界,里程碑是生命周期目标。

    精化阶段:分析问题领域,建立一个健全的体系结构基础,编制项目规划,淘汰项目中风险最高的元素,里程碑是生命周期架构。

    构建阶段:开发所有剩余的构件和应用部件,对他们进行测试并集成到产品中,里程碑是最初运作能力。

    移交阶段:把软件产品交付给用户群,里程碑是产品发布。

    5.      IT项目管理中,“工期、质量、范围/内容”三个元素中,在合同固定条件下,哪个最容易与客户达成妥协?理由。

    范围/内容最容易与客户达成妥协。因为工期必须要在客户指定的时间完成否则可能影响客户业务,质量是必须保证的不然软件产品会适得其反,但是80%的人只会用到软件产品20%的功能,所以范围/内容最容易与客户达成妥协。

    6.      RUP为企业按固定节奏生产、固定周期发布软件产品提供了依据,为什么?

    RUP提高了团队生产力,在迭代的开发过程、需求管理、基于组件的体系结构、可视化软件建模、验证软件质量及控制软件变更等方面,针对所有关键的开发活动为每个开发成员提供了必要的准则、模板和工具指导,并确保全体成员共享相同的知识基础,它建立了简洁和清晰的过程结构,为开发过程提供较大的通用性。它是一个迭代和增量开发,使软件产品能够按照固定节奏生产,固定周期发布软件产品。

    7.      讲述软件开发中1-2个有效的敏捷开发实践,以及依据。

    快速迭代:    相对那种半年一次的大版本发布来说,小版本的需求、开发和测试更加简单快速。一些公司,一年仅发布2~3个版本,发布流程缓慢,它们仍采用瀑布开发模式,更严重的是对敏捷开发模式存在误解。       由一年发布2个版本转到一个月发布2个版本,这也不太可能。但是现在来看,快速迭代已经成为事实标准,关键是要比目前的版本发布速度更快一些。       快速迭代,可以逼迫团队不断优化流程、提升工作效率,不要在无足轻重的事情上浪费时间。如果离deadline还有6个月,那么整个工作节奏必然悠哉。如果每月发布一个版本,那么较以前效率必然会更高。如果发布周期过长,导致无法尽快发现用户需求,进而无法及时改进产品。  

    8.      选择一个可追溯到初始版本的软件,如“知乎”,你认为实现当初类似“stack-overflow”这类问答模式的软件,需要多少人,多少月?

    需要12人,6个月。

    转载请注明原文地址: https://ju.6miu.com/read-50265.html

    最新回复(0)