Showing posts with label Software Engineering. Show all posts
Showing posts with label Software Engineering. Show all posts

Monday, 7 March 2011

Enterprise Unified Process,The : Extending the Rational Unified Process



Enterprise Unified Process,The : Extending the Rational Unified Process
| 2005-02-11 00:00:00 | | 408 | Software Engineering


This book describes the fundamentals of the Enterprise Unified Process(EUP), an extension of the IBM/Rational Unified Process (RUP) that helpsmake it a full IT lifecycle. The book is, above all, practical. It gives a short, tothe point description of what the EUP is and how it addresses the shortfalls ofthe RUP that most organizations will encounter. While there are several RUPbooks, no single book address organizationsal issues that the EUP addresses(namely, where the RUP falls short). With this in mind, the authors provide abrief overview of the RUP but focuses mainly on the issues that the RUP mostignores (e.g. cross-project and enterprise issues). This is a `how to` guide usingreal-world experiences and examples for the practitioner. This book is notproduct specific and it is tool agnostic. Enterprise Unified Process is built onbeing an add-on to the RUP, instead of a detractor.

User review
A solid IT methodology for the enterprise
If you are using the Rational Unified Process, or considering doing so, and worried about applying it to a whole IT department rather than separate projects then this book could well be useful. The book has four parts - From RUP to EUP, Beyond Development, Enterprise Management Disciplines and Putting it all Together. Each section has several chapters and the chapters all start with a nice reader ROI section (showing the payoff for reading that chapter). The writing is clear and there are plenty of diagrams, tables and helpful tips.


The book starts of with some background in the RUP. I particularly liked the description of RUP as serial in the large and iterative in the small. Within the RUP there are also nine disciplines (Business Modeling, Requirements, Analysis and Design, Implementation, Test, Deployment, Configuration and Change Management, Project Management, and Environment). The authors outline 10 best practices they see as core to the EUP (they extend the original 6 in RUP) - Develop iteratively, Manage requirements, Proven architecture, Modeling, Continuously verify quality, Manage change, Collaborative development, Look beyond deployment, Deliver working software regularly and Manage risk. Each is clearly described.


In addition to the change best practices, EUP adds a Production phase and a Retirement phase. They point out that the Production phase is not just maintenance or just operations and support but both and more. I think that any organization building systems should spend as much time and effort thinking about production and running their application in production (which includes maintaining it over time) as they do in building it and I was glad to see this so strongly proposed. They also added an operations and support discipline, mostly but not entirely in the production phase. This discipline includes running the system and making hot fixes. I think the Retirement phase is overkill for most organizations but some will find it useful.


They also added some `Enterprise Management` disciplines for use outside the context of a project and this too is a good idea. The disciplines are Enterprise business modeling, Enterprise Portfolio Management, Enterprise Architecture (I particularly liked the idea that `modifiability` should be considered as part of an enterprise architecture - far too few organizations do this well and fail to differentiate between stable services and much more changeable ones), Strategic Reuse (Again I liked the called-out focus on this - without a real plan no reuse is going to happen), People management , Enterprise Administration and Software Process Improvement (Another good one and a timely reminder to all that you should keep improving your software processes)


Overall I liked the book, though it was a somewhat dry subject (as methodologies often are). There was a lot of good advice, some nice tips and some clearly hard-won experience being shared!

User review
No application is an island
Many IT organizations still pursue pet projects and develop duplicate applications in isolation, only to address later crises in corporate reporting, portfolio management, IT infrastructure, business objectives, and other areas.


EUP gives a coherent roadmap of how to architect smarter and for the long term. For organizations that don't have a strong enterprise aptitude, this book is a lifesaver. The EUP provides the business case for implementing EUP that will help cut through the politics by addressing the benefits to the bottom line for pursuing an Enterprise Unified Process.


I will be referencing the EUP regularly, and passing it around to others in my organization!

User review
Uniting diverse disciplines,,.under an easy to follow framework
The Enterprise Unified Process (EUP) unites diverse disciplines, including development, enterprise architecture, operations, production and portfolio management, reuse and business process modeling, under an easy to follow framework. It was refreshing to find a book that recognizes the need to accommodate the installed base of existing software as part of the planning, development and deployment process. This is an excellent guide for any manager who wants to ensure that essential IT disciplines are addressed.


