[CSUSB] >> [CNS] >> [Comp Sci] >> [R J Botting] >> Research
[Index] || [Blog] || [Research] || [Teaching] || [Search] Tue Jan 6 12:21:26 PST 2004
Disclaimer. CSUSB and the CS Dept may or may not agree with this page.
Copyright(2003). Copy and use as you wish but say where you found it. Make links as you need. See my signature etc page for details.
Engraving of John Roebling's Brooklin Bridge
John Roebling's bridge is still standing and still functioning despite problems with the quality of the supplied components and the unknown stability of some of its foundations.
How long does our software last?


Participation in Local Projects

My Research Area

I am carrying out a wide ranging study of Here is a map of some the ideas involved in this research area:
[many connected ideas]
This developed from my interest in Programming Languages and Methods in the 1960s and 1970s. I believe that it is tempting for software engineers and computer scientists to rush in and develop solutions to badly understood problems. These solutions may not be useful as a result. Often a solution (K&R C for example) generates a new set of problems (Operating systems with easily exploited holes and memory leaks for example).

I think that the rush to implementation has applied to attempts to develop CASE. It also applies to many proposed methods - programs executed by humans. The methods I have studied offer, at best, a good solution to a particular class of problems in a particular context. However they are sold as solving all problems in all situations(Silver Bullets).

I have a hunch that different socio-economic niches make different methods, processes, techniques and technologies rational: "Does One Size Fit All?"(1995) . I have been working out the consequences of adopting different methods and processes in different situations. I am supervising a survey of software development companies to see if their socio-economic situation is having an effect on their methods and processes (see theses).

I am therefore no longer designing and selling my favorite tools and methods. Instead I am collecting different software development tools, processes and methods. I am analyzing as many published methods and methodologies as possible. I am using the operations research paradigm developed by scientists and practitioners in the second world war. Here one develops mathematical models of how some process or method is carried out. The model can be used to make predictions and to predict optimal (or at least feasible) methods, processes,and/or techniques.

I have been collecting reports of what is done in practice from magazines. Similarly I monitor the state of the art as discussed on several Usenet Newsgroups. I therefore maintain several directories pointing to material on developing software development under the following headings:

Published Information about Software Development
  • Earlier Work: Parts of a Monograph describing software development methods,
  • Work in Progress: Drafts and Presentations( once published a paper comes under a new copyright so I can not keep copies online ),
  • The MATHS Project

    This was an experiment to see if it was feasible to develop an ASCII based documentation language that would allow a software developer to mix mathematical and natural notations together at all stages in a project, for all life cycles, and all methods. The notation grows out of the well known EBNF notation for syntax but goes much further. In particular it allows parts of one document to be reused and extended in other documents.

    One test was to develop a tool to translate the notation into HTML. This turned out to be useful for documenting languages and preparing WWW notes and handouts.

  • Similar Work by others
    PVS with 600 built in Theories!
    Data Base of automated reasoning
    Extending HTML to include Math
    Specialized Mathematical MarkUp Language based on XML: MathML
    A tiny language for sharing mathematical formulae and their semantics OpenMath
    The MINSE Notation
    Other Methods
    A Laboratory Area
    If you enter www.csci.csusb.edu/dick/lab.html you can search my site for information but you may also be taking part in an experiment on ways to record and access documentation. I may monitor your call to improve the quality of the service.

    Comment Form

    Please delete the comments that do not apply to you and add another one line comment if you want to:

    Select to send your feedback to me.