Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #27447
| Path | csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.fsmpi.rwth-aachen.de!news-1.dfn.de!news.dfn.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail |
|---|---|
| From | Paul E Bennett <Paul_E.Bennett@topmail.co.uk> |
| Newsgroups | comp.lang.forth |
| Subject | Re: how do forthers control compexity and make easy user interfaces? |
| Date | Thu, 26 Dec 2013 10:16:15 +0000 |
| Organization | Hidecs Consultancy |
| Lines | 70 |
| Message-ID | <bi2dvgFmeuU1@mid.individual.net> (permalink) |
| References | <7619435e-495f-458c-a1cb-d878db85dac5@googlegroups.com> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset="ISO-8859-1" |
| Content-Transfer-Encoding | 7Bit |
| X-Trace | individual.net R1zkoBssVFbp2obHiJW9ng8d2fsvZNfLyM/DprIfjf7eqA6U62 |
| Cancel-Lock | sha1:fCc4kWwWutcbUHzsSTtf7BIbIsA= |
| User-Agent | KNode/4.10.5 |
| Xref | csiph.com comp.lang.forth:27447 |
Show key headers only | View raw
the_gavino_himself wrote: > two problem I have a tuff time with The complexity and user interface problems are two that really should be resolved long before you start coding. I deal with Industrial Control Systems and have used quite a bit of the Forth Philosophy which actually seems to have come from the mathematical philosophy of George Polya (see "How to Solve It" by George Polya published in 1945). From getting the true goals of the customer I usually perform a Task Analysis first, to ensure that I know all the sequence of actions that the User and the Systems is going to have to perform. As my systems ar often Safety Critical I will run a HAZOP analysis at this stage and adjust the resultant task plan and re-analyse both the task plan and HAZOP. It is here that you make your first decompositions of the problem space and begin to see the natural structure of the resultant system. I write descriptive documents for the system (functional specifications etc) and when the custoimer agrees I proceed with further decomposition of the system following the naturally emerging stucture. When it come to the software portion I begin at the higher level (user visible functions) and write the glossary commentary for the words that are natural language in the problem domain, attaching those comments to each of those words of the Application Specific Language. I write no code at this level, just the comments for each word I decide will make sense in fulfilling the functions. Eventually I descend the levels of abstraction towards meeting words that look like they would appear in a standard Forth. All through this activity there are regular reviews to ensure that the whole intent of the system is coherent, meets with the customer requirements for function and has notes relating to the related fault actions (time-out periods, mis-entered data etc). When I am close to approaching the level of words in a Standard Forth I can then start fleshing out the words with code, starting at the bottom and working up the levels. I functionally test immediately after coding. Reviews continue of this code and ther begins formal inspections, functional tests and limitations testing as the system builds from the bottom. These reviews ensure that the coded implentation performs the requirements (comments) as specified. When you get to the top you should have the whole system, no matter how complex it started, written and able to perform as it should. When I was developing one application in view of the client it came to a point that the client started to see new opportunities he could explore as the Application Specific Language was familiar to him already. That was a system I sealed at a level just below his ASL and allowed him the freedom to generate his own new functionality (not a safety critical application). Most of teh other applications get sealed into the system and there are no user changeable elements. So, to control complexity and make user interfaces easier you have to start outside the software with the rest of the system and make sure that you have understood the cusomer needs well enough. Then decompose the problem space from the complex problem to a set of much smaller ones. Solving lots of smaller, simpler problems is easier than trying to get your head around a much more complex one. With that, Merry Christmas Gavino. May you get to grips with writing some code soon. You can always try a small problem out and post your efforts for helpful commentary. -- ******************************************************************** Paul E. Bennett IEng MIET.....<email://Paul_E.Bennett@topmail.co.uk> Forth based HIDECS Consultancy.............<http://www.hidecs.co.uk> Mob: +44 (0)7811-639972 Tel: +44 (0)1235-510979 Going Forth Safely ..... EBA. www.electric-boat-association.org.uk.. ********************************************************************
Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
how do forthers control compexity and make easy user interfaces? the_gavino_himself <visphatesjava@gmail.com> - 2013-12-25 21:54 -0800
Re: how do forthers control compexity and make easy user interfaces? Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2013-12-26 10:16 +0000
How to specify complex code? mhx@iae.nl - 2013-12-26 02:52 -0800
Re: How to specify complex code? ForthFreak <forthfreak@gmail.com> - 2013-12-26 03:45 -0800
Re: How to specify complex code? mhx@iae.nl - 2013-12-26 05:20 -0800
Re: How to specify complex code? Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2013-12-26 22:34 +0000
Re: How to specify complex code? "Rod Pemberton" <dont_use_email@xnohavenotit.cnm> - 2013-12-27 01:07 -0500
Re: How to specify complex code? Mark Wills <markrobertwills@yahoo.co.uk> - 2013-12-27 02:20 -0800
Re: How to specify complex code? Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2013-12-27 12:27 +0000
Re: how do forthers control compexity and make easy user interfaces? Richard Owlett <rowlett@pcnetinc.com> - 2013-12-26 06:54 -0600
Re: how do forthers control compexity and make easy user interfaces? Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2013-12-26 22:37 +0000
Re: how do forthers control compexity and make easy user interfaces? Spam@ControlQ.com - 2013-12-27 17:13 -0500
Re: how do forthers control compexity and make easy user interfaces? the_gavino_himself <visphatesjava@gmail.com> - 2013-12-31 17:34 -0800
Re: how do forthers control compexity and make easy user interfaces? Richard Owlett <rowlett@pcnetinc.com> - 2013-12-26 06:52 -0600
Re: how do forthers control compexity and make easy user interfaces? the_gavino_himself <visphatesjava@gmail.com> - 2013-12-31 17:42 -0800
csiph-web