- Learning Continuous Integration with Jenkins(Second Edition)
- Nikhil Pathania
- 271字
- 2021-07-02 21:18:28
How does the Agile software development process work?
In the Agile software development process, the whole software application is split into multiple features or modules. These features are delivered in iterations. Each iteration lasts for three weeks, and involves cross-functional teams that work simultaneously in various areas, such as planning, requirement analysis, designing, coding, unit testing, and acceptance testing.
As a result, no person sits idle at any given point in time. This is quite different from the Waterfall model wherein while the development team is busy developing the software, the testing team, the production team, and everyone else is idle or underutilized. The following diagram illustrates the Agile model of software development:
Agile methodology
From the preceding diagram, we can see that there is no time spent on requirement analysis or design. Instead, a very high-level plan is prepared, just enough to outline the scope of the project.
The team then goes through a series of iterations. Iteration can be classified as time frames, each lasting for a month or even a week in some mature projects. In this duration, a project team develops and tests features. The goal is to develop, test, and release a feature in a single iteration. At the end of the iteration, the feature goes for a demo. If the clients like it, then the feature goes live. But, if it gets rejected, the feature is taken as a backlog, re-prioritized, and again worked upon in the consecutive iteration.
There is also a possibility of parallel development and testing. In a single iteration, one can develop and test more than one feature in parallel.
- Linux設(shè)備驅(qū)動開發(fā)詳解:基于最新的Linux4.0內(nèi)核
- Linux網(wǎng)絡(luò)管理與配置(第2版)
- 構(gòu)建高可用Linux服務(wù)器(第4版)
- 從零開始寫Linux內(nèi)核:一書學透核心原理與實現(xiàn)
- Ansible權(quán)威指南
- Arch Linux Environment Setup How-to
- Windows Phone 7.5 Data Cookbook
- 嵌入式Linux驅(qū)動程序和系統(tǒng)開發(fā)實例精講
- 嵌入式操作系統(tǒng)(Linux篇)(微課版)
- Kubernetes從入門到實踐
- Linux自動化運維:Shell與Ansible(微課版)
- Ceph分布式存儲實戰(zhàn)
- OpenStack系統(tǒng)架構(gòu)設(shè)計實戰(zhàn)
- Python UNIX和Linux系統(tǒng)管理指南
- Heroku Cloud Application Development