New Bridges,a new Internet, and Software Projects

There’s no question we need new bridges and road infrastructure in the United States. But how about a new Internet?

There is a massive project to redesign and rebuild the Internet from scratch that is  inching along with $12 million in National Science Foundation funding and donations of up to 40 gigabits of network capacity by the Internet2 organization and NationalLambdaRail. That's enough bandwidth to run 30 high-quality movies into your house -- simultaneously! Construction on "GENI" could start in about five years and cost $350 million - if Congress approves the funding.

You could consider emailing your Senator / Congressperson telling them you think it’s a good idea.

On Software Projects

Have you ever been involved in a software development project that is simply, well -- dysfunctional?  I have, and it is not fun, especially when time starts to run out and then people start looking for somebody to blame. There are certain ingredients that I've learned need to be in every software project for it to succeed. I call it “RPARL” – Requirements, Plan, Architecture, Resources, Leadership:

  1. A complete description of the Requirements of the project.
  2. A project Plan (yep - forget about those index cards, guys) with a realistic timeline.
  3. UML / Sequence diagrams for Architecture - or at least, "some form" of architecture (to build a building, you need blueprints, remember?).
  4. Resources (people) who understand what they are working on and what their part is in it.
  5. Leadership. A project manager who understands the effort and is not in a "State of Denial". Somebody who knows how to steer the ship!

Oh, there is more, but the above are the main ones I can think of.

The software development process is a science; it deals with facts, figures and arithmetic. If you see that the ingredients aren’t there, get out if you possibly can. I’ve been developing software on my own or in a group of developers for probably 15+ years now, and it never ceases to amaze me how many companies – both big and small, can’t seem to “get” the importance of these ingredients for success in their software projects.

Factoid:

Ittyurl.net now sports nearly 450 Silverlight Links!

Comments

  1. 1) Are you saying that the idea to increase government spendings in the area where government has very little expertise (Internet) -- is a good idea?

    2) Good leadership and good resources are important for the project. Some set of clear goals are important.
    But everything else -- not so much.
    UML / Sequence diagrams are optional, detailed project plan is optional, complete description of requirements is optional.

    ReplyDelete
  2. The current Internet was born out of DARPA, which was a government funded project for the military. The people who contributed to it, such as Vincent Cerf, were of the highest caliber, as are the current participants in the GENI project for "Ineternet 2".

    ReplyDelete
  3. Anonymous7:52 PM

    Peter, do you have any experience with Agile? If so, how does that fit in with your recipe?

    ReplyDelete
  4. @matt,
    I am familiar with Agile, and I endorse it. Agile is a group of software development methodologies that promotes development iterations, open collaboration, and process adaptability throughout the life-cycle of the project. They genrally fit in well with the observaions I made in this post.

    ReplyDelete

Post a Comment

Popular posts from this blog

Some observations on Script Callbacks, "AJAX", "ATLAS" "AHAB" and where it's all going.

IE7 - Vista: "Internet Explorer has stopped Working"

FIREFOX / IE Word-Wrap, Word-Break, TABLES FIX

System.Web.Caching.Cache, HttpRuntime.Cache, and IIS Recycles

FIX: Requested Registry Access is not allowed (Visual Studio 2008)