Web software development and cloud computing based on Service-Oriented Architecture (SOA) and Service-Oriented Computing (SOC) represent the modern software engineering theory, practices and technologies. The book takes a comprehensive and coherent approach to address these issues. The goal is to learn the concepts, principles and methods in advanced software architecture, software engineering, and software development. The approach is learning by developing. We assume students have basic understanding of software architecture, and this book takes an architecture-driven approach to help students creating working solutions for their architecture design, including programming and code deployment. The text consists of fourteen chapters and two appendices.