Books Guide: Designing Software

Submit A Book

Books Guide

Please enter a book title, author, or keyword

Designing Software

Building Applications in the Cloud: Concepts, Patterns, and Projects
By:
Christopher M. Moyer
Published:
2011

Following the familiar “Design Patterns” format, expert cloud developer Chris Moyer introduces proven patterns for cloud platforms from Amazon, Google, and other providers. Moyer demonstrates these patterns at work through extensive example code and case study applications for Amazon Web Services (AWS). As you increasingly move to the cloud, you’ll constantly encounter the challenges this book solves. You’ll rely on it for years–whenever you need a cloud solution you can trust.

Code in the Cloud
By:
Mark C. Chu-Carroll
Published:
2011

One of the most exciting recent changes in the computing world is cloud computing. Cloud computing is a dramatic shift in how applications are developed and used---and even in what applications are. With cloud computing, developers are no longer building applications that run on a user's desktop computer. Instead, they're building services on the network that can be used by thousands of users at the same time.

Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software
By:
Peter C. Patton and Bijay K. Jayaswal
Published:
2011

Design for Trustworthy Software will help you improve quality whether you develop in-house, outsource, consult, or provide support. It offers breakthrough solutions for the entire spectrum of software and quality professionals–from developers to project leaders, chief software architects to customers.

Essential Skills for the Agile Developer: A Guide to Better Programming and Design
By:
Alan Shalloway, et al.
Published:
2011

Agile has become today’s dominant software development paradigm, but agile methods remain difficult to measure and improve. Essential Skills for the Agile Developer fills this gap from the bottom up, teaching proven techniques for assessing and optimizing both individual and team agile practices.

High-Assurance Design: Architecting Secure and Reliable Enterprise Applications
By:
Clifford J. Berg
Published:
2011

Many enterprises unfortunately depend on software that is insecure, unreliable, and fragile. They compensate by investing heavily in workarounds and maintenance, and by employing hordes of "gurus" to manage their systems' flaws. This must change. And it can. In this book, respected software architect Clifford J. Berg shows how to design high-assurance applications-applications with proven, built-in reliability, security, manageability, and maintainability.

Model-Based Development: Applications
By:
H.S. Lahman
Published:
2011

Software continues to become more and more complex, while software consumers’ expectations for performance, reliability, functionality, and speed-to-market are also growing exponentially. H. S. Lahman shows how to address all these challenges by integrating proven object-oriented techniques with a powerful new methodology—model-based development

Model-Based Software Performance Analysis
By:
Vittorio Cortellessa, et al.
Published:
2011

Model-based Software Performance Analysis introduces performance concerns in the scope of software modeling, thus allowing the developer to carry on performance analysis throughout the software lifecycle.

Refactoring Databases: Evolutionary Database Design
By:
Scott Ambler, Pramod J. Sadalage
Published:
2011

Refactoring has proven its value in a wide range of development projects—helping software professionals improve system designs, maintainability, extensibility, and performance. Now, for the first time, leading agile methodologist Scott Ambler and renowned consultant Pramodkumar Sadalage introduce powerful refactoring techniques specifically designed for database systems.

User Experience Management
By:
Arnie Lund
Published:
2011

The role of UX manager is of vital importance–it means leading a productive team, influencing businesses to adopt user-centered design, and delivering valuable products customers. Few UX professionals who find themselves in management positions have formal training in management. More often than not they are promoted to a management position after having proven themselves as an effective and successful practitioner.

Brownfield Application Development in .Net
By:
Kyle Baley and Donald Belcham
Published:
2010

Most software developers have inherited legacy or brownfield projects that require maintenance, incremental improvements, or even cleaning up the mess another programmer left behind.

Effective UI: The Art of Building Great User Experience in Software
By:
Jonathan Anderson, et al.
Published:
2010

People are beginning to demand a higher standard of user experience (UX) quality from the software systems they use in their business and personal lives, and companies are looking to UX to help drive business value and increase brand strength.

REST in Practice
By:
Jim Webber, et al.
Published:
2010

Why don't typical enterprise projects go as smoothly as projects you develop for the Web? Does the REST architectural style really present a viable alternative for building distributed systems and enterprise-class applications?

Secure and Resilient Software Development
By:
M. Merkow and L. Raghavan
Published:
2010

Although many software books highlight open problems in secure software development, few provide easily actionable, ground-level solutions. Breaking the mold, Secure and Resilient Software Development teaches you how to apply best practices and standards for consistent and secure software development. It details specific quality software development strategies and practices that stress resilience requirements with precise, actionable, and ground-level inputs.

Software Development: An Open Source Approach
By:
Allen Tucker, et al.
Published:
2010

