• 计算与软件工程作业五


    作业要求 https://edu.cnblogs.com/campus/jssf/infor_computation17-31/homework/10584
    课程目标 讨论软件开发方法的思潮
    参考文献 https://www.cnblogs.com/xinz/p/3852390.html

    作业正文

    迄今为止,我们了解了不少软件工程的方法论。请从下表挑选几篇关于软件工程方法论的文章,仔细阅读(包括相关的讨论),根据你的软件工程经验分享你的看法。

    https://www.cnblogs.com/xinz/p/3852390.html

    瀑布模型

    瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。

    瀑布模型有以下优点
    (1)为项目提供了按阶段划分的检查点。
    (2)当前一阶段完成后,您只需要去关注后续阶段。
    (3)可在迭代模型中应用瀑布模型。
    (4)它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
    有以下缺点
    (1)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
    (2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
    (3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
    (4)瀑布模型的突出缺点是不适应用户需求的变化。
    由于瀑布模型的线性过程太过理想化,加上过于繁重的文档工作,已经不适合现在的软件开发了。

    银弹

    在民间传说中最恐怖的是“人狼”,而银弹就是消灭人狼的武器。如今一些软件就如同人狼,看似简单,实际上开发起来远远超出了预期的时间和成本,而现如今还没有一个“银弹”可以是软件成本下降。

    敏捷

    敏捷软件开发方法体系主要包括:SCRUM、XP(极限编程)、CRYSTAL(水晶编程)、PPD(特性驱动开发)等。
    敏捷开发的优点是轻量级、简单、可快速交付、最大的特点是高度透明、检验和适应,注重开发团队之间以及开发团队与客户的及时沟通,主张响应需求变化,但是不够系统。

    大泥球

    大泥球,是指杂乱无章、错综复杂、邋遢不堪、随意拼贴的大堆代码。这些年来,为了对付这个泥球,我们看到了多种指导方法,比如 SOLID 、 GRASP 和 KISS ,与其他诸多年代久远的、提倡高内聚、低耦合的方法一起出现。然而,实际情形没多大变化,“大泥球”看起来仍然是设计软件架构的最常见方法。
    大泥球为什么可以经久不衰,因为在软件开发中几乎是没有物质闯成本的,所以多做几个大泥球是不会有实际上的损失的,相反在硬件开发上要是也这样,很可能会造成不必要的浪费。

    总结

    软件开发是的方法有很多,单一是不可取的,传统的瀑布,要是一成不变,按照规定的套路去开发,发展必定不可能加快,同样的,其他的开发思潮或多或少有优点有缺点,在这样一个网络发达的社会,用户的需求可谓是多种多样,这就要求开发者不断修改软件上的漏洞,甚至可以是说成必须要不断更新,而不是一个软件开发出来一直用下去。我认为每一种开发都有其必要的地方,为了在软件开发的道路上不断前进,开发者就只能像海绵一样,一直吸收不同的开发思路。

  • 相关阅读:
    Yii2 使用 Beanstalk 队列系统
    Yii2 注册表单验证规则 手机注册时候使用短信验证码
    Yii2 高级模板 多域名管理问题
    PHP生成缩略图,控制图片质量,支持.png .jpg .gif
    yii2-lock-form 也许这就是你想要的,阻止表单多次提交
    PHP日期与时间戳转换
    PHP/Yii2操作Cookie,常见问题以及注意事项
    对称加密,API加密
    yii2弹出层
    两种不同的Context
  • 原文地址:https://www.cnblogs.com/MOLEkiss/p/12652667.html
Copyright © 2020-2023  润新知