美文网首页
迭代方法与人类认识事物的客观规律

迭代方法与人类认识事物的客观规律

作者: 止墨zm | 来源:发表于2018-04-24 08:20 被阅读0次

    何为认识?

    认识一词指的是对一个事物的了解和总结归纳与抽象程度,人类认识事物的过程是一个循序渐进的过程,没有人可以在第一次接触一个全新的领域和事物时可以完全认识它的本质和规律,大部分人都是在日常的工作或学习过程中对同一领域反复探索、思考和尝试的过程中,逐渐在心中为这个事物下了定义,自己心中下的这个定义才叫做认识,仅仅阅读别人下的定义最多只能叫做了解,这一点是人类探索新事物时客观存在的现象。

    瀑布模型与迭代方法中的认识假设

    一个反例是,希望在接触一个事物的开始,就完全领会其本质,完全掌握其细节,完全把我其规律和发展方向。我们在平日工作之中也不免产生这样的幻想,希望在一开始就通过苦思冥想来彻底吃透这个事物。这样的过程与人类认识事物的客观规律是背道而驰的,在工程中,这种反例的代表就是瀑布模型。

    因此相对于瀑布模型,迭代是一种更符合人类认识新生事物规律的方法,即在摸索中前进。这里一个关键的前提是,要勇于承认自己无法在刚接触一个事物时就能完全掌握它,学习和认识是需要一个客观的过程的。

    就其具体方法而言,迭代指出要根据初步的分析和认识先做出一个初级版本的软件产品,然后抛砖引玉地获得开发人员、测试人员、用户的反馈,通过反馈来修正最初的认识,其产出就是修正原来的假设、设计和实现。

    反馈的力量

    反馈一词,不仅是迭代方法中的重要核心,也是人类学习一切事物的核心。比如有了初步认识,但自己如何知道自己形成的这个所谓初步认识是否是是正确的和符合客观规律的?这就需要尝试,获得反馈,来修正自己的认识,这也是刻意练习中强调的一个概念:单纯的反复练习是无效的,有明确的可衡量目标加上明确的结果反馈的重复练习才是有效的。

    面临重要事情抉择时是否更容易因感性的重视而忘记客观的规律

    曾经疑惑的一点是,整体架构与迭代的关系到底是什么?在我初期的理解中,一个系统的架构,非常重要,一个不好的架构,会为未来的开发和拓展带来非常大的麻烦,因此我曾经怀疑是否整体架构应当是初期充分设计的,迭代只是去完善相对小的功能点。我在这种思考中犯的逻辑错误是,因为一个事物非常关键和重要,就试图用一种符合理想但不符合客观规律的方法去实现它。架构虽然重要,但是也极少有人可以在初期就设计一个完备的架构,经验可能会提升设计的完备性,但仍然无法保证其完备性。因此架构也是需要迭代的,只不过一个能让人稍感安慰的规律是,在迭代项目的初期,会伴随着人对系统和需求认识的重大修改,其结果也就是架构改造,但随着迭代的重复和进行,后期结果会逐渐收敛和平稳。也就是说迭代方法选择让修改架构这种事情发生在项目初期,此时修改的代价会小得多。

    法自然

    从进化的观点来看,迭代似乎也暗合了自然界进化的规律。一个物种并无法预知未来外界环境的变化,因而也无法事先设计出一个完备的符合未来环境变化和发展的基因。自然界的做法是,利用种群数量的优势,让 个体变异和组合出不同的基因,只要未来环境变化没有剧烈到毁灭一切的程度,总会有一小部分的基因个体突围出来适应了这个新秩序。这个过程的本质也就是“试错--反馈--决定下一步发展方向”的过程。这个事情给我带来的启发是,也许人类无法产生智慧,人类只能从自然和外界现象的暗示中产生知识,智慧的根源始终掌握在大自然手中,不知道这是不是一种理解“法自然”的思路。

    相关文章

      网友评论

          本文标题:迭代方法与人类认识事物的客观规律

          本文链接:https://www.haomeiwen.com/subject/nkddlftx.html