Description
Wiley India Service-Oriented Architecture & Microservices Architecture: For Enterprise, Cloud, Big Data And Mobile, 3Ed by Shankar Kambhampaty
This book is a humble attempt from my side to share what I know about software architecture in general, and SOA/MSA in particular. I have structured this book keeping in mind the insights I have gathered over the past 26 years as a practicing IT professional. Although there are several good books and documents available on software architecture, SOA and MSA, I too wanted to do my bit in sharing knowledge.
About the Author
Shankar Kambhampaty is Chief Technology Officer for major financial services account at DXC.technology. Shankar has been involved for 26 years in architecture, design, development and management for a number of software projects executed globally. He has also played a key role in development of software products that have been exhibited in AIIM and COMDEX shows. Shankar has written several papers for International Conferences in the areas of Service-Oriented Architecture and software engineering. He has a Master's degree in Electrical Engineering with specialization in Digital Systems from Indian Institute of Technology, Kanpur (IIT Kanpur).
TABLE OF CONTENTS
Foreword
Preface to the Third Edition
Acknowledgments
Part 1 Software Architecture
Chapter 1 Software Engineering Principles
1.1 Software Engineering Practice
1.2 Software Development Life Cycle (SDLC)
1.3 Software Engineering Methodologies
1.4 Project Management Practice
1.5 Software Engineering Project
1.6 Software Project – Loan Management System (LMS)
1.7 Critical Success Factors for Software Projects
1.8 Summary
Chapter 2 Agile with DevOps
2.1 Agile Development Methodologies
2.2 Emergence of DevOps
2.3 DevOps Application Delivery
2.4 Continuous Integration 20
2.5 Continuous Delivery
2.6 Continuous Deployment
2.7 DevOps – Putting It All Together
2.8 Summary
Chapter 3 Software Architecture
3.1 Need for Software Architecture
3.2 Objectives of Software Architecture
3.3 Types of Information Technology (IT) Architecture
3.4 Architectural Patterns and Styles
3.5 Summary
Chapter 4 Architecting Process for Software Applications
4.1 Architectural Considerations
4.2 Architecting Process for Software Applications
4.3 Level 0: High-Level Architecture
4.4 Level 1: Solution Architecture
4.5 Detailed Design
4.6 Summary
Chapter 5 Software Platforms
5.1 Software Applications in an Enterprise
5.2 Packaged Applications
5.3 Custom Software Applications
5.4 Software Platforms
5.5 Java Platform Enterprise Edition
5.6 .NET Microsoft Application Platform
5.7 Summary
Chapter 6 Cloud Computing Concepts
6.1 Cloud Computing Paradigm
6.2 Types of Cloud Platforms
6.3 Technologies That Enable Cloud Computing
6.4 Opportunities in Cloud Computing
6.5 Summary
Chapter 7 Cloud Computing Platforms
7.1 Amazon Web Services
7.2 Google App Engine and Google Compute Engine
7.3 IBM Softlayer
7.4 Microsoft Azure
7.5 Summary
Chapter 8 SOA and MSA Basics
8.1 Service Orientation in Daily Life
8.2 Evolution of SOA and MSA
8.3 Service-oriented Architecture and Microservices architecture –
8.4 Drivers for SOA
8.5 Dimensions of SOA
8.6 Conceptual Model of SOA
8.7 Standards And Guidelines for SOA
8.8 Emergence of MSA
8.9 Summary
Part 2 Service-Oriented Architecture
Chapter 9 Enterprise-Wide SOA
9.1 Considerations for Enterprise-wide SOA
9.2 Strawman Architecture for Enterprise-wide SOA
9.3 Enterprise SOA Reference Architecture
9.4 Object-oriented Analysis and Design (OOAD) Process
9.5 Service-oriented Analysis and Design (SOAD) Process
9.6 SOA Methodology for Enterprise
9.7 Summary
Chapter 10 Service-Oriented Applications
10.1 Considerations for Service-oriented Applications
10.2 Patterns for SOA
10.3 Pattern-based Architecture for Service-oriented Applications
10.4 Composite Applications
10.5 Composite Application Programming Model
10.6 Summary
Chapter 11 Service-Oriented Analysis and Design
11.1 Need for Models
11.2 Principles of Service Design
11.3 Non-functional Properties for Services
11.4 Design of Activity Services (or Business Services)
11.5 Design of Data Services
11.6 Design of Client Services
11.7 Design of Business Process Services
11.8 Summary
Chapter 12 Technologies for SOA
12.1 Technologies for Service Enablement
12.2 Technologies for Service Integration
12.3 Technologies for Service Orchestration
12.4 Summary
Chapter 13 SOA Governance and Implementation
13.1 Strategic Architecture Governance
13.2 Service Design-time Governance
13.3 Service Run-time Governance
13.4 Approach for Enterprise-wide SOA Implementation
13.5 Summary
Chapter 14 Big Data and SOA
14.1 Data Concepts
14.2 Big Data and its characteristics
14.3 Technologies for Big Data
14.4 Service-orientation for Big Data Solutions
14.5 Summary
Chapter 15 Business Case for SOA
15.1 Stakeholder Objectives
15.2 Benefits of Soa
15.3 Cost Savings
15.4 Return on Investment (ROI)
15.5 Build a Case for SOA
15.6 Summary
Chapter 16 SOA Best Practices
16.1 SOA Strategy – Best Practices
16.2 SOA Development – Best Practices
16.3 SOA Governance – Best Practices
16.4 Summary
Chapter 17 EA and SOA for Business and IT Alignment
17.1 Enterprise Architecture
17.2 Need for Business and It Alignment
17.3 EA and SOA for Business and It Alignment
17.4 Summary
Part 3 Microservices Architecture
Chapter 18 Trend in SOA – Microservices Architecture (MSA)
18.1 Services Model for Cloud and Mobile Solutions
18.2 API Adoption on the Rise
18.3 Challenges and Takeways from SOA Implementations
18.4 Architecture Trend – Microservices Architecture
18.5 Microservices Architecture in Action
18.6 Summary
Chapter 19 Cloud and MSA
19.1 Cloud Services
19.2 Hybrid Cloud Services
19.3 Considerations for Hybrid Cloud Services
19.4 Cloud Services and MSA
19.5 MSA for SMAC Solutions
19.6 Summary
Chapter 20 Mobile and MSA
20.1 Mobile Technologies
20.2 Types of Mobile Applications
20.3 MSA for mobile solutions
20.4 Summary
Appendix A SOA – Loan Management System (LMS) PoC
Appendix B MSA – APIary PoC
Index