- Learning Continuous Integration with Jenkins
- Nikhil Pathania
- 414字
- 2021-07-16 10:41:55
Chapter 1. Concepts of Continuous Integration
Software technology has evolved much like life on Earth. In the beginning, websites were static and programming languages were primitive, just like those simple multicellular organisms in the ancient oceans. In those times, software solutions were intended only for a few large organizations. Then, in the early 90s, the popularity of the Internet led to a rapid growth in various new programming languages and web technologies. And all of a sudden, there was a Cambrian-like explosion in the domain of information technology that brought up diversity in software technologies and tools. The growth of the Internet, powered by dynamic websites running on HTML languages, changed the way information was displayed and retrieved.
This continues to date. In recent years, there has been an immense demand for software solutions in many big and small organizations. Every business wants to venture its product online, either through websites or apps. This huge need for economical software solutions has led to the growth of various new software development methodologies that make software development and its distribution quick and easy. An example of this is the extreme programming (XP), which attempted to simplify many areas of software development.
Large software systems in the past relied heavily on documented methodologies, such as the waterfall model. Even today, many organizations across the world continue to do so. However, as software engineering continues to evolve, there is a shift in the way software solutions are being developed and the world is going agile.
Understanding the concepts of Continuous Integration is our prime focus in the current chapter. However, to understand Continuous Integration, it is first important to understand the prevailing software engineering practices that gave birth to it. Therefore, we will first have an overview of various software development processes, their concepts, and implications. To start with, we will first glance through the agile software development process. Under this topic, we will learn about the popular software development process, the waterfall model, and its advantages and disadvantages when compared to the agile model. Then, we will jump to the Scrum framework of software development. This will help us to answer how Continuous Integration came into existence and why it is needed. Next, we will move to the concepts and best practices of Continuous Integration and see how this helps projects to get agile. Lastly, we will talk about all the necessary methods that help us realize the concepts and best practices of Continuous Integration.
- Ubuntu Linux操作系統(tǒng)
- 構(gòu)建可擴(kuò)展分布式系統(tǒng):方法與實(shí)踐
- 深入Linux內(nèi)核架構(gòu)與底層原理(第2版)
- Windows Phone 8 Application Development Essentials
- Microsoft Operations Management Suite Cookbook
- 注冊(cè)表應(yīng)用完全DIY
- Linux內(nèi)核設(shè)計(jì)的藝術(shù):圖解Linux操作系統(tǒng)架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)原理
- Introduction to R for Quantitative Finance
- Linux系統(tǒng)最佳實(shí)踐工具:命令行技術(shù)
- Windows 7使用詳解(修訂版)
- Windows 7實(shí)戰(zhàn)從入門(mén)到精通(超值版)
- Heroku Cloud Application Development
- Multi-Cloud for Architects
- Learn OpenShift
- Windows網(wǎng)絡(luò)編程(第2版)