Archive for August, 2008

97 Things Every Software Architect Should Know

Thursday, August 28th, 2008

The following are axioms for software architects by software architects. They have been contributed under the Creative Commons, Attribution 3 open source license. Each axiom has a title and a description and each author has their own biography page. As a member of this site, you can comment and rate any and all axioms.

You can also write your own axioms and create your own biography page. If you have a rule-of-thumb, principle, axiom, or maxim you believe is important to being a successful software architect, this is the place to share it with the world.

While all contributions will remain freely accessible on this site, the 97 best axioms will also be included in the book, 97 Things Every Software Architect Should Know, which will be published by O’Reilly Media, Inc.

Richard Monson-Haefel

http://97-things.near-time.net/wiki

Agile Approach Slashes Software Development Time

Thursday, August 28th, 2008

EUREKA ITEA software Cluster AGILE project make it possible for European manufacturers to develop high quality embedded software in markedly shorter times and at much lower costs than possible with traditional techniques. Applying the approach to 68 pilot case studies in industries from avionics and telecommunications to consumer electronics, the project demonstrated clearly that ‘agile’ methodology can lead to massive improvements in embedded software engineering. Suitable tooling was also demonstrated to simplify application of the agile approach. As a result, much more software development can be carried out cost effectively in Europe rather than being outsourced to Asia.

http://www.sciencedaily.com/releases/2008/08/080819160419.htm

Virtualisatie is blijvend

Thursday, August 21st, 2008

Virtualisatie is een betrekkelijk nieuw fenomeen in de IT-wereld. Iedereen praat er weliswaar over maar in de praktijk wordt het nog maar mondjesmaat toegepast. Vaak op kleine schaal, min of meer als proefproject. Toch is men ervan overtuigd dat virtualisatie een blijvertje is. Wat is de toegevoegde waarde van deze technologie, hoe ziet de toekomst van virtualisatie eruit en als men al een opvatting over dit fenomeen heeft, klopt die dan met de werkelijkheid?

http://www.informatie.nl/artikelen/2008/08/

Europe tour of Data Vault founding father Dan Linstedt

Thursday, August 21st, 2008

DNV Academy offers you the unique possibility to learn from the founding father of Data Vault, Dan Linstedt himself. As a result of a unique exclusive partnership with Genesee Academy, DNV Academy is now able to offer this 4-day course in France, Germany and the Netherlands. Last June, the Data Vault course was very successful and was sold out within a few weeks, with 50 people participating in the course. If you are interested, please have a look at:

http://www.dnv.com/news_events/events/2008/datavaultseminarwithdanlinstedt.asp

Overview: C++ Gets an Overhaul

Tuesday, August 19th, 2008

Ten years after the ratification of the first ISO C++ standard, C++ is heading for no less than a revolution. C++0x, the new C++ standard due in 2009, brings a new spirit and new flesh into the software development world. Brace yourself for state-of-the-art design idioms, even better performance, and a plethora of new features such as multithreading, concepts, hash table, rvalue references, smarter smart pointers, and new algorithms. No doubt you’ll find a lot to like in C++0x!

Danny Kalev

http://www.devx.com/SpecialReports/Article/38884

Business Value Game

Saturday, August 16th, 2008

Have you ever wondered where those “Business Value” numbers in the XP Game came from? Have you ever wondered what salespeople, product managers and onsite customers do? Then we have a game for you: The Business Value Game

In the game you play the roles of salespeople, developers and accountants to try and deliver features to customers so that your
company can make money. The current version takes about 90 minutes to play. We received lots of ideas to extend the game to 120 minutes.

Like the XP Game, the Business Value Game is licensed as Creative Commons, so you can use and remix it.

Vera Peeters and Pascal Van Cauwenberghe

http://www.xp.be/businessvaluegame.html

Twenty Years of CrossTalk

Saturday, August 16th, 2008

It is my privilege to congratulate CrossTalk on 20 years of publishing articles for and by the defense software community. Longevity in any field is not easy, but longevity in the fast-paced world of software is indeed a notable accomplishment. The occurring changes during the past 20 years are far too countless to mention, yet they have all contributed to the present state of defense software today. Likewise, those of us currently involved with CrossTalk stand on the shoulders of the authors, editors, sponsors, and publishers who went before us, all of whom significantly contributed in assisting CrossTalk in fulfilling its mission of informing readers of new industry trends, proven methodologies, cutting-edge technologies, innovative practices, and, of
course, lessons learned.

In this special 20th anniversary issue, Gerald M. Weinberg takes a bi-directional view of where defense software had been and where it is going in his article What Have 20 Years Accomplished and What Is Left to Accomplish in the Next 20 Years?, while Dr. Linda Ibrahim provides insightful thoughts about the progress of the industry as a whole in A Process Improvement Commentary.

Watts S. Humphrey cautions readers in his article, The Process Revolution, not to repeat mistakes and to build reliability and consistency into your processes by consistently recording and learning from history. In the same vein, Paul Kimmerly’s article, Heroes: Carrying a Double-Edged Sword, discusses the benefits and limitations of heroes in process improvement efforts.