To understand the principles and practice of software development, there is no better motivator than participating in a software project with real-world value and a life beyond the academic arena. Software Development: An Open Source Approach immerses students directly into an agile free and open source software (FOSS) development process.

The Art of Scalability
By:
Martin L. Abbott, et al.
Published:
2010

In The Art of Scalability, AKF Partners cofounders Martin L. Abbott and Michael T. Fisher cover everything IT and business leaders must know to build technology infrastructures that can scale smoothly to meet any business requirement. Drawing on their unparalleled experience managing some of the world’s highest-transaction-volume Web sites, the authors provide detailed models and best-practice approaches available in no other book.

Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design
By:
Diomidis Spinellis, et al.
Published:
2009

What are the ingredients of robust, elegant, flexible, and maintainable software architecture? Beautiful Architecture answers this question through a collection of intriguing essays from more than a dozen of today's leading software designers and architects. In each essay, contributors present a notable software architecture, and analyze what makes it innovative and ideal for its purpose.

Cloud Computing and SOA Convergence in Your Enterprise: A Step-by-Step Guide
By:
David S. Linthicum
Published:
2009

Cloud Computing and SOA Convergence in Your Enterprise offers a clear-eyed assessment of the challenges associated with this new world—and offers a step-by-step program for getting there with maximum return on investment and minimum risk. Using multiple examples, Linthicum:

Dynamic SOA and BPM: Best Practices for Business Process Management and SOA Agility
By:
Marc Fiammante
Published:
2009

Thousands of enterprises have adopted Service Oriented Architecture (SOA) based on its promise to help them respond more rapidly to changing business requirements by composing new solutions from existing business services. To deliver on this promise, however, companies need to integrate solid but flexible Business Process Management (BPM) plans into their SOA initiatives. Dynamic SOA and BPM offers a pragmatic, efficient approach for doing so.

Growing Object-Oriented Software, Guided by Tests
By:
Steve Freeman and Nat Pryce
Published:
2009

Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this "simple" idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts.

Handbook of Enterprise Integration
By:
Mostafa Hashem Sherif
Published:
2009

Maintaining compatibility among all affected network and application interfaces of modern enterprise systems can quickly become costly and overwhelming. This handbook presents the knowledge and practical experience of a global group of experts from varying disciplines to help you plan and implement enterprise integration projects that respond to business needs quickly and are seamless to business users.

Mashup Patterns: Designs and Examples for the Modern Enterprise
By:
Michael Ogrinz
Published:
2009

In Mashup Patterns, Michael Ogrinz applies the concept of software development patterns to mashups, systematically revealing the right ways to build enterprise mashups and providing useful insights to help organizations avoid the mistakes that cause mashups to fail.

Quality Assurance of Agent-Based and Self-Managed Systems
By:
Reiner Dumke, et al.
Published:
2009

Based on the authors' more than fifteen years of experience in software agent technology, this book first presents the essential basics, aspects, and structures of the agent technology. It then covers the main quality aspects in software system development and gives current examples of agent measurement and evaluation. Focusing on software agent systems and multi-agent systems (MAS), the authors discuss the determination of quality properties.

Seam Framework
By:
Michael Juntao Yuan, et al.
Published:
2009

In Seam Framework, Second Edition, the authors of the leading guide to Seam programming have systematically updated their text to reflect the major improvements introduced with Seam 2.x. This author team–all key Seam project contributors–teach Seam 2.x through detailed example applications that reveal how Seam simplifies many tasks that were previously difficult or impractical.

Software Engineering
By:
Kassem A. Saleh
Published:
2009

Software Engineering provides the software engineering fundamentals, principles and skills needed to develop and maintain high-quality software products. The software engineering processes and techniques covered include requirements specification, design, implementation, testing and management of software projects. This up-to-date book is modeled on the recommendations and guidelines prescribed in the Guide to the SWEBOK.

Software Estimation Best Practices, Tools & Techniques
By:
Murali Chemuturi
Published:
2009

Software Estimation Best Practices, Tools & Techniques covers all facets of software estimation. It provides a detailed explanation of the various methods for estimating software size, development effort, cost, and schedule, including a comprehensive explanation of test effort estimation.

Solid Code
By:
Donis Marshall and John Bruno
Published:
2009

With insights direct from Microsoft s own development teams and across the software-development life cycle learn best practices for writing solid, well-formed, efficient code. Ideal for new to intermediate level developers, but with fresh insights for more experienced programmers, SOLID CODE will help improve your coding techniques at each phase of product development: design, prototyping, implementation, debugging, and testing.

Understanding IBM SOA Foundation Suite
By:
Tinny Ng, et al.
Published:
2009

