Essential Software Architecture - Gorton, Ian.; SpringerLink (Online service) (Berlin, Heidelberg : Springer Berlin Heidelberg, 2011)
Job titles like (3z(BTechnical Architect(3y (Band (3z(BChief Architect(3y (Bnowadays abound in software industry, yet many people suspect that (3z(Barchitecture(3y (Bis one of the most overused and least understood terms in professional software development. Gorton$1 (Bs book tries to resolve this dilemma. It concisely describes the essential elements of knowledge and key skills required to be a software architect. The explanations encompass the essentials of architecture thinking, practices, and supporting technologies. They range from a general understanding of structure and quality attributes through technical issues like middleware components and service-oriented architectures to recent technologies like model-driven architecture, software product lines, aspect-oriented design, and the Semantic Web, which will presumably influence future software systems. This second edition contains new material covering enterprise architecture, agile development, enterprise service bus technologies, RESTful Web services, and a case study on how to use the MeDICi integration framework. All approaches are illustrated by an ongoing real-world example. So if you work as an architect or senior designer (or want to someday), or if you are a student in software engineering, here is a valuable and yet approachable knowledge source for you.s
Understanding Software Architecture -- Introducing the Case Study -- Software Quality Attributes -- An Introduction to Middleware Architectures and Technologies -- Service-Oriented Architectures and Technologies -- Advanced Middleware Technologies -- A Software Architecture Process -- Documenting a Software Architecture -- Case Study Design -- Middleware Case Study: MeDICi -- Looking Forward -- The Semantic Web -- Aspect Oriented Architectures -- Model-Driven Architecture -- Software Product Lines.-.
Keywords: Computer science; Software engineering; Information Systems; Management information systems; Computer Science; Software Engineering; Management of Computing and Information Systems; Business Information Systems