Skip to content

何为软件工程?

  • 软件危机:当时软件开发的一个痛点:我们很难高效地开发出质量高的软件。
  • 软件工程:工程是为了解决实际的问题将理论应用于实践。软件工程指的就是将工程思想应用于软件开发。在更少资源消耗的情况下,创造出更好、更容易维护的软件。

软件开发过程

  • 需求分析:分析用户的需求,建立逻辑模型。
  • 软件设计:根据需求分析的结果对软件架构进行设计。
  • 编码:编写程序运行的源代码。
  • 测试 : 确定测试用例,编写测试报告。
  • 交付:将做好的软件交付给客户。
  • 维护:对软件进行维护比如解决 bug,完善功能。

软件开发模型

瀑布模型 定义了一套完成的软件开发周期,完整地展示了一个软件的的生命周期。

敏捷开发模型 是目前使用的最多的一种软件开发模型。MBA 智库百科对敏捷开发的描述是这样的:

敏捷开发 是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

像现在比较常见的一些概念比如 持续集成重构小版本发布低文档站会结对编程测试驱动开发 都是敏捷开发的核心。

正在精进