The IBM SOA Foundation Suite is an integrated, open-standards-based set of software, best practices, and patterns that help you systematically maximize the business value of SOA. Understanding IBM SOA Foundation Suite brings together 26 hands-on tutorials that will help you master IBM SOA Foundation and apply it successfully in your organization.

Agile Software Construction
By:
John Hunt
Published:
2008

So you think you want to be Agile. But what does it mean? How can you develop software in an agile manner? How can you reap the benefits of agile modelling or Extreme Programming (XP)? What tools might you use to help you become more agile? This book tells you!

Applied SOA: Service-Oriented Architecture and Design Strategies
By:
Michael Rosen, et al.
Published:
2008

The challenge today's IT professionals face is not how to build a service. It's how to build a quality service, based on solid design principles and integrated into an architecture that enhances overall business processes. If you are a systems architect or designer, a business analyst, or an IT manager, this book gives you the architecture and design principles along with a methodology that empowers you to meet that challenge.

Eating the IT Elephant: Moving from Greenfield Development to Brownfield
By:
Richard Hopkins and Kevin Jenkins
Published:
2008

Richard Hopkins and Kevin Jenkins explain why accumulated business and IT complexity is the root cause of large-scale project failure and show how to overcome that complexity "one bite of the elephant at a time." You'll learn how to manage every phase of the Brownfield project, leveraging breakthrough collaboration, communication, and visualization tools--including Web 2.0, semantic software engineering, model-driven development and architecture, and even virtual worlds.

Emergent Design: The Evolutionary Nature of Professional Software Development
By:
Scott L. Bain
Published:
2008

For software to consistently deliver promised results, software development must mature into a true profession. Emergent Design points the way. As software continues to evolve and mature, software development processes become more complicated, relying on a variety of methodologies and approaches. This book illuminates the path to building the next generation of software. Author Scott L.

Enterprise Master Data Management: An SOA Approach to Managing Core Information
By:
Allen Dreibelbis, et. al
Published:
2008

Companies moving toward flexible SOA architectures often face difficult information management and integration challenges. The master data they rely on is often stored and managed in ways that are redundant, inconsistent, inaccessible, non-standardized, and poorly governed. Using Master Data Management (MDM), organizations can regain control of their master data, improve corresponding business processes, and maximize its value in SOA environments.

Object-Oriented Analysis and Design with Applications
By:
Grady Booch, et al.
Published:
2008

Object-Oriented Design with Applications has long been the essential reference to object-oriented technology, which, in turn, has evolved to join the mainstream of industrial-strength software development. In this third edition, eaders can learn to apply object-oriented methods using new paradigms such as Java, the Unified Modeling Language (UML) 2.0, and .NET.

Software Development for Embedded Multi-core Systems
By:
Max Domeika
Published:
2008

The multicore revolution has reached the deployment stage in embedded systems ranging from small ultramobile devices to large telecommunication servers. The transition from single to multicore processors, motivated by the need to increase performance while conserving power, has placed great responsibility on the shoulders of software engineers. In this new embedded multicore era, the toughest task is the development of code to support more sophisticated systems.

Advanced XML Applications from the Experts at The XML Guild
By:
The XML Guild
Published:
2007

Numerous books abound for the beginning programmer who wants to learn XML, but there are few learning resources available for those who are already proficient in XML and need expert-level advice to help maximize their workflow. Advanced XML Applications from the Experts at The XML Guild provides such a resource, written by the expert programmers at The XML Guild. The book is not intended to be another exhaustive XML bible.

Agile Java Development with Spring, Hibernate, and Eclipse
By:
Anil Hemrajani
Published:
2006

Agile Java™ Development With Spring, Hibernate and Eclipse is a book about robust technologies and effective methods which help bring simplicity back into the world of enterprise Java development. The three key technologies covered in this book, the Spring Framework, Hibernate and Eclipse, help reduce the complexity of enterprise Java development significantly.

Agile Systems With Reusable Patterns of Business Knowledge: A Component-Based Approach
By:
Amar Gupta, Amit Mitra
Published:
2006

Driven by the need for global excellence and customer value, agility and innovation have become imperative for business. However, most business process engineering and information system approaches address only operational efficiency and economics. This unique book closes this gap. It shows you how innovation can be systematized with normalized patterns of information.

Applying Domain-Driven Design and Patterns
By:
Jimmy Nilsson
Published:
2006

Patterns, Domain-Driven Design (DDD), and Test-Driven Development (TDD) enable architects and developers to create systems that are powerful, robust, and maintainable. Now, there's a comprehensive, practical guide to leveraging all these techniques primarily in Microsoft .NET environments, but the discussions are just as useful for Java developers.

Design Patterns
By:
Christopher G. Lasater
Published:
2006