The focus of EUP is to enhance the commonly accepted Rational Unified Process (RUP). The authors have added new disciplines to RUP that include business modeling, portfolio management, enterprise administration, reuse, enterprise architecture and process improvement. The introduction of business modeling into the overall process is essential to weave IT processes and disciplines into the most essential driver of any systems initiative - the business. The enterprise architecture discussion was also refreshing given that many organizations have forgone this discipline and have created redundant, stovepipe applications and data structures that significantly stifle business agility.


The `Reuse` chapter raises the rarely deployed reuse strategy. It is critically important to not replicate business processes, models, systems, data structures, source code and interfaces. The costs and risks of trying to keep parallel assets synchronized have been written about extensively. This book promotes the idea that reuse is just another aspect of the enterprise unified process. It is also one of the few discussions about reuse that recognizes the value of harvesting existing assets.


Also of note is the portfolio management discussion that focuses attention on the need to incorporate project management with application management. It should be noted, however, that portfolio management has much less focus on applications than the traditional industry definition as promoted by Gartner, Inc.


Finally, this book makes great use of tips, tool references and citations to books or papers that readers can use to expand on their understanding of a given topic. The last chapter of the book takes a realistic and honest look at deploying the enterprise unified process, including its possible retirement.



User review
Must reading for any RUP organization
This book is must readying for any organization using -- or attempting to use -- the RUP. The EUP's additional disciplines completes the RUP in a necessary and sufficient manner.

The book is written in a straight-forward manner, is easy to read and is well-organized. Each chapter reminds you to be practical (the antipatterns), explains how the additional discipline relates to the others and provides software tools and suggested reading.

Don't RUPture your software development efforts without having the more comprehensive approach of the EUP!

User review
A good coverage of RUP plus useful extensions
The book provides a very readable coverage of IBM's Rational Unified Process, as well as useful extensions that address important aspects of enterprise systems planning, development, and management. The systematic and disciplined treatment is greatly enhanced by the inclusion of much useful, pragmatic advice that draws from the practical experience of the authors in building real systems.

I quite liked this book. Although it doesn't give enough emphasis to conceptual data analysis (something RUP has always been weak on), it has loads of useful, practical content that make it a worthwhile addition to the literature.


Download this book!

Free Ebooks Download

Wednesday, 26 January 2011

The Tomes of Delphi 3: Win32 Graphical Api



The Tomes of Delphi 3: Win32 Graphical Api
David Bowden,Larry Diehl,Phil Dorcas,Kenneth Harrison,Rod Mathes,Ovais Reza,Mike Tobin,John Ayres | 1900-01-01 00:00:00 | Wordware | 879 | Software Engineering
A comprehensive reference to all of the Win 32 API function calls used to display graphics and user interface elements, this book highlights such topics as drawing primitives, color palette management, regions, and paths. The highly innovative InstallShield and DemoShield software are included on the CD-ROM. .
Reviews
Is this a tome? I was expecting deep subject coverage. What we have instead is a reproduction of the API docs. Does that a tome make? I think not. What's missing? Complex examples. Real-world examples (who creates windows with API calls when we have TForm?). Undocumented insights behind the APIs -- things you can't find in MSDN or the Platform SDK. More than anything, this book highlights the bloody lack of good Delphi books. This one is definitely a pass.
Reviews
Couldn't help but notice the obvious similarities between this book and the examples in MSDN and the Platform SDK. If you have either of these, I don't know why you'd need this book. I bought it thinking I'd get expert advice and insights. All it really is is a rehash of what's publicly available from MS anyway.
Reviews
I don't know many Delphi developers who can't at least read VB code. Obviously, the authors of this book can, because the examples are eerily similar to the VB Win32 examples in MSDN. So much so that I rather doubt a competent Delphi developer who has MSDN would really get much value from this book. If you can read VB, you don't need this book. I was expecting unique insights into the way that Delphi implements the API, particularly the graphics API, but instead got a lame VB-to-Pascal translation. Can't recommend this book.
Reviews
Like a fool, I bought this book in spite of the many negative reviews on this page. I was sorely disappointed. As the other reviewers have said, if you can read Visual Basic and you have MSDN, you don't need this book. The examples are beyond useless. The writing is disjoined and poor. Basically, this thing is nothing but a very expensive paper weight.
Reviews
I didn't think I really got my money's worth on this one. For the price paid I expected a lot more than a hackneyed translation of the graphics API. For one thing, all the examples use 8 bit graphics -- something that was passe when the book first came out and something that's certainly passe now. For another, there isn't much depth here. Many of the examples are overly simple. Last, there's too much repetition. Do we really need every graphics-related record structure repeated multiple times? I would return this one, but I've waited too long. Don't be like me -- don't waste your money on this one.

Download this book!

Free Ebooks Download

Monday, 17 January 2011

Computation and Visualization for Understanding Dynamics in Geographic Domains: A Research Agenda



Computation and Visualization for Understanding Dynamics in Geographic Domains: A Research Agenda
May Yuan,Kathleen S. Hornsby | 2007-12-26 00:00:00 | CRC Press | 120 | Software Engineering
The world is ever changing, and a comprehensive understanding of the world will not be achieved without theoretical and methodological advances to decode complex dynamics in human and environmental systems.

Computation and Visualization for the Understanding of Dynamics in Geographic Domains: A Research Agenda synthesizes key ideas and issues discussed during the UCGIS hosted workshop on computation. It expands upon popular discussions to provide a comprehensive overview of geographic dynamics and new approaches to advance our understanding of geographic dynamics through computation and visualization.

The text gives an overview of the state of research and how this research relates to intelligence analysis. It addresses broad issues and challenges in areas, such as spatiotemporal analysis and modeling, spatiotemporal visual analytics; spatiotemporal data mining, spatiotemporal reasoning, and spatiotemporal ontologies. The book also fuses suggestions from workshop participants with literature reviews to propose new research agendas and recommendations for future developments and collaboration.

With full coverage on current developments and probably challenges, Computation and Visualization for the Understanding of Dynamics in Geographic Domains: A Research Agenda establishes a foundation to promote further studies in geographic dynamics and provides a springboard for the next big scientific and technological breakthrough.

Download this book!

Free Ebooks Download

The Tomes of Delphi 3: Win32 Core Api



