home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / software / 4925 < prev    next >
Encoding:
Internet Message Format  |  1992-12-13  |  3.2 KB

  1. Path: sparky!uunet!cbmvax!devon!sojurn!mike
  2. From: mike@sojurn.lns.pa.us (Mike J. Sangrey)
  3. Newsgroups: comp.software-eng
  4. Subject: metamodels, metalanguages, templates, domain models ...
  5. Message-ID: <1992Dec13.203011.24702@sojurn.lns.pa.us>
  6. Date: 13 Dec 92 20:30:11 GMT
  7. Organization: Humble Pilgrimage Palace
  8. Lines: 58
  9. Summary: What are the metalanguages that you've found and use?
  10.  
  11. I've been reading Yourdon's book: "The Decline and Fall of the
  12. American Programmer," and in that book he brings up meta-languages.
  13. He gives an illustration from a three volume work about Architecture
  14. (which I don't believe to be computer architecture, but about
  15. buildings, villages, etc.)  The work suggests that as a technology
  16. matures, it develops a set of pattern languages that are used because
  17. they provide simple, elegant, efficient solutions to the problem
  18. domain.  While you drive down the road, you'll notice certain
  19. architectural patterns, repeated again and again.  Rectangles are
  20. frequently 2 times longer than they are wide; bricks for example.
  21. These patterns work, both to the eye as well as functionally.  Up here
  22. in the north east (Penna.) we have porches on the front of most
  23. houses.  That pattern serves many functions and does so efficiently,
  24. and, many times, rather elegantly.
  25.  
  26. Yourdon says, "This fits nicely into the concept of `application
  27. domain models' that many researchers are currently exploring.  It
  28. should be possible to provide a handbook to system designers that
  29. says, `Look, if you're building a sales order entry system, you should
  30. expect to see these 20 basic classes of objects and the following
  31. class hierarchies.  You may encounter some variations and extensions,
  32. but this is the general pattern.'"  In other words, ``when ya build a
  33. house in Pa., ya gone'a to see da object `porch'.''
  34.  
  35. Now, this brought to my mind a question, albeit on a slightly
  36. different plane.  There seems to me to be a certain set of patterns
  37. that, when incorporated into software, provide a great deal of
  38. flexibility and efficiency.  For example, the ``read-write-open-
  39. close'' pattern.  We (my organization) have applied that pattern to
  40. many things, unix message queues, dynamically sized priority queues,
  41. and others, not to mention unix' use of it (which is where we got the
  42. idea:-). Maybe another might be provision for dynamically redirecting
  43. the flow of information from one object to another; unix, again, comes
  44. to mind with its I/O redirection.  I see some of this in our software;
  45. though it wasn't purposely designed in at the time.
  46.  
  47. Here's the question for discussion:
  48.    
  49.     What patterns should a software engineer look for and lean
  50.     towards using, when doing analysis and design of a software
  51.     system?  I'm looking for cookbook answers and justification
  52.     for it's inclusion into this cookbook list.
  53.  
  54.         1)  read-write-open-close
  55.     2)  dynamic redirection of information flow
  56.     3)  ???
  57.     4)  ...
  58.  
  59. Thank You.
  60.  
  61. Please post any contributions; you may email to me if you like.  I'll
  62. post a summary sometime in the future, if there is enough input.
  63.  
  64. mike@sojurn.lns.pa.us
  65. -- 
  66.   |  UUCP-stuff:  ...!pitt!devon!sojurn!mike | "You can't save a bad idea    |
  67.   |  Internet  :  mike@sojurn.lns.pa.us      |  by great execution."         |
  68.   |  Fast-stuff:  (717) 396-9897             |                Moses Porter   |
  69.