first truly object-oriented language, .NET, software designers from an even broader range of business and programming spheres have been looking for ways to refine and write better code. Many have turned toward design patterns, iterative and AGILE design methodologies, and other more defined ways to improve performance, maintainability, portability, and scalability of code as well as design processes.

Designing the Obvious: A Common Sense Approach to Web Application Design
By:
Robert Hoekman, Jr.
Published:
2006

Designing the Obvious belongs in the toolbox of every person charged with the design and development of Web-based software, from the CEO to the programming team. Designing the Obvious explores the character traits of great Web applications and uses them as guiding principles of application design so the end result of every project instills customer satisfaction and loyalty.

Interface-Oriented Design
By:
Ken Pugh
Published:
2006

Interface Oriented Design focuses how to create designs composed of interfaces to objects, components and services. You'll see techniques for breaking down solutions into interfaces and then determining appropriate implementation of those interfaces to create a well structured, robust, working program.

Modeling and Verification Using UML Statecharts
By:
Doron Drusinsky
Published:
2006

UML expert author Dr. Doron Drusinsky compiles all the latest information on the application of UML (Universal Modeling Language) statecharts, temporal logic, automata, and other advanced tools for run-time monitoring and verification.

Software Engineering Quality Practices
By:
Ronald Kirk Kandt
Published:
2006

Software Engineering Quality Practices describes how software engineers and the managers that supervise them can develop quality software in an effective, efficient, and professional manner. This volume conveys practical advice quickly and clearly while avoiding the dogma that surrounds the software profession.

Software Specification and Design: An Engineering Approach
By:
John C. Munson
Published:
2006

Software Specification and Design: An Engineering Approach proposes a strategy for software development that emphasizes measurement. It promotes the measurement of every aspect of the software environment - from initial testing through test activity and deployment/operation. This book details the path to effective software and design. It recognizes that each project is different, with its own set of problems, so it does not propose a specific model.

The Art of Software Security Assessment
By:
Dowd, McDonald and Schuh
Published:
2006

This is one of the most detailed, sophisticated, and useful guides to software security auditing ever written. The authors are leading security consultants and researchers who have personally uncovered vulnerabilities in applications ranging from sendmail to Microsoft Exchange, Check Point VPN to Internet Explorer.

The Art of SQL
By:
Stephane Faroult with Peter Robson
Published:
2006

For all the buzz about trendy IT techniques, data processing is still at the core of our systems, especially now that enterprises all over the world are confronted with exploding volumes of data. Database performance has become a major headache, and most IT departments believe that developers should provide simple SQL code to solve immediate problems and let DBAs tune any "bad SQL" later.

The Security Development Lifecycle
By:
Michael Howard and Steve Lipner
Published:
2006

The software industry has been struggling with how to create and release software that is more security-enhanced and reliable—the Security Development Lifecycle (SDL) provides a methodology that works. Adapted from Microsoft’s standard development process, SDL is a critical way to help reduce the number of security defects in code at every stage of the development process, from design to release.

The User Is Always Right
By:
Steve Mulder and Ziv Yaar
Published:
2006

How do we ensure that our Web sites actually give users what they need? What are the best ways to understand our users' goals, behaviors, and attitudes, and then turn that understanding into business results? Personas bring user research to life and make it actionable, ensuring we're making the right decisions based on the right information. This practical guide explains how to create and use personas to make your site more successful.

Writing Mobile Code
By:
Ivo Salmre
Published:
2006

Mobile computing devices have evolved from fixed-purpose communications tools to compelling and extensible mass-market computing platforms. Now, they stand poised to offer truly ubiquitous and mobile computing—and to revolutionize the way people work, communicate, and interact with the world around them.

Agile Java: Crafting Code with Test-Driven Development
By:
Jeff Langr
Published:
2005

Master Java 5.0, object-oriented design, and Test-Driven Development (TDD) by learning them together. Agile Java weaves all three into a single coherent approach to building professional, robust software systems. Jeff Langr shows exactly how Java and TDD integrate throughout the entire development lifecycle, helping you leverage today's fastest, most efficient development techniques from the very outset.

Alison Balter’s Mastering Database Development with .NET
By:
Alison Balter
Published:
2005

You will become a master at .NET database development with the help of Alison Balter's Mastering Database Development with .NET. You will learn step-by-step how to use data bound forms to build applications in the .NET framework. Alison will also show you how you can customize forms by adding combo boxes and list boxes. Or, if you already know how to create forms using an application wizard, discover the advantages and disadvantages associated with this technique.

Aspect-Oriented Analysis and Design
By:
Siobhan Clarke/Elisa Baniassad
Published:
2005

