Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
DevOps for SharePoint : with Packer, Terraform, Ansible, and Vagrant
Medina O., Schumann E., Apress, New York, NY, 2018. 256 pp. Type: Book (978-1-484236-87-1)
Date Reviewed: Jul 14 2020

The existence of, and respect for, software engineering principles in the lives of software engineers, developers, and project managers is quite rich. Moving beyond systems development life cycle (SDLC)-driven models such as waterfall and agile has shown the strengths and weaknesses in the relationships between end users and developers. The weaknesses are more apparent in enterprise systems deployment, such as enterprise resource planning (ERP) software. Even with today’s improved tools and frameworks (traditional models as well as agile frameworks), the level of satisfaction with total cost of ownership (TCO) is quite low, though adoption rate has increased manifold.

It has been a challenging task to align application life cycles with dynamic business requirements. There is debate on whether agile will replace traditional SDLC models and whether these should coexist; however, the consensus is clearly in support of coexistence. Another dimension that has often bothered developers is keeping the operations team in good stead and ensuring dynamic alignments between the software life cycles and deployment. DevOps, a framework/method like agile, is seen as an approach that is in coexistence with all the models/frameworks in the domain of software engineering. This approach aims at nurturing a good culture and practice that proactively supports the operations team in alignment with the application development life cycle, especially when enterprise systems are in deployment. Since its introduction, DevOps has been seen as a support structure for infrastructure as code (IaC) and a practice for enabling an ecosystem in provisioning, configuring, orchestrating, and deploying software that is developed.

This book covers the basic tenets of the concepts behind DevOps and IaC techniques. It provides code-specific presentations and sequences to set up an environment, which will help operations teams understand and internalize the benefits of DevOps. The book provides scenarios for setting up hardware, operating systems, and application layers, and includes how to configure a platform for testing and deployment. It highlights the process of using open-source tools--Vagrant, Packer, Terraform, and Ansible--in the context of deploying and scaling a SharePoint farm.

As rightly claimed, the book is suitable for high-end information technology (IT) professionals engaged in enterprise systems deployment and upkeep. Exposure to SharePoint and Azure or Amazon Web Services (AWS) will perhaps help. The mere presentation of code reduces its readability. An alternative approach could have been to include the code as appendices, focusing more on the outcomes of such deployment in real-life scenarios. Explanations via use cases are missing, which could have helped readers better understand DevOps frameworks.

Architectural frameworks, by using the component-based relationships among all the SDLC models, agile, and DevOps tools/frameworks, in the context of enterprise application integration (EAI), could have enriched the content. The role of software architects is quite meaningful in such scenarios. Because the book focuses on some specific tools, discussions on metrics-based and benchmarked results could have improved its content. That being said, the book provides a comprehensive approach for readers to use the code and set up an environment for code testing and a testbed for configuration management. Overall, the book will generate interest in using open-source technologies to work with Microsoft products.

Readers should note that DevOps is poised to change the IT culture. As a tool or process, it may help organizations bring together the professionals working on development, solutions/projects, delivery, operations, and production. But this is a tough call to succeed in this movement. Thus, in my view, readers should be aware of the issues around DevOps, in conjunction with basic inputs on software architecture, enterprise architecture and integration, agile methods, and software engineering.

Additional books on DevOps may be helpful [1,2,3], with the caveat that DevOps is not the panacea for the challenges we face today in software engineering.

More reviews about this item: Amazon

Reviewer:  Harekrishna Misra Review #: CR147015 (2012-0289)
1) Humble, J.; Farley, D. Continuous delivery: reliable software releases through build, test, and deployment automation. Pearson, Boston, MA, 2011.
2) Davis, J.; Daniels, R. Effective DevOps: building a culture of collaboration, affinity, and tooling at scale. O’Reilly, Sebastopol, CA, 2016.
3) Murphy, N. R.; Beyer, B.; Jones, C.; Petoff, J. Site reliability engineering. O’Reilly, Sebastopol, CA, 2016.
Bookmark and Share
 
Automation (K.4.3 ... )
 
 
Cloud Computing (C.2.4 ... )
 
 
Software Management (K.6.3 )
 
Would you recommend this review?
yes
no
Other reviews under "Automation": Date
Declarative techniques for model-driven business process integration
Koehler J., Hauser R., Sendall S., Wahler M. IBM Systems Journal 44(1): 47-65, 2005. Type: Article
Aug 4 2005
Smart home automation with Linux and Raspberry Pi (2nd ed.)
Goodwin S., Apress, Berkeley, CA, 2013.  328, Type: Book (978-1-430258-87-2)
Oct 15 2013
The road to a modern IT factory: industrialization - automation - optimization
Abolhassan F., Springer Publishing Company, Incorporated, Berlin, Germany, 2014.  210, Type: Book (978-3-642402-18-0)
Dec 18 2014
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy