Re: Recommended books on Top Down Design

From: Jyrki Alakuijala (Jyrki.Alakuijala_at_find.me.via.google)
Date: 11/09/04

  • Next message: Michael Wojcik: "Re: A spamming harvasting technique? Whazzit?"
    Date: Tue, 09 Nov 2004 19:10:07 +0200
    
    

    Phlip wrote:

    > "Top down design" still happens, but books these days don't promote it.

    Top-down design is ok, if you have a team knowing rather accurately
    what to do. The project could be, for example, recustomizing the same
    software package for the seventh time for another customer. If the
    project is challenging or new to the project team, top down design is
    an invitation for a catastrophe.

    Top down, bottom up, iterative, incremental, maturity driven,
    evolutionary delivery model, etc. are just different possibilities
    for managing risk. My favorite approach is to identify the risky
    components and build them first. Forcing the less complex components
    to adapt into co-operating with the more complex components yields a
    more maintainable and agile code base. Also, the development investment
    in the complex parts is better protected (they cannot see the and use
    the other components, even in an environment of poor architectural
    or requirements management). Also, the project becomes more
    predictable if the difficult parts are implemented first (to a certain
    component maturity level).

    > Curiously, the big software vendors keep pushing statically typed languages,
    > Java & C#, while high-level code, such as GUI code or business-logic code,
    > typically must bend over backwards to provide dynamic typing. Free and
    > powerful languages, such as Ruby, supported entirely by their own programmer
    > communities, are going to teach these big software vendors a thing or to.

    The excuse for using statically typed languages in industry is that it
    allows a wider variety in programming capabilities to be deployed. I
    am not sure if that helps at all in the final productivity, but it
    may allow more people to participate in the coding effort.

    I strongly believe that many software projects would benefit from a
    multi-language approach, where UI development is implemented using
    a modern dynamic language, such as Python, while the I/O and
    calculation are implemented in a static language.

    Back to on-topic:

    Read Maibor (1985) DoD-Std-2167 (obsoleted), if you like to
    understanding the origins of the strong foothold of "waterfall"
    project management in software engineering. After that, read
    Larman & Basili, Iterative and Incremental Development: A Brief
    History, IEEE Computer, June 2003 for a more complete overview.


  • Next message: Michael Wojcik: "Re: A spamming harvasting technique? Whazzit?"

    Relevant Pages

    • Re: Speculative Design Hypothesis (with predictions) 2nd draft
      ... languages are human products, but that does not make them "designed". ... natural languages has nothing to do with design. ... wings and echolocation. ... Because the genetics and fossil evidence show otherwise. ...
      (talk.origins)
    • Re: Overview Of New Intel Core i7(Nehalem) Processor
      ... people settled down and started doing more disciplined design. ... apps will still need mathematical, disciplined, unambiguous languages. ... See, tha tis wha tI mean, yo udo not knwo C, and yet yo uhave more opinions ... I wrote my first EPROM programmer with zeros and ones in machine code, ...
      (sci.electronics.design)
    • Re: high level languages for synthesis
      ... languages are more distinct from their cycle-accurate cousins than ... straightforward to use a spiral design methodology using VHDL, ... implement a wide variety of other scientific algorithms. ... FPGA-targeting C-syntax HLL is somehow inherently sequential. ...
      (comp.arch.fpga)
    • Re: Speculative Design Hypothesis (with predictions) 2nd draft
      ... languages are human products, but that does not make them "designed". ... natural languages has nothing to do with design. ... evidence to point to them not being human. ... wings and echolocation. ...
      (talk.origins)
    • Re: Speculative Design Hypothesis (with predictions) 2nd draft
      ... languages are human products, but that does not make them "designed". ... natural languages has nothing to do with design. ... wings and echolocation. ... Because there's much more variation in mammalian forelimbs than in bat ...
      (talk.origins)