Aspect-oriented software development (AOSD) is emerging as a proven approach for allowing the separate expression of multiple concerns along with technologies for knitting together these separate expressions into coherent systems. Thanks to its great promise as an approach to simplifying the development of complex systems, many expert observers view AOSD as a worthwhile successor to the prevalent object-oriented paradigm.

Cryptography in the Database: The Last Line of Defense
By:
Kevin Kenan
Published:
2005

Shows companies how to secure their databases with cryptography, thereby helping them comply with a bevy of new regulations.

Data Mining: Practical Machine Learning Tools and Techniques
By:
Eibe Frank and Ian H. Witten
Published:
2005

As with any burgeoning technology that enjoys commercial attention, the use of data mining is surrounded by a great deal of hype. Exaggerated reports tell of secrets that can be uncovered by setting algorithms loose on oceans of data. But there is no magic in machine learning, no hidden power, no alchemy. Instead there is an identifiable body of practical techniques that can extract useful information from raw data. This book describes these techniques and shows how they work.

Design Patterns Explained
By:
Alan Shalloway, et al.
Published:
2005

"Design Patterns Explained, Second Edition" is a simple, clear, and practical introduction to patterns. Using dozens of new C# and updated Java examples, it shows students how to use patterns to design, develop, and deliver software far more effectively. Students should read this book before they they try and tackle Gamma's well-known work, Design Patterns.

Designing Effective Database Systems
By:
Rebecca M. Riordan
Published:
2005

Designing Effective Database Systems shows you how to design an effective, high-performance database to solve it. Riordan begins by thoroughly demystifying the principles of relational design, making them accessible to every professional developer. Next, she offers the field's clearest introduction to dimensional database modeling, practical insight for designing today's increasingly important analytical applications.

Digital Identity
By:
Phillip J. Windley
Published:
2005

The rise of network-based, automated services in the past decade has definitely changed the way businesses operate, but not always for the better. Offering services, conducting transactions and moving data on the Web opens new opportunities, but many CTOs and CIOs are more concerned with the risks. Like the rulers of medieval cities, they've adopted a siege mentality, building walls to keep the bad guys out. It makes for a secure perimeter, but hampers the flow of commerce.

Domain-Driven Design: Tackling Complexity in the Heart of Software
By:
Eric Evans
Published:
2005

Written for object-oriented software developers, this book describes an approach to creating software that is meaningfully involved in user's activities and takes the ultimate application into consideration.

Enterprise Web Services Security
By:
Rickland Hollar and Rick Murphy
Published:
2005

Learn to Protect Your Assets and Prevent Attacks!

Flexible Software Design: Systems Development for Changing Requirements
By:
B. Johnson, C. Johnson, R. Miller, W. Woolfolk
Published:
2005

"Flexible Software Design: Systems Development for Changing Requirements" begins by introducing the fundamental concepts of flexibility, explaining the reality of imperfect knowledge and how development participants must change their thinking to implement flexible software. The second part covers design guidelines, stable identifiers, stable information structures, the Generic Entity Cloud concept, and the regulation that prevents IT intervention.

Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries
By:
Published:
2005

This book is an absolute must-read for all .NET developers. It gives clear do and don't guidance on how to design class libraries for .NET. It also offers insight into the design and creation of .NET that really helps developers understand the reasons why things are the way they are. This information will aid developers designing their own class libraries and will also allow them to take advantage of the .NET class library more effectively."

Object-Oriented Modeling and Design with UML
By:
Michael Blaha, et al.
Published:
2005

A revision of a "classic", ground-breaking, best-seller that set the standards for Object-Oriented Modeling and Design provides a proven software development process for using the most important concepts and notation of UML.

Pattern Languages of Program Design 5
By:
Manolescu, Voelter, Noble
Published:
2005

The long awaited fifth volume in a collection of key practices for pattern languages and design. Patterns are on the rise! In 2005, three of the four books considered as finalists for 15th Annual Jolt book awards were about patterns. All patterns featured have been presented at recent PLoP conferences. To be released 12/2005.

Prefactoring
By:
Ken Pugh
Published:
2005

More often than not, developers will stop a large project in the middle of the build stage to rethink and recode the software design so it's cleaner and more efficient. Known as "refactoring," this process eats up valuable time and money. To help offset refactoring, this book presents a new process called "prefactoring," the premise of which states that you're better off considering the best possible design patterns before you even begin your project.

Software Requirements: Encapsulation, Quality, And Reuse
By:
Rick Lutowski
Published:
2005

This book describes how to make requirements easy to change by using encapsulation. It introduces the Freedom methodology that shows how to encapsulate requirements thereby promoting reuse and quality. Encapsulating requirements reduces software lifecycle costs by making requirements and code that implements them into more adaptable to changing technology and business needs.

Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development
By:
Craig Larman
Published:
2004

