Architectuur moet bijdragen

November 30th, 2009

Architecten focussen veel op de kwaliteit, maar er is meer dan dat. Een goede gelegenheid om in dit nummer te kijken naar het evenwicht tussen kwaliteit, acceptatie en impact.

http://www.informatie.nl/

Enterprise Architecture for Systems Engineers

November 30th, 2009

Systems engineers often focus on the system currently under development, without much concern for the larger enterprise it supports. This article explores the connection points between the enterprise architecture and the system architecture, and discusses how the enterprise architecture both provides input to and constrains system development. Its goal is to help systems engineers gain a deeper understanding of how their efforts on projects that create or modify systems are both constrained by, and can modify, the architecture of the enterprise those systems support. In today’s business-driven enterprise, there is a direct relationship between the enterprise’s business capability and the functionality implemented on projects.

Dave Brown
Peter Bahrs

http://www.ibm.com/developerworks/rational/library/edge/09/jun09/enterprisearchitecture/index.html

Countdown to Agility

November 30th, 2009

In May 2009, Outdoor Magazine recognized Rally Software as one of the top ten companies to work for in America. That spawned a conversation between Ryan Martens, Rally’s founder, and me about how agile creates great companies. Rally holds six core values: Make and meet commitments, give back to the community, balance work and life, base decision making on theory, respect people, and create your own reality. As we grow and change, we continuously evaluate how faithful we are to these values. With these core values, we seek continually to strengthen our corporate culture. Based on our conversation about these core values, Ryan and my brainstorm led to these ten characteristics we think are essential to building a truly great agile organization.

Jean Tabaka

http://www.stickyminds.com/BetterSoftware/magazine.asp?fn=cifea

Making the Business Case for Software Assurance

November 30th, 2009

This report provides guidance for those who want to make the business case for building software assurance into software products during each software development life-cycle activity. The business case defends the value of making additional efforts to ensure that software has minimal security risks when it is released and shows that those efforts are most cost-effective when they are made appropriately throughout the development life cycle. Although there is no single model that can be recommended for making the cost/benefit argument, there are promising models and methods that can be used individually and collectively for this purpose, as well as some convincing case study data that supports the value of building software assurance into newly developed software. These are described in this report.

Nancy R. Mead
Julia H. Allen
W. Arthur Conklin
Antonio Drommi
John Harrison
Jeff Ingalsbe
James Rainey
Dan Shoemaker

http://www.sei.cmu.edu/library/abstracts/reports/09sr001.cfm

The Task-Based Interface: Not Your Father’s Desktop

November 30th, 2009

The typical desktop computing environment hasn’t changed much since the mass adoption of the GUI. No matter what operating system your computer might feature, no matter what occupation you pursue, the files-and-folders paradigm is ubiquitous, accepted, and tolerated as so much digital dogma. But for a handful of researchers, this model isn’t quite right.

Greg Goth

http://www.computer.org/portal/c/document_library/get_file?uuid=135691a5-6254-496d-9d04-1896795b4eda&groupId=53319

Software Engineering: An Idea Whose Time Has Come and Gone?

November 30th, 2009

We’re now just past the 40th anniversary of the NATO Conference on Software Engineering in Garmisch, Germany, where the discipline of software engineering was first proposed. Because some of my early work became part of that new discipline, this seems like an appropriate moment for reassessment.

Tom DeMarco

http://www.computer.org/cms/Computer.org/ComputingNow/homepage/2009/0709/rW_SO_Viewpoints.pdf

Perci: Pervasive Service Interaction with the Internet of Things

November 30th, 2009

The advancement of ubiquitous computing technologies, such as wireless networks and mobile devices, has greatly increased the availability of digital information and services in our daily lives and changed how we access and use them. Another technology that extends digital resources to the real world is the Internet of Things, which connects such resources with everyday objects by augmenting the latter with RFID or Near Field Communication (NFC) tags. This way, real-world objects get digital identities and can then be integrated into a network and associated with digital information or services. These objects can facilitate access to digital resources and support interaction with them - for example, through mobile devices that feature technologies for discovering, capturing, and using information from tagged objects.

Gregor Broll
Massimo Paolucci
Matthias Wagner
Enrico Rukzio
Albrecht Schmidt
Heinrich Hußmann

http://www.computer.org/cms/Computer.org/ComputingNow/homepage/2009/1109/W_IC_Perci.pdf

Other People’s Data

November 25th, 2009

Every organization bases some of its critical decisions on external data sources. In addition to traditional flat file data feeds, Web services and Web pages are playing an increasingly important role in data warehousing. The growth of Web services has made data feeds easily consumable at the departmental and even end-user levels. There are now more than 1,500 publicly available Web services and thousands of data mashups ranging from retail sales data to weather information to United States census data. These mashups are evidence that when users need information, they will find a way to get it. An effective enterprise information management strategy needs to take into account both internal and external data.

