面向对象分析与设计Python版 分析与设计概述
文章目录
- 一、软件工程概述
- 二、分析与设计概述
一、软件工程概述
高质量软件系统的基本要求
- 架构性内聚
- 可重用性
- 可维护性
- 可扩展性
- 灵活性
软件开发过程模型:是指根据软件开发项目从开始到结束的一系列步骤和方法,建模为不同的模型。常见的有:
- 瀑布模型(Waterfall Model):线性顺序执行,分为需求分析、设计、实现、测试、部署和维护等阶段。每个阶段有明确的开始和结束,前一阶段完成后才能进入下一阶段。适用于需求明确且不太可能变更的项目。
- 敏捷开发(Agile Development):迭代和增量开发,强调适应性、客户协作和快速响应变化。通过短周期的迭代(通常称为“sprints”)来逐步构建和改进产品。适用于需求经常变化或需求不完全明确的项目。
- 迭代模型(Iterative Model):将项目分解成多个小的、可管理的部分,每一部分都是一个迭代。每个迭代都包含需求、设计、开发和测试阶段。适用于需求可以在项目开发过程中逐渐明确的项目。
- DevOps:强调软件开发和IT运营之间的协作和沟通。 通过自动化部署、持续集成和持续交付来提高软件交付的速度和质量。
分析、设计、实现与部署
- 分析是指对问题或需求的发现、理解和梳理,明确系统必须做什么。而不是解决方案,无需考虑如果解决
- 设计是指提出满足需求的概念性解决方案,包括架构设计、界面设计和数据库设计等
- 分析与设计的关系
- 分析为了明确做什么
- 设计为了明确怎么做
- 实现是指将设计方案使用编码实现。包括根据设计文档编写源代码、进行单元测试等
- 部署是指将软件系统部署到生产环境中,并确保其稳定运行。
二、分析与设计概述
面向对象分析与设计
-
面向对象分析(Object-Oriented Analysis,OOA)是一种调查问题域、确定所需对象及其相互关系的分析方法。主要任务包括确定系统中的主要对象、对象之间的关系、以及对象的属性。
-
面向对象设计(Object-Oriented Design,OOD)是一种将面向对象分析的结果转换成实际代码的设计方法。主要任务包括确定系统中对象的操作。
-
关系
- OOA 是 OOD 的前提和基础,没有良好的分析,设计就无从谈起。
- OOD 是 OOA 的具体实现,分析的结果需要通过设计来体现。
-
UML统一建模工具是一种思考的工具、沟通的形式,能够可视化地表达你的建模思想。重要的不是工具,而是面向对象的思维方式。即一切都是对象,一切都可以建模为模型。
您正在阅读的是《面向对象分析与设计Python版》专栏!关注不迷路~