The Tomes of Delphi 3: Win32 Core Api
John Ayres,David Bowden,Larry Diehl,Kenneth Harrison,Rod Mathes,Ovais Reza,Mike Tobin | 1900-01-01 00:00:00 | Wordware | 788 | Software Engineering
The authors provide software developers a comprehensive guide to the Microsoft Windows application programming interface, the heart of Windows software development. This reference covers all of the most common Windows API functions, and each function has the syntax and an example of its use in Delphi's Object Pascal. The CD includes all of the code from the book.
Reviews
I believe, it's on every Delphi programmer to concentrate on this book.
Reviews
I cannot find out for an expert trick or undocumented windows API. I expected more about this book ! Badluck for me :( But , It may OK for some beginner programmer , who know ?
Reviews
The examples shown in this book are of little more value than those found in MSDN. They're simplistic, strawman examples that you don't need a book to figure out. Moreover, the coverage of the API is incomplete. The Shell interface, for example, should be covered in depth -- it isn't. Worse yet, the writing is very bad. I've never read such boring, lackluster prose. The authors show no noteworthy ability for making difficult concepts easy to grasp -- a must for the able technical writer. I recommend that you get Delphi Unleashed instead.
Reviews
I bought this after seeing several newbie recommendations for it. What a waste of money! This is nothing but a dead trees version of the Win32 API help with some banal examples thrown in for good measure. It's an embarrassing hack of a book. If you want to actually *master* the core API, get Delphi Unleashed or Delphi Developer's Guide and study MSDN extensively.
Reviews
This is nothing more than a reproduction of the MSDN andBorland help. Some of the examples are copied verbatim from MSDN andtranslated to Pascal. Do not waste your money on this book. It does not deserve shelf space in your library.

Download this book!

Free Ebooks Download

Sunday, 16 January 2011

Software by Numbers: Low-Risk, High-Return Development



Software by Numbers: Low-Risk, High-Return Development
Mark Denne,Jane Cleland-Huang | 2003-10-18 00:00:00 | Prentice Hall | 208 | Software Engineering
Reviews
This book was a surprise but only because I didn't read the title properly.

"Software by Numbers : Low-Risk High-Return Development".

Fundamentally, it is about project planning and prioritisation and not about estimation.



This book starts with three assumptions:-

1. You are using a feature-driven development iterative release approach to a project.

2. You can attach numeric business value to each of the features.

3. You can estimate the cost of developing the required software modules to implement the above features.



With these assumptions in place, the authors then use a number of net present value accounting algorithms to help you schedule the software module development to provide "Low-Risk High-Return development".

The algorithms are designed to maximise business return and minimise the risk as per the book's title.



It is only 190-pages, well-laid out with clear examples pitched at the right level for me so I swallowed in a week-end with only faint and distant grumbling from my wife.



I will be trying it out on my next green-field project and interested to see how assumptions 2 and 3 stand up to the test.



Highly Recommended.
Reviews
I am an advocate of Agile Software Development methods so I read this book with that bias. What I found was this book quantifies many of the ideas of agile development that before just made intuitive sense. The book explains the potential value of developing in small steps, and has a great discussion of how incremental development and architecture interact to affect return on investment.



If you are not involved in the financial side of planning software projects you may find yourself skimming through parts, but the general themes are ones that everyone involved in planning software projects will find interesting. (This includes developers in small teams.)



In most cases customers want you to build a software application to help them make or save money, and reading this book will help you to understand that.
Reviews
This book caught my attention because I was searching for a decent book on ROI and software development, and Dr. Jane Cleland-Huang was a professor at the graduate school I attended (I was never a student of hers and have never met her). Furthering my interest in "Software by Numbers" were the facts that it runs less than 200 pages and is from Sun Microsystems. In my opinion, most large technology works can be significantly shortened if the fluff is removed from them (who has time to read fluff?), and I view Sun as a respected firm that is involved with a lot of the technologies in my workplace. Maximizing financial return during the development of software is the main subject of this book, and the attempt of Jane and Mark Denne, her co-author, to show how to do so is a good one. Interestingly enough, the Preface of this text discusses how the authors arrived at the title "Software by Numbers", and although this title is better than the others that their friends and colleagues suggested, because it is a bit too similar to the common expression "paint by number" (which can be an idiomatic expression for "easy" or "mindless"), I do not think it does the book content justice. ROI is anything but a simple subject. Multiple formulas exist for ROI to begin with, and return can be a subjective matter because it can involve a lot of assumptions. Quite a few financial tables are presented with the book material, and a cursory review of the accompanying ROI examples shows that there is a bit of explanation missing. Of course, there is a tradeoff here between conciseness and thoroughness, and explaining all of the assumptions made would probably not be appropriate for most readers. The authors start the discussion by stating that software development is a very difficult endeavor. The following portions of the introductory chapters explain well much of the language used throughout the rest of the book, such as minimum marketable feature (MMF) and return on investment (ROI). The authors then compare MMF-based ROI with classic ROI and discuss how to discover MMFs, how to determine their value, and how this all fits with incremental funding methodology (IFM). While there exists overlap between the architecture discussion and the content of "Architecture in Practice" (see my review for that text), the authors quickly move forward to discussing the delivery of valued features to customers and how parallel development of multiple MMFs is often well suited for meeting customer needs. Although the chapter on how to manage intangibles provides a much more simple explanation than books such as "Making Technology Investments - ROI Road Map to Better Business Cases", the authors get their point across in a succinct manner. Similarly, the authors discuss how IFM can thrive when used with the (Rational) Unified Process and other more agile software engineering methodologies.
Reviews
Software by Numbers focuses on the financial aspects of software development. It introduces a method called "Incremental Funding Method" which demonstrates how software development with incremental delivery can fund itself, therefore lowering investment costs and thus lowering the risks for starting the development. The key-idea in the method is probably to break up the feature sets of a software product in MMFs (minimum marketable features) and calculate the investment and ROI of these separately and then deciding in what order they could be developed to maximize the total ROI.



The ideas of software by numbers are important to understand when selecting a development method that enables incremental delivery (like most agile development methods). Its especially good in convincing people who do not know software development that incremental delivery is a very good idea and financially sound idea.



To me this book was definitively worth reading. However, at some points the book seemed to lose my attention. At points I felt the authors were just repeating the same points over and over again. Eventhough the book is not very thick, I felt it could have been even thinner and conveying the same message.



Still, it's a recommended read.
Reviews
The core theory of the book is that feature/stories need to be prioritized based on business value. To anyone doing Agile (Scrum, XP, FDD) this is pretty much standard stuff.

What is new in the book is that they provide a framework for tying individual features to future cash flow/benefit for that feature to drive an analysis of net present value.

My viewpoint is that this book is very academic in orientation rather than grounded in the real world examples. As an example, there is no detailed example/sample/case study of how future cash flows were determined for a given set of features. The derivation of these values is critical to the applicability of the approach.

Do I buy it? No. I think XP User stories prioritized by the customer(s) will be a much more robust mechanism for selecting what to work on next. It will also come at a lower cost.

Download this book!

Free Ebooks Download


Wednesday, 12 January 2011

Software Reflected: The Socially Responsible Programming of Our Computers



Software Reflected: The Socially Responsible Programming of Our Computers
| 1982-11-01 00:00:00 | | 0 | Software Engineering




User review



User review



User review



User review



User review



User review



User review



User review



User review




Download this book!

Free Ebooks Download