Showing posts with label software architecture. Show all posts
Showing posts with label software architecture. Show all posts

Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition) Review

Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition)
Average Reviews:

(More customer reviews)
Are you looking to buy Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition) ReviewMany SE books tell you about SE (eg., Sommerville). Those kinds of books equip you to win in a software engineering version of the trivia game Jeopardy! but will hardly impart any skill and will not make you a better software engineer, only more informed.
In contrast, this book tells you how to do software engineering. They tell you what, Bruegge shows you how. Rather than cover all the concepts in SE, Bruegge picks the most essential ones, gives you a brief but thorough explication of those and then proceeds to teach how they are used.
Professor Bruegge's approach to teaching his SE students is by having his entire class work *together* as one team on *one* real-life project during the term (that's one project for the whole class).
Typically, this project is an upgrade of the previous class's project. Stop and imagine how realistic this approach is -- modifying a system created by engineers who are no longer available for interview, working with as many as 50 different people, working with designs that do not match the code anymore, working with code of varying quality, etc.
Bruegge distills the lessons learned from these practical projects and illustrates practical (not idealistic) approaches to solutions.
Expect German thoroughness and a lucid, unpretentious prose that heeds Strunk and White's dictum: "Omit needless words".
Highly recommended.
-vjaObject-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition) OverviewFor courses in Software Engineering, Software Development, or Object-Oriented Design and Analysis at the Junior/Senior or Graduate level. This text can also be utilized in short technical courses or in short, intensive management courses.

Object-Oriented Software Engineering Using UML, Patterns, and Java, 3e, shows readers how to use both the principles of software engineering and the practices of various object-oriented tools, processes, and products.

Using a step-by-step case study to illustrate the concepts and topics in each chapter, Bruegge and Dutoit emphasize learning object-oriented software engineer through practical experience: readers can apply the techniques learned in class by implementing a real-world software project.

The third edition addresses new trends, in particular agile project management (Chapter 14 Project Management) and agile methodologies (Chapter 16 Methodologies).


Want to learn more information about Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Software Architecture in Practice Review

Software Architecture in Practice
Average Reviews:

(More customer reviews)
Are you looking to buy Software Architecture in Practice? Here is the right place to find the great deals. we can offer discounts of up to 90% on Software Architecture in Practice. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Software Architecture in Practice ReviewI found this volume to be extremely useful. It contains very insightful commentary on what architecture is (a term that I find is misused a lot), what architecture affects, and how to evaluate the qualities of an architecture.
Two of their best insights for me:
* Architecture affects the organization of the company/business unit. (In my company, we didn't realize this and we failed to create an organization that could support the architecture.)
* Virtually any architecture can accomplish the functional needs of a system - what differentiates architectures are how they provide the essential qualities (performance, modifiability, maintainibility, etc.) to the product.
The book is strongly based in the real-world, with practical examples. I never felt they were straying into "theorectical" land.
I also bought "Applied Software Architecture" but didn't like it nearly as much - I highly recommend "Software Architecture in Practice"!Software Architecture in Practice OverviewThis book introduces the concepts and practice of software architecture-what a system is designed to do, and on how its components are meant to interact with each other. An architecture is an abstract view, distinct from the details of implementation, algorithm, and data representation. Its creation is the first step in designing a system with properties desired by customers, end users, developers, maintainers, and other interested parties. The authors cover here not only essential technical topics for specifying and validating a system, but, for the first time, emphasize the importance of the business context in which large systems are designed. Enhancing both technical and organizational discussions, key points are illuminated by substantial case studies undertaken by the authors and the Software Engineering Institute.

Want to learn more information about Software Architecture in Practice?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Software Architecture: Foundations, Theory, and Practice Review

Software Architecture: Foundations, Theory, and Practice
Average Reviews:

(More customer reviews)
Are you looking to buy Software Architecture: Foundations, Theory, and Practice? Here is the right place to find the great deals. we can offer discounts of up to 90% on Software Architecture: Foundations, Theory, and Practice. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Software Architecture: Foundations, Theory, and Practice ReviewSoftware Architecture: Foundations, Theory, and Practice is a landmark text that will become an essental introduction to the discipline of software systems architecture. If you are a student, tester, manager, methodologist, developer, or simply an architect, and want a holistic understanding of what real software architects think software architecture is and why it matters, this is the place to start.
I bought this after Roy Fielding (of REST and HTTP fame) mentioned it on the rest-discuss mailing list. Roy is one of the industry's top architects, and I wasn't disappointed. The book is timely - architecture is coming to be accepted as an important activity, especially for distributed, and large scale systems. What many people don't realize is that drawing pictures, writing documents no-one reads, meta-modeling, and pontificating on "concerns" are not software architecture. Software architecture is about introducing constraints via principled, objective design to achieve particular system properties. Architecture is difficult and exhausting work, but done well can offer immense value to users and stakeholders. This book, along with Rozanski and Woods' "Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives" makes that explicit.
The book is unapologetic about software architecture's standing in the industry. SAFTAP positions architecture as the primary design activity for software - not development, not requirements analysis, not testing, not methodology, but architecture. That will make for interesting debate.
My single criticism of this book is that it does not do enough to treat user experience (Ux) and informatics as architecturally significant, but not enough to take away a star. I'm hoping a future edition will rectify that.
Some noteworthy chapters in the book (there are 17 chapters in all):
* The Big Idea: explains what architecture is and why it matters. The building metaphor (often heavily criticised in the industry, see the excellent "Software is not Bricks" by Raganwald) is dealt with calmly and then put to one side.
* Architecture in Context: explains how architecture fits into the overall lifecycle and process of software systems.
* Connectors: this is one of my favourite chapters. The concept of a connector is vital to a software system, but is rarely if ever discussed in programming or engineering texts.
* Modeling: probably not what you think. This chapter emphasizes communication, clarity and disambiguation over notations and diagrams.
* Implementation: programmers hate the quip "implementation detail", but in truth many things in a system are just that and it does not mean they are unimportant. This chapter covers those details and why they matter.
* Deployment and Mobility: good architects understand that a systems have a life well beyond initial delivery, which is where most developers, managers and stakeholders tend to focus attention. This was one of favorite sections as the running system simply doesn't get enough attention in most projects today.
* Applied architecture and Styles: covers some examples of architectural styles, notably REST and SOA, which are certainly the best known architectures in my part of the industry.
* Designing for non-functional properties: many non-functional concerns don't start to matter until the system is deployed and there isn't always agreement among technical specialists over what's truly important. If you are technical specialist this should help you articulate the cost/benefit of looking at the "unfeatures" of a system.
* Security and Trust: software is increasingly distributed, and increasingly a super-system of components interacting over the Internet and Mobile Networks. So it's good to see a text that makes security a first order concern and not just a non-functional ones.
* Domain Specific Software Engineering: I'm trained as an industrial designer where the notion of common modular components with standard interfaces acting as a platform for product development is a known Good Thing in domains such as the automotive and consumer electronics industries. This chapter gives a good overview of modular design focusing on the software product lines approach. The example given is from Philips, but it could as easily have been from Toyota.
* People, Roles and Teams: software architecture, like other architecture disciplines, has a strong social dimension. This chapter explains how the architect role fits into an organisation and where they can add value and exert influence.Software Architecture: Foundations, Theory, and Practice OverviewSoftware architecture is foundational to the development of large, practical software-intensive applications. This brand-new text covers all facets of software architecture and how it serves as the intellectual centerpiece of software development and evolution. Critically, this text focuses on supporting creation of real implemented systems. Hence the text details not only modeling techniques, but design, implementation, deployment, and system adaptation -- as well as a host of other topics -- putting the elements in context and comparing and contrasting them with one another. Rather than focusing on one method, notation, tool, or process, this new text/reference widely surveys software architecture techniques, enabling the instructor and practitioner to choose the right tool for the job at hand. Software Architecture is intended for upper-division undergraduate and graduate courses in software architecture, software design, component-based software engineering, and distributed systems; the text may also be used in introductory as well as advanced software engineering courses.

Want to learn more information about Software Architecture: Foundations, Theory, and Practice?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

97 Things Every Software Architect Should Know: Collective Wisdom from the Experts Review

97 Things Every Software Architect Should Know: Collective Wisdom from the Experts
Average Reviews:

(More customer reviews)
Are you looking to buy 97 Things Every Software Architect Should Know: Collective Wisdom from the Experts? Here is the right place to find the great deals. we can offer discounts of up to 90% on 97 Things Every Software Architect Should Know: Collective Wisdom from the Experts. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

97 Things Every Software Architect Should Know: Collective Wisdom from the Experts ReviewHeavy on keywords and low on actual content / value.
Imagine your Dad rings you up and says, "Be sure to go to work bright and early..." or "The early bird gets the worm" and proceeds to ramble on for 5 minutes about why that is important. We have all been through this kind of lecture. For politeness sake, you bite your tongue and zone out.
Now replace Dad with Bill Gates/ Steve Jobs/ some famous architect. However the advice being doled out is similar. eg. "Be sure to have a decent UI for every component/ blah blah blah".
How would you feel if you had to read 97 articles by famous architects / tech gurus, each 2 pages long and the entire content of the article is in the first introductory line itself. The rest is fluff.
I don't know about you, but when I am paying 20+ dollars for a book, I expect more than simple fluff.
-V97 Things Every Software Architect Should Know: Collective Wisdom from the Experts Overview
In this truly unique technical book, today's leading software architects present valuable principles on key development issues that go way beyond technology. More than four dozen architects -- including Neal Ford, Michael Nygard, and Bill de hOra -- offer advice for communicating with stakeholders, eliminating complexity, empowering developers, and many more practical lessons they've learned from years of experience. Among the 97 principles in this book, you'll find useful advice such as:



Don't Put Your Resume Ahead of the Requirements (Nitin Borwankar)
Chances Are, Your Biggest Problem Isn't Technical (Mark Ramm)
Communication Is King; Clarity and Leadership, Its Humble Servants (Mark Richards)
Simplicity Before Generality, Use Before Reuse (Kevlin Henney)
For the End User, the Interface Is the System (Vinayak Hegde)
It's Never Too Early to Think About Performance (Rebecca Parsons)

To be successful as a software architect, you need to master both business and technology. This book tells you what top software architects think is important and how they approach a project. If you want to enhance your career, 97 Things Every Software Architect Should Know is essential reading.


Want to learn more information about 97 Things Every Software Architect Should Know: Collective Wisdom from the Experts?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Enterprise Cloud Computing: Technology, Architecture, Applications Review

Enterprise Cloud Computing: Technology, Architecture, Applications
Average Reviews:

(More customer reviews)
Are you looking to buy Enterprise Cloud Computing: Technology, Architecture, Applications? Here is the right place to find the great deals. we can offer discounts of up to 90% on Enterprise Cloud Computing: Technology, Architecture, Applications. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Enterprise Cloud Computing: Technology, Architecture, Applications ReviewThe book does a great job covering the fundamentals of enterprise computing, including a technical introduction to enterprise architecture. It will of interest to programmers and software architects who are not yet familiar with these topics. I really enjoyed Shroff's coverage of the economics of cloud computing in Chapter 6. He addresses the issue by showing how he compares the in-house (collocation center) vs cloud. Readers can adopt his approach using their own numbers to produce a similar comparison. It is suggested by the publisher that this book could serve as a reference for a graduate-level course in software architecture or software engineering, I agree this would be a good use of the book.
Enterprise Cloud Computing: Technology, Architecture, Applications OverviewCloud computing promises to revolutionize IT and business by making computing available as a utility over the internet. This book is intended primarily for practising software architects who need to assess the impact of such a transformation. It explains the evolution of the internet into a cloud computing platform, describes emerging development paradigms and technologies, and discusses how these will change the way enterprise applications should be architected for cloud deployment. Gautam Shroff provides a technical description of cloud computing technologies, covering cloud infrastructure and platform services, programming paradigms such as MapReduce, as well as 'do-it-yourself' hosted development tools. He also describes emerging technologies critical to cloud computing. The book also covers the fundamentals of enterprise computing, including a technical introduction to enterprise architecture, so it will interest programmers aspiring to become software architects and serve as a reference for a graduate-level course in software architecture or software engineering.

Want to learn more information about Enterprise Cloud Computing: Technology, Architecture, Applications?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Large-Scale Software Architecture: A Practical Guide using UML Review

Large-Scale Software Architecture: A Practical Guide using UML
Average Reviews:

(More customer reviews)
Are you looking to buy Large-Scale Software Architecture: A Practical Guide using UML? Here is the right place to find the great deals. we can offer discounts of up to 90% on Large-Scale Software Architecture: A Practical Guide using UML. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Large-Scale Software Architecture: A Practical Guide using UML Review[Review duplicated from Amazon.co.uk]
Jeff Garland and Richard Anthony have written a very practical and accessible explanation of the process of designing and describing the software architecture for a large information system. All of the major architectural structures are covered and the depth of experience of the authors is evident from the solid, practical advice given throughout. There is also a huge amount of practical advice as to how architectural structures can be described using UML, which is particularly valuable.
The only significant criticism I've have is that they don't talk about the quality properties of the architecture all that explicitly. The focus in most of the book is about capturing architectural structures rather than talking about the required architectural qualities that led to the structures being selected. The reader is left to discern this for themselves.
This said though, I'd still recommend the book to any practicing information systems architect.Large-Scale Software Architecture: A Practical Guide using UML OverviewThe purpose of large-scale software architecture is to capture and describe practical representations to make development teams more effective.In this book the authors show how to utilise software architecture as a tool to guide the development instead of capturing the architectural details after all the design decisions have been made.* Offers a concise description of UML usage for large-scale architecture* Discusses software architecture and design principles* Technology and vendor independent

Want to learn more information about Large-Scale Software Architecture: A Practical Guide using UML?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

The Art of Software Architecture: Design Methods and Techniques Review

The Art of Software Architecture: Design Methods and Techniques
Average Reviews:

(More customer reviews)
Are you looking to buy The Art of Software Architecture: Design Methods and Techniques? Here is the right place to find the great deals. we can offer discounts of up to 90% on The Art of Software Architecture: Design Methods and Techniques. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

The Art of Software Architecture: Design Methods and Techniques ReviewEver since "The Mythical Man-Month", it has been clear that lack of strong architecture will sink a software project. (It was probably true before TMMM, but that was before my time.) Architecture, implying an architect, is a requirement for any major piece of software.
I can agree with Albin only to a point: architecture is not implementation, analysis, or software engineering. It's different even from "design", as the word is usually used. An architect really does a different job than other members of a software team (but the architect may design and implement, also).
That said, I didn't quite make out how to go about -
- training someone as a software architect,
- developing a sound and appropriate architecture,
- measuring its success in objective and repeatable ways,
- making it a part of the project plan and documentation, or
- preserving it across generations of maintenance.
Most importantly, I did not see any discussion of adapting an existing architecture to new needs, or of extending an archtecture beyond its original bounds. Typical software spends 10% of it's life in design and implementation, and 90% in maintenance. The initial 10% is the fun part. I have real reservations about authors who choose not to discuss the other 90% of the problem.
The book has value to the extent that it opens the topic for discussion. Too often, though, it confuses the skill of architecture with the tools of an architect - sort of like looking at a pencil drawing by Rembrandt and saying "Wow, if I get a pencil like his, I'll be able to draw like that too."
I've been looking for books and articles about software architecture. This one has some value, but I'm still looking.The Art of Software Architecture: Design Methods and Techniques Overview
This innovative book uncovers all the steps readers should follow in order to build successful software and systems
With the help of numerous examples, Albin clearly shows how to incorporate Java, XML, SOAP, ebXML, and BizTalk when designing true distributed business systems
Teaches how to easily integrate design patterns into software design
Documents all architectures in UML and presents code in either Java or C++


Want to learn more information about The Art of Software Architecture: Design Methods and Techniques?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...