软件工程基础知识整理(九推)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_43145926/article/details/99761918

软件开发流程
在这里插入图片描述
1、可行性分析:

从市场、政策、经济、技术、人员等各方面因素来分析这个软件项目开发的可实行性。

2、需求分析:

做市场调研,通过请教行业专家或者分析市场同类型的产品,来判断这个项目的开发是否有发展前景。

3、系统设计:

确定软件的体系结构、数据结构、算法、模块功能,以及用户界面的设计等等,如果这些事情没有设计好,接下来的设计可能会变得一团糟。

4、程序设计:

根据以上几点进行软件编码,将软件设计转换成计算机能够识别的程序语言。

5、测试与调整:

一款软件从开发出来到正式的发布,一定需要经过不断的测试,才能尽可能的发现更多的错误,然后做出相应的修改,而且修改之后还需要重新测试。

6、系统维护:

系统维护主要是根据用户在使用过程遇到的错误,或者由于硬件设备不断更新等外部因素引发的问题,或者为了完善用户的体验度等等而做出的相应的完善和维护

瀑布模型

  • 瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。

  • 核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

  • 优点

    • 为项目提供了按阶段划分的检查点
    • 当前一阶段完成后只需要关注后续阶段
    • 可在迭代模型中应用瀑布模型
    • 它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
  • 缺点

    • 各个阶段划分完全固定,阶段之间产生大量文档,极大增加工作量
    • 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
    • 通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
    • 瀑布模型的突出缺点是不适应用户需求的变化。

软件开发周期模型

软件设计模式

  • 软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
  • 创建型模式处理的是对象的创建过程,结构型模式处理的是对象/类的组合,行为型模式处理类和对象间的交互方式和任务分布。
  • 创建型:创建对象时,不再由我们直接实例化对象;而是根据特定场景,由程序来确定创建对象的方式,从而保证更大的性能、更好的架构优势。创建型模式主要有简单工厂模式(并不是23种设计模式之一)、工厂方法、抽象工厂模式、单例模式、生成器模式和原型模式。
  • 结构型:用于帮助将多个对象组织成更大的结构。结构型模式主要有适配器模式、桥接模式、组合器模式、装饰器模式、门面模式、享元模式和代理模式。
  • 行为型:用于帮助系统间各对象的通信,以及如何控制复杂系统中流程。行为型模式主要有命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板模式和访问者模式。

猜你喜欢

转载自blog.csdn.net/qq_43145926/article/details/99761918