Proceedings of the 7th International Workshop on Software Specification and Design held in Redondo Beach, California, in December 1993. Among the topics discussed: real-time systems, concurrency and distribution, formal reasoning, and design methods and software architecture. No index. Annotation co
"Designing a large software system is an extremely complicated undertaking that requires juggling differing perspectives and differing goals, and evaluating differing options. Applied Software Architecture is the best book yet that gives guidance as to how to sort out and organize the conflicting pressures and produce a successful design." -- Len Bass, author of Software Architecture in Practice. Quality software architecture design has always been important, but in today's fast-paced, rapidly changing, and complex development environment, it is essential. A solid, well-thought-out design helps to manage complexity, to resolve trade-offs among conflicting requirements, and, in general, to bring quality software to market in a more timely fashion. Applied Software Architecture provides practical guidelines and techniques for producing quality software designs. It gives an overview of software architecture basics and a detailed guide to architecture design tasks, focusing on four fundamental views of architecture--conceptual, module, execution, and code. Through four real-life case studies, this book reveals the insights and best practices of the most skilled software architects in designing software architecture. These case studies, written with the masters who created them, demonstrate how the book's concepts and techniques are embodied in state-of-the-art architecture design. You will learn how to: create designs flexible enough to incorporate tomorrow's technology; use architecture as the basis for meeting performance, modifiability, reliability, and safety requirements; determine priorities among conflicting requirements and arrive at a successful solution; and use software architecture to help integrate system components. Anyone involved in software architecture will find this book a valuable compendium of best practices and an insightful look at the critical role of architecture in software development. 0201325713B07092001
This book contains a refereed collection of thoroughly revised full papers based on the contributions accepted for presentation at the International Workshop on Studies of Software Design, held in conjunction with the 1993 International Conference on Software Engineering, ICSE'93, in Baltimore, Maryland, in May 1993. The emphasis of the 13 papers included is on methods for studying, analyzing, and comparing designs and design methods; the topical focus is primarily on the software architecture level of design and on techniques suitable for dealing with large software systems. The book is organized in sections on architectures, tools, and design methods and opens with a detailed introduction by the volume editor.
Software Visualization: From Theory to Practice was initially selected as a special volume for "The Annals of Software Engineering (ANSE) Journal", which has been discontinued. This special edited volume, is the first to discuss software visualization in the perspective of software engineering. It is a collection of 14 chapters on software visualization, covering the topics from theory to practical systems. The chapters are divided into four Parts: Visual Formalisms, Human Factors, Architectural Visualization, and Visualization in Practice. They cover a comprehensive range of software visualization topics, including *Visual programming theory and techniques for rapid software prototyping and graph visualization, including distributed programming; *Visual formalisms such as Flowchart, Event Graph, and Process Communication Graph; *Graph-oriented distributed programming; *Program visualization for software understanding, testing/debugging and maintenance; *Object-oriented re-design based on legacy procedural software; *Cognitive models for designing software exploration tools; *Human comprehensibility of visual modeling diagrams in UML; *UML extended with pattern compositions for software reuse; *Visualization of software architecture and Web architecture for better understanding; *Visual programming and program visualization for music synthesizers; *Drawing diagrams nicely using clustering techniques for software engineering.