Stephen Petschulat

http://queue.acm.org/detail.cfm?id=1655240

The Evils of Eval

November 19th, 2009

If you’re a developer who uses JavaScript or if you know one who does, Bryan Sullivan’s got some advice for you. Take a few moments to acquaint yourself with the dangers of eval and its related functions, and learn to better secure your applications from attackers. In this article, he compares the command to other major security issues like buffer overflows, SQL injection, and cross-site scripting.

Bryan Sullivan

http://www.stickyminds.com/s.asp?F=S15558_COL_2

Introduction to Algorithms, Third Edition

November 16th, 2009

Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. “Introduction to Algorithms” uniquely combines rigor and comprehensiveness. The book covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers. Each chapter is relatively self-contained and can be used as a unit of study. The algorithms are described in English and in a pseudocode designed to be readable by anyone who has done a little programming. The explanations have been kept elementary without sacrificing depth of coverage or mathematical rigor.

The first edition became a widely used text in universities worldwide as well as the standard reference for professionals. The second edition featured new chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming. The third edition has been revised and updated throughout. It includes two completely new chapters […] and substantial additions to the chapter on recurrences (now called “Divide-and-Conquer”). It features improved treatment of dynamic programming and greedy algorithms and a new notion of edge-based flow in the material on flow networks. Many new exercises and problems have been added for this edition.

Thomas H. Cormen
Charles E. Leiserson
Ronald L. Rivest
Clifford Stein

http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=11866

Writing great documentation

November 12th, 2009

I love Django’s documentation. It clocks in at about 700 pages printed, and most of it is clear, concise, and helpful. I think Django’s among the best documented open source projects, and nothing makes me prouder.

If any part of Django endures, I hope it’ll be a sort of “documentation culture” — an ethos that values great, well-written documentation. To that end, I’m writing a series of articles laying out the tools, tips, and techniques I’ve learned over the years I’ve spent helping to write Django’s docs.

This advice will mostly be targeted towards those documenting libraries or frameworks intended for use by other developers, but much of it probably applies to any for of technical documentation.

Jacob Kaplan-Moss

http://jacobian.org/writing/great-documentation/

Raphaël JavaScript Library

November 12th, 2009

Raphaël is a small JavaScript library that should simplify your work with vector graphics on the web. If you want to create your own specific chart or image crop and rotate widget, for example, you can achieve it simply and easily with this library.

Raphaël uses the SVG W3C Recommendation and VML as a base for creating graphics. This means every graphical object you create is also a DOM object, so you can attach JavaScript event handlers or modify them later. Raphaël’s goal is to provide an adapter that will make drawing vector art compatible cross-browser and easy.

Dmitry Baranovskiy

http://raphaeljs.com/

Hey! Ho! Let’s Go!

November 11th, 2009

Here at Google, we believe programming should be fast, productive, and most importantly, fun. That’s why we’re excited to open source an experimental new language called Go. Go combines the development speed of working in a dynamic language like Python with the performance and safety of a compiled language like C or C . Typical builds feel instantaneous; even large binaries compile in just a few seconds. And the compiled code runs close to the speed of C. Go lets you move fast. Go is a great language for systems programming with support for multi-processing, a fresh and lightweight take on object-oriented design, plus some cool features like true closures and reflection.

Robert Griesemer
Rob Pike
Ken Thompson
Ian Taylor
Russ Cox
Jini Kim
Adam Langley

http://google-opensource.blogspot.com/2009/11/hey-ho-lets-go.html

Google’s Closure Tools

November 9th, 2009

Millions of Google users worldwide use JavaScript-intensive applications such as Gmail, Google Docs, and Google Maps. Like developers everywhere, Googlers want great web apps to be easier to create, so we’ve built many tools to help us develop these (and many other) apps. We’re happy to announce the open sourcing of these tools, and proud to make them available to the web development community.

Closure Compiler is a JavaScript optimizer that compiles web apps down into compact, high-performance JavaScript code. Closure Library is a broad, well-tested, modular, and cross-browser JavaScript library. Web developers can pull just what they need from a wide set of reusable UI widgets and controls, as well as lower-level utilities for the DOM, server communication, animation, data structures, unit testing, rich-text editing, and much, much more. Closure Templates grew out of a desire for web templates that are precompiled to efficient JavaScript.

Closure Compiler, Closure Library, Closure Templates, and Closure Inspector all started as 20% projects and hundreds of Googlers have contributed thousands of patches. Today, each Closure Tool has grown to be a key part of the JavaScript infrastructure behind web apps at Google. That’s why we’re particularly excited (and humbled) to open source them to encourage and support web development outside Google. We want to hear what you think, but more importantly, we want to see what you make. So have at it and have fun!

http://googlecode.blogspot.com/2009/11/introducing-closure-tools.html