This book introduces the most frequently used UML diagramming notation, while emphasizing that OOA/D is much more than knowing UML notation. The book is now compliant with UML 2.0.

All case study iterations and skills are presented in the context of an "Agile" version of the Unified Process—a popular, modern iterative approach to software development.

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
By:
Gregor Hohpe, Bobby Woolf
Published:
2004

Enterprise Integration Patterns provides an invaluable catalog of sixty-five patterns, with real-world solutions that demonstrate the formidable of messaging and help you to design effective messaging solutions for your enterprise.

Software Architecture Design Patterns in Java
By:
Partha Kuchana
Published:
2004

Software engineering and computer science students need a resource that explains how to apply design patterns at the enterprise level, allowing them to design and implement systems of high stability and quality. Software Architecture Design Patterns in Java is a detailed explanation of how to apply design patterns and develop software architectures. It provides in-depth examples in Java, and guides students by detailing when, why, and how to use specific patterns.

Designing with Web Standards
By:
Jeffrey Zeldman
Published:
2003

You code. And code. And code. You build only to rebuild. You focus on making your site compatible with almost every browser or wireless device ever put out there. Then along comes a new device or a new browser, and you start all over again.

You can get off the merry-go-round.

Software Design
By:
David Budgen
Published:
2003

(From the Back Cover)

Software Design: From Programming to Architecture
By:
Eric J. Braude
Published:
2003

(Back Cover Copy)
Introducing the first complete guide to the theory and practice of software design!
Until now it's been hard to find one, complete, up-to-date guide to software design theory and practice.

Not any more! Starting where programming and data structure courses end, this indispensable book is a comprehensive guide to the theory and actual practice of software design.

Building Web Applications with UML
By:
Jim Conallen
Published:
2002

Building Web Applications with UML is a guide to building robust, scalable, and feature-rich web applications using proven object-oriented techniques. Written for the project manager, architect, analyst, designer, and programmer of web applications, this book examines the unique aspects of modeling web applications with the Web Application Extension (WAE) for the Unified Modeling Language (UML).

Database Performance Tuning and Optimization
By:
Sitansu S. Mittra
Published:
2002

(from Book Info) Provides comprehensive coverage of database performance tuning using Oracle 8i and select 9i examples as the RDBMS. Combines theory with practical tools to address the tuning and optimization issues of DBAs and developers, irrespective of whether they use Oracle.

Information Architecture for the World Wide Web: Designing Large-Scale Web Sites
By:
Louis Rosenfeld, Peter Morville
Published:
2002

This book provides an excellent introduction to Web site concepts and offers insight into what makes Web sites different from other kinds of development. Information Architecture for the World Wide Web helps you to blend aesthetics and mechanics for distinctive, cohesive web sites that work. This book focuses on the framework that holds graphics and the technical issues of a site together.

Object Design: Roles, Responsibilities, and Collaborations
By:
Rebecca Wirfs-Brock, Alan McKean
Published:
2002

Object Design: Roles, Responsibilities, and Collaborations focuses on the practice of designing objects as integral members of a community where each object has specific roles and responsibilities. The authors present the latest practices and techniques of Responsibility-Driven Design and show how you can apply them as you develop modern object-based applications.

Applying Use Case Driven Object Modeling with UML
By:
Doug Rosenberg, Kendall Scott
Published:
2001

Applying Use Case Driven Object Modeling with UML: An Annotated e-Commerce Example is a practical, hands-on guide to putting use case methods to work in real-world situations. This workbook is a companion to Use Case Driven Object Modeling with UML. It bridges the gap between the theory presented in the main book and the practical issues involved in the development of an Internet e-commerce application.

Component-Based Software Engineering: Putting the Pieces Together
By:
William Councill, George Heineman
Published:
2001

"Component-Based Software Engineering: Putting the Pieces Together" is an edited, state-of-the-art text composed of 42 chapters by 40 of the world's best known authors in the fields of component-based development, component-based software engineering, and component reuse. The book, although multi-authored, was designed from inception to read as if written by one author for the sake of the intended audience.

Executable UML: A Case Study
By:
Leon Starr
Published:
2001

Executable UML is a graphical specification language. It combines a subset of the UML (Unified Modeling Language) graphical notation with executable semantics and timing rules taken from the Shlaer-Mellor Method - the best of both worlds. You can use this language to build a fully executable system specification consisting of class, state, and, action models. Unlike traditional specifications, an executable specification can be run, tested, debugged, and measured for performance.

Executable UML: How to Build Class Models
By:
Leon Starr
Published:
2001

In Executable UML, Leon Starr shows how to build precise class models that form the foundation of rigorous software specifications. These specifications can be tested, debugged and optimized to generate code for multiple languages and platforms. Leon presents a wide range of examples from his projects in the fields of science and engineering-focusing on real-time environments where precise and accurate software specification is especially critical.

