软件工程是一门用工程化方法解决软件项目问题的学科,其本质也是一门工程学科,这门课的知识在学完后,不仅可以应用在软件项目中,还可以应用于日常生活中遇到的一些问题,Everything is a project
解决问题的方式,就是参考软件生命周期和瀑布模型,把一件事情分成几个阶段: 分析、设计、实施、测试、完成,然后制定相应的计划。这种方法不仅非常有效,让我的做事效率大幅提高,而且让我在看待事情上,能够更全面地、站在更高的角度去思考
有目的、有计划、有步骤地解决问题的方法就是工程方法。 工程方法不是软件工程独有的,几乎所有工程类别都可能会应用,例如建筑工程、电子工程等,只不过步骤可能略有不同

工程方法通常会分成六个阶段:想法、概念、计划、设计、开发和发布。
在日常处理事务时,天然地会选择自己感兴趣的、擅长的那部分,而容易无视整体和其他部分。
问题的核心并不在于是不是用工程方法,而是有没有把这件事当作一个项目,是不是能看到这件事的全貌,而不是只看到局部。
在工作分工越来越细致的今天,项目里面有产品设计、开发、测试、运维等诸多岗位,每个岗位都有自己的价值追求。分工带来的好处,就是复杂的任务可以分给不同的人来做,这也有助于技能的专业化,提高工作效率。但如果只站在自己的立场去考虑问题,没有人关注整体价值,就容易相互误解,产生矛盾、增加成本
以下这些工作场景,估计你不会陌生。
在很大程度上都归因于大家只是站在自己岗位的角度来看问题,没有站在项目的整体角度来看。
如果能站在项目整体来看问题,就会去关注 项目的质量、项目的进度、项目的成本、项目的最终用户,那么上面这些场景将变成:
每个项目成员,如果能多站在项目的角度去考虑,那么这样不仅对项目有利,更对自己有好处
很多人都有技术升管理的理想,能多站在项目整体角度去考虑的人,在日常工作中,也一定会有更多的锻炼机会,自然会多一些提升的空间。
把这种思维方式称为“工程思维”。 工程思维,本质上是一种思考问题的方式,在解决日常遇到的问题时,尝试从一个项目的角度去看待问题、尝试用工程方法去解决问题、站在一个整体而不是局部的角度去看问题