Loading ...
Sorry, an error occurred while loading the content.

Analogy: Software Development like a Commercial Airplane Flight

Expand Messages
  • Dossy
    I know how much we dislike analogies, but I ve been working this one over as a way of presenting software development (especially done XP style) to
    Message 1 of 4 , Dec 4, 2002
    • 0 Attachment
      I know how much we dislike analogies, but I've been working this one
      over as a way of presenting software development (especially done XP
      style) to non-technical management, and I wanted to run it by folks here
      to get opinions. Here goes ...


      Developing software is like a commercial airplane flight
      by Dossy
      2002/12/04

      Developing software is like a commercial airplane flight. Travelers
      purchase tickets and check in luggage (requirements). This lets the
      airline (software team) choose the appropriate airplane (technologies)
      to meet the passenger needs (requirments).

      Tickets can get cancelled, individual baggage allowances may get
      exceeded, or people might buy tickets at the last minute, or have to
      gate check items (changes in requirements throughout the software
      development lifecycle). Sometimes, depending on the actual passenger
      load, the size and class of plane might be changed from what was
      originally scheduled, too.

      The ground crew and flight staff prepare the plane for take-off (actual
      programming) and run through what tests they can (unit testing).

      At the time of the flight, the flight staff runs tests again but this
      time with actual passengers and luggage gradually getting loaded on the
      plane (acceptance testing with real data). The testing continues to run
      as the plane is being prepared and boarded, until everything is done.

      Last minute changes such as a missing seat cover, extra in-flight food,
      etc. (changing requirements) need to be addressed, as well as any issues
      found during the pre-flight tests (making the code pass all the tests).

      Finally, a final run-through of the pre-flight tests is done and if all
      lights are green, the plane gets cleared for take-off (all acceptance
      tests passing).

      The plane gets scheduled for take-off, taxis on the runway and finally
      takes off for its destination (product release to end-customers).

      -- Dossy

      --
      Dossy Shiobara mail: dossy@...
      Panoptic Computer Network web: http://www.panoptic.com/
      "He realized the fastest way to change is to laugh at your own
      folly -- then you can let go and quickly move on." (p. 70)
    • Kevin Smith
      ... Hmmm. Well, there are so many bad analogies out there that I suppose this isn t one of the worst. It doesn t help me much, either. Takeoff is a one-time,
      Message 2 of 4 , Dec 6, 2002
      • 0 Attachment
        On Wed, 2002-12-04 at 09:48, Dossy wrote:
        > Developing software is like a commercial airplane flight

        Hmmm. Well, there are so many bad analogies out there that I suppose
        this isn't one of the worst. It doesn't help me much, either.

        "Takeoff" is a one-time, must-be-correct thing. Few software development
        projects are really that binary. I guess if you look at each takeoff as
        being the conclusion of a new iteration, it works better. That's a bit
        of a mental stretch for me.

        The most interesting thing about a commercial airline flight is, in
        fact, the destination. This metaphor is very front-loaded. I would
        almost say that everything that happens before the airplane takes off is
        BDUF. In XP, we would start by jumping. Need to go higher? Try an
        ultralight. Only need to fly off a big hill? Refactor to a hang glider.

        Interesting thoughts, though.

        Kevin
      • jeffgrigg63132 <jgrigg@mo.net>
        ... I like EDS s analogy that developing software is like an airplane flight: It s like building the airplane *WHILE* it s in flight. The EDS Airplane
        Message 3 of 4 , Dec 7, 2002
        • 0 Attachment
          --- Dossy <dossy@p...> wrote:
          > Developing software is like a commercial airplane flight
          > by Dossy

          I like EDS's analogy that developing software is like an airplane
          flight: It's like building the airplane *WHILE* it's in flight. The
          EDS "Airplane" commercial (and the "Cat Herders" commercial, which is
          also an excellent analogy ;-) aired during the NFL Super Bowl XXXIV,
          in 2000.

          I know these two are online somewhere, but I can't immediately find
          the reference.
        • Dossy
          ... The takeoff is the actual takeoff of the plane. Or, the actual release of software to the end customer. It either does, or doesn t happen. It is
          Message 4 of 4 , Dec 8, 2002
          • 0 Attachment
            On 2002.12.06, Kevin Smith <kevinxp@...> wrote:
            > On Wed, 2002-12-04 at 09:48, Dossy wrote:
            > > Developing software is like a commercial airplane flight
            >
            > Hmmm. Well, there are so many bad analogies out there that I suppose
            > this isn't one of the worst. It doesn't help me much, either.
            >
            > "Takeoff" is a one-time, must-be-correct thing. Few software development
            > projects are really that binary. I guess if you look at each takeoff as
            > being the conclusion of a new iteration, it works better. That's a bit
            > of a mental stretch for me.

            The takeoff is the actual takeoff of the plane. Or, the actual release
            of software to the end customer. It either does, or doesn't happen. It
            is entirely binary. If you ever make it to another release, generally
            you go through all the pre-flight stuff again too. It all leads up to
            another takeoff.

            > The most interesting thing about a commercial airline flight is, in
            > fact, the destination. This metaphor is very front-loaded. I would
            > almost say that everything that happens before the airplane takes off is
            > BDUF. In XP, we would start by jumping. Need to go higher? Try an
            > ultralight. Only need to fly off a big hill? Refactor to a hang glider.

            Hmm. Interesting ... ;-)

            -- Dossy

            --
            Dossy Shiobara mail: dossy@...
            Panoptic Computer Network web: http://www.panoptic.com/
            "He realized the fastest way to change is to laugh at your own
            folly -- then you can let go and quickly move on." (p. 70)
          Your message has been successfully submitted and would be delivered to recipients shortly.