带你读《SAS数据分析开发之道 软件质量的维度》第一章概览1.1引言(六)

简介: 带你读《SAS数据分析开发之道 软件质量的维度》第一章概览1.1引言

敏捷软件开发


敏捷软件开发模型与瀑布模型不同,敏捷模型强调通过快速迭代反复式的设计和开发。敏捷模型遵循敏捷软件开发宣言AKA敏捷宣言,包括ScrumLeanExtremeProgramming(XP)CrystalScaledAgileFrameworkSAFeKanban等。

2001年,17位软件专家聚集在犹他州的 Snowbird,一起创建并提出了敏捷宣言,规定了软件开发的最佳实践。


在敏捷开发环境中,软件是通过迭代开发生成的,整个SDLC都在一个具有时间限制的迭代中,通常从两周到八周不等。每次迭代都包含软件设计、开发、测试、验证及生产等阶段,这样一来,可运行的软件便会在迭代结束时递交到客户手中,那时,客户会提出其他的功能或性能需求,添加到后续的开发迭代中。这样做对客户有利,    因为他们能够在软件的开发过程中追求新的机会和商业价值,而不用被迫向已贬值的    软件项目中继续投入资金软件项目之所以贬值可能是因为商业需求、机会、风险及关注中心的改变使SDLC延长。图1-4所示是敏捷软件开发模式,在该环境下,软件的开发是通过一系列周期为两周的迭代完成的。


image.png


1-4    敏捷软件开发模式

 

敏捷模型有时被看作是一系列短小的    SDLC,尽管这确实体现了敏捷开发的迭代性,但没有完全抓住敏捷模型的原则和过程。例如,由于敏捷开发迭代地发布软件,    因此当前迭代中可能会出现上一迭代的维护问题,这就迫使开发人员(或客户)必须    要在进行维护和如期发布新功能或性能之间做出选择。因此,敏捷开发的一个弱点就    是新功能开发和旧功能维护之间存在的不可兼顾性,我们将在第 13章讲述这一内容。不可兼顾性与瀑布模型环境不同,在瀑布环境中,软件的维护主要是在软件开发过程    大部分已经完成且已进入生产过程时进行。

尽管敏捷模式存在上述弊端,但近十年来,该模式已被看作是软件开发领域的一个最佳实践,而且定义了21   世纪的软件开发。然而,它虽在传统应用程序开发环境中赢得了好的声望,但还未扎根于数据分析开发环境中,一部分原因是终端用户开发人员的倾向,他们支持数据分析环境,而且关注的是特定领域的最佳实践而非软件开发方法及最佳实践。

另一个缺点来自敏捷模型文献,此类图书经常描述一种理想化的开发人员型,他们只负责可发布代码的开发,而不关注数据产品的创作,也不参与其他能带来商业价值的操作。在这些以软件为中心的敏捷模型描述中,数据分析开发环境中常见的活动(如数据分析或报表撰写)通常都不会涉及,或者只是略微一提。尽管敏捷模型文献有这类缺点,但敏捷方法、原则及技巧都可应用于且建议用于数据分析开发。

对于那些想探究敏捷模型的人来说,有许多好的资源可以借鉴,尽管这些资料描述的都是传统软件应用程序开发的,但还是值得参阅的。我在另一本书中讲述了敏捷模型对 SAS 软件开发的作用——软件开发是你的方法但不是你最终的产品 :提取敏捷模型用于终端用户开发及分析程序,帮你简单了解敏捷模型支持数据分析开发。

相关文章
|
5月前
|
机器学习/深度学习 数据挖掘 BI
推荐一款 Python 数据分析报告开发与分享神器
推荐一款 Python 数据分析报告开发与分享神器
|
5月前
|
机器学习/深度学习 数据采集 人工智能
Python可以应用于多个领域,如Web开发、数据分析、机器学习等
Python可以应用于多个领域,如Web开发、数据分析、机器学习等
|
9月前
|
数据挖掘
怎么理解数据分析、维度和指标?
怎么理解数据分析、维度和指标?
|
10月前
|
SQL 数据采集 数据可视化
数据开发模块中的SQL和数据分析模块中的SQL查询
数据开发模块中的SQL和数据分析模块中的SQL查询
153 1
|
10月前
|
机器学习/深度学习 人工智能 算法
Python编程入门基础及高级技能、Web开发、数据分析和机器学习与人工智能
Python编程入门基础及高级技能、Web开发、数据分析和机器学习与人工智能
137 0
|
12月前
|
机器学习/深度学习 人工智能 分布式计算
在多元宇宙中,SAS探索下一代数据分析的生产力
在多元宇宙中,SAS探索下一代数据分析的生产力
|
SQL 存储 数据挖掘
ChatGPT 数据仓库实战:Kaggle 酒店入住数据分析与维度建模
ChatGPT 数据仓库实战:Kaggle 酒店入住数据分析与维度建模
|
数据挖掘 索引 Python
python开发:空气质量历史数据分析(四)
python开发:空气质量历史数据分析(四)
104 0
python开发:空气质量历史数据分析(四)
|
数据挖掘 定位技术 Python
python开发:空气质量历史数据分析(三)
python开发:空气质量历史数据分析(三)
|
14天前
|
机器学习/深度学习 数据采集 算法
Python用逻辑回归、决策树、SVM、XGBoost 算法机器学习预测用户信贷行为数据分析报告
Python用逻辑回归、决策树、SVM、XGBoost 算法机器学习预测用户信贷行为数据分析报告