You may have heard the saying the more things change the more they stay the same. Interestingly, Dr. Alistair Cockburn explores the merits of this platitude in a software sense by reviewing Agile practices in his article Good Old Advice, and focuses on Agile’s applicability in today’s world.

Conversely, Jamie Hohman and Dr. Hossein Saiedian provide guidance in their article, Wiki Customization to Resolve Management Issues in Distributed Software Projects. This article adds new dimensions to the dynamics of traditional project management and provides methods of easing the stresses brought on by trying to manage distributed projects.

Lastly, don’t miss Gary A. Petersen’s witty walk down CrossTalk’s memory lane in his article, CrossTalk: The Long and Winding Road, as he examines the maturity and growth of the magazine as it developed from a diminutively distributed black-and-white copy to its current form and shape.

Karl Rogers

http://www.stsc.hill.af.mil/crosstalk/2008/08/index.html

Clean Code: A Handbook of Agile Software Craftsmanship

Thursday, August 14th, 2008

Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.

Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.

What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.

Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.

http://www.pearsonhighered.com/educator/academic/product/0,3110,0132350882,00.html

HP, Intel and Yahoo! Create Global Cloud Computing Research Test Bed

Thursday, August 14th, 2008

HP, Intel Corporation and Yahoo! Inc., announced today the creation of a global, multi-data center, open source test bed for the advancement of cloud computing research and education. The goal of the initiative is to promote open collaboration among industry, academia and governments by removing the financial and logistical barriers to research in data-intensive, Internet-scale computing.

The HP, Intel and Yahoo! Cloud Computing Test Bed will provide a globally distributed, Internet-scale testing environment designed to encourage research on the software, data center management and hardware issues associated with cloud computing at a larger scale than ever before. The initiative will also support research of cloud applications and services.

http://research.yahoo.com/node/2328

Hadoop

Monday, August 11th, 2008

Hadoop is a framework for running applications on large clusters built of commodity hardware. The Hadoop framework transparently provides applications both reliability and data motion. Hadoop implements a computational paradigm named Map/Reduce, where the application is divided into many small fragments of work, each of which may be executed or reexecuted on any node in the cluster. In addition, it provides a distributed file system (HDFS) that stores data on the compute nodes, providing very high aggregate bandwidth across the cluster. Both Map/Reduce and the distributed file system are designed so that node failures are automatically handled by the framework.

http://wiki.apache.org/hadoop/

Sustainable open source

Friday, August 8th, 2008

Sustainable open source is an open source project that supports itself. That is the project is able to cover the costs it incurs, which can be significant even in a volunteer driven project. This document examines some of the models by which an open source project can become sustainable.

Ross Gardler

http://www.oss-watch.ac.uk/resources/sustainableopensource.xml

An Introduction to F# for Functional Programming

Friday, August 8th, 2008

Functional programming with F# is much more than writing good code. It is about enjoying writing code quickly and effectively. This series of articles addresses functional programming, the main concepts and differences compared to other paradigms, and how F# helps you get up to speed and produce results. This article quickly lays the groundwork and then guides you on translating and/or interfacing with your existing code.

Adam Granicz

http://www.devx.com/dotnet/Article/38755

Alice

Wednesday, August 6th, 2008

Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a teaching tool for introductory computing. It uses 3D graphics and a drag-and-drop interface to facilitate a more engaging, less frustrating first programming experience.

http://www.alice.org/

Applied SOA

Tuesday, August 5th, 2008

Applied SOA is a new book on Service Oriented Architecture written by 4 leading SOA practitioners: Michael Rosen, Boris Lublinsky, Kevin Smith and Marc Balcer. SOA has quickly become the industry standard for building next-generation software; this practical guide shows readers how to achieve the many benefits of SOA. It begins with a look at the architectural principles needed to create successful applications and then goes on to examine the process for designing services and SOA implementations. Each stage of the design process has an accompanying chapter that walks readers through the details and provides helpful tips, techniques, and examples. The author team of SOA practitioners also provides two unique, comprehensive, end-to-end case studies illustrating the architectural and design techniques presented in the book.

http://www.infoq.com/articles/applied-soa
http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470223650.html

10 Principles of Agile Project Time Management

Tuesday, August 5th, 2008

Project Time Management is one of the nine knowledge areas of the Project Management Body of Knowledge (PMBOK). It deals with the definition of activities (what are we going to do), the sequencing of the activities (in what order are we going to do them), and the development and control of the schedule (when are we going to perform those activities).

Over the past couple of weeks I have been trying to find out what the main principles of time management are in the case of agile software development. I was able to distinguish 10 principles so far, and I will present them here for your convenience. With each principle I also include a reference to an online article that (as far as I can tell) nicely describes the ideas behind it.

Jurgen Appelo

http://agilesoftwaredevelopment.com/blog/jurgenappelo/10-principles-agile-project-ti