Requirements Analysis and System Design: Developing Information Systems with UML
By:
Leszek A. Maciaszek
Published:
2001

(From the Back Cover)

The Accidental Project Manager
By:
Patricia Ensworth
Published:
2001

Why do so many software projects fail? The reality is that many of these projects are led by programmers or developers thrown into the role of project manager without the necessary skills or training to see a project through successfully. Patricia Ensworth has written a hands-on survival guide designed to rescue the "accidental project manager" and help them to quickly ramp up on all key areas involved in software project management.

User-Centered Design: An Integrated Approach
By:
Scott Isensee, Carol Righi, Karel Vredenburg
Published:
2001

User-Centered Design can make any technology product or service far more successful by optimizing your customers' total experience from purchase and unpacking through support, upgrades, and beyond. Now, for the first time, there's a practical guide to introducing, deploying, and optimizing UCD. The field's leading experts present specific methods and techniques for building products that are simpler, more elegant, more powerful, and more profitable.

Testing Object-Oriented Software: Life-Cycle Solutions
By:
Imran Bashir, Amrit Goel
Published:
2000

This book presents an integrated framework for testing object-oriented software throughout the software engineering lifecycle. It discusses recipes for testing of requirements, designs, base classes, derived classes, and integrated systems. For each phase the authors describe objectives of testing, approaches used, testing techniques, ordered sets of activities, planned efforts, and acceptance criteria for transition to the next phase.

Verification and Validation of Modern Software-Intensive Systems
By:
Garth R. Mackenzie, G. Gordon Schulmeyer
Published:
2000

Verification and Validation of Modern Software-Intensive Systems brings the classic approaches up to date to apply them to contemporary computing methods. Based on the latest standards and research, the authors cover V&V for areas that have not been previously treated collectively, including:

What Every Programmer Should Know About Object-Oriented Design
By:
Eric J. Lurch
Published:
2000

If you're a programmer using C++, Smalltalk, or Eiffel, or if you're about to migrate to object orientation for the first time, you need to know the most important principles of object-oriented design. For example: In a reliable design, why must a variable's cone of polymorphism lie within that of a method? Is connascence good or bad? How could the inherited methods of a superclass violate the invariant of a subclass—and how can you prevent this?

An Embedded Software Primer
By:
David E. Simon
Published:
1999

An Embedded Software Primer is a clearly written, insightful manual for engineers interested in writing embedded-system software. The example-driven approach puts you on a fast track to understanding embedded-system programming and applying what you learn to your projects. This book will give you the necessary foundation to work confidently in this field.

Building on a basic knowledge of computer programming concepts, this book will help you to:

Blueprints for High Availability: Designing Resilient Distributed Systems
By:
Evan Marcus, Hal Stern
Published:
1999

Bestselling authors deliver an authoritative, hands-on book of tools for maintaining constant system availability. Reliability is not a quality that can simply be purchased; instead, it needs to be engineered into a system or product. Here is the only top-to-bottom guide available for the assessment, design, implementation, and testing of a system for 100% reliability.

Database Design for Smarties: Using UML for Data Modeling
By:
Robert J. Muller
Published:
1999

Whether building a relational, object-relational, or object-oriented database, database developers are increasingly relying on an object-oriented design approach as the best way to meet user needs and performance criteria. This book teaches you how to use the Unified Modeling Language--the official standard of the Object Management Group--to develop and implement the best possible design for your database.

Fundamentals of Object-Oriented Design in UML
By:
Meilir Page-Jones
Published:
1999

Object technology is increasingly recognized as a valuable tool in application development, but what is not yet recognized is the importance of design in the construction of robust and adaptable object-oriented (OO) applications. With the recent introduction and widespread adoption of the Unified Modeling Language (UML), programmers are now equipped with a powerful tool for expressing software designs.

Refactoring
By:
Martin Fowler
Published:
1999

Now you can dramatically improve the design, performance, and manageability of object-oriented code without altering its interfaces or behavior. Refactoring shows
you exactly how to spot the best opportunities for refactoring and exactly how to do it-step by step. Through more than forty detailed case studies, you'll learn powerful - and surprisingly simple - ways to redesign code that is already in production.

Capacity Planning for Web Performance: Metrics, Models, and Methods
By:
Virgilio A. F. Almeida, Daniel A. Menasce
Published:
1998

KEY BENEFIT: Virtually overnight, capacity planning has become the most critical issue for Web and intranet developers. This is the first comprehensive guide to every aspect of making sure your Web and intranet servers will deliver the performance your users and executives expect.

Complete Systems Analysis: The Workbook, The Textbook, The Answers
By:
Tom DeMarco, James Robertson, Suzanne Robertson
Published:
1998

In a fundamentally new approach, this comprehensive two-volume set teaches all the techniques a modern analyst needs. The authors explain all the methods, models, and techniques of analysis, and simulate an actual project executed for a British television company. The reader is guided through each step of the project by exercises and the authors' advice.

High-Performance Client/Server
By:
Frank Douglas, Chris Loosley
Published:
1997

Learn how to build high-performance client/server systems from the leading expert on database and client/server software performance. Chris Loosley is the recognized expert on high-performance client/server, and here he shows software developers how to build client/server applications that run fast without hogging computer resources.

Practical Object-Oriented Design
By:
Mark Priestley
Published:
1996

This book meets the demand for an accessible explanation of the popular Object Modeling Technique (OMT).

Total Quality Management for Software
By:
G. Gordon Schulmeyer, James McManus
Published:
1996

This book is a classic high-level management theoretical text. Its contents strongly concentrate on management styles such as TQM (Total Quality Management) and QFD (Quality Function Deployment). Its subject matter lacks the practical descriptions of test procedures such as White Box testing, Black Box testing, Integration, etc.

Confessions of a Used Program Salesman: Institutionalizing Software Reuse
By:
Will Tracz
Published:
1995

With tongue in cheek and pun in hand, Will Tracz explores the very serious and important topic of software reuse. Tracz is notorious for his well-known work in "Confessions of a Used Program Salesman," articles popularized by IEEE Computer, IEEE Software, and ACM Software Engineering Notes.

Design Patterns: Elements of Reusable Object-Oriented Software
By:
Gamma, Helm, Johnson, Vlissides
Published:
1995

Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.

Software Design, Automated Testing, and Maintenance
By:
Daniel Hoffman, Paul Strooper
Published:
1995

This book provides a throrough overview of the entire software-development process, from initial specification to final testing. The individual components are described in a cohesive manner such that, if these guidelines are adhered to, the product will be accurate, maintainable, and well documented. The book is ideal for a college-level computer science course. It is also ideal for a software manager who is starting a new project and is in a position to enforce these policies.

The Mythical Man-Month
By:
Fred Brooks
Published:
1995

Few books on software project management have been as influential and timeless as this one. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects.

Bringing Design to Software
By:
John Bennett, Laura DeYoung, Bradley Hartfield, Terry Winograd
Published:
1994

This book comprises a fascinating collection of essays and profiles focused on a wide variety of definitions of software design and approaches to improving it. In the preface, Terry Winograd defines the goal: “to improve the practice of software design, through thinking about design from a broader perspective, and exploring how lessons from all areas of design can be applied to software.”

Object-Oriented Systems Design: An Integrated Approach
By:
Edward Yourdon
Published:
1994

This book contains a broad overview of object-oriented software engineering. Even though the name implies that it only covers the design phase, it actually covers analysis and design in a fair amount of detail. The author mentions each of the common methodologies (diagramming techniques) for object-oriented language but does not give any details about coding.

Code Complete: A Practical Handbook of Software Construction
By:
Steve McConnell
Published:
1993

This practical handbook of software construction covers the art and science of the entire development process, from designing to testing. Examples are provided in C, Pascal, Basic, Fortran, and Ada--but the focus is on programming techniques rather than the requirements of a specific programming language or environment.

Practical Software Metrics for Project Management and Process Improvement
By:
Robert B. Grady
Published:
1992

This excellent book lives up to its title in delivering practical and application-oriented advice for project and process managers. The book highlights Hewlett Packard’s experiences using software metrics, incorporates more than seventy charts and graphs from real projects, and shows how the metrics can be rolled up into useful and workable organization indicators. The book includes a good bibliography.

Software Specification and Design: A Disciplined Approach
By:
Marilyn Keller, Ken Shumate
Published:
1992

The creation of an effective design that satisfies the requirements is often the greatest obstacle to overcome during project development. This book discusses both specification and design, including software and systems engineering interface. It provides a consistent set of notations, guidelines, and a step-by-step process to explain the methodology.

Object-Oriented Design
By:
Peter Coad, Edward Yourdon
Published:
1991

This exploration of object-oriented design builds upon three consistently employed methods of organization: objects and attributes, wholes and parts, and classes and members.

Quality Engineering Using Robust Design
By:
Madhav Shridhar Phadke
Published:
1989

Phadke was trained in robust design techniques by Genichi Taguchi, the mastermind behind Japanese quality manufacturing technologies and the father of Japanese quality control. Taguchi's approach is currently under consideration to be adopted as a student protocol with the US government. The foreword is written by Taguchi.

Upcoming Events

Apr 13
May 03
Jun 01
Jun 07