Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Home Topics Titles Quotes Blog Featured Help
Richard John Botting
California State University
San Bernardino, California

Richard Botting’s research focuses on the theory and practice of software development. He wrote his first program (solving a quadratic equation) while still a schoolboy in the 1950s. His search for better methods started when he worked as a scientific programmer at Imperial Chemical Industries in the 1960s. In turn, he has been agile, formal, modular, structured, data driven, dynamic, functional, incremental, and object oriented.

Richard earned a PhD in Computer Science (1971) and a B. Tech. in Applied Mathematics (1968) at Brunel University (UK). His PhD thesis explored the fundamental algorithms of computer graphics. Richard joined the faculty of the Computer Science Department at Brunel University in 1970. He researched structured methods and tools. In 1978, he moved to the British Civil Service College to learn Michael Jackson’s methods. He taught about the systems development method (SDM), and helped develop the structured systems analysis and design methodology (SSADM).

In 1981, Richard moved to California State University, San Bernardino. He founded its computer science department in 1982, and was its first chair. He pioneered using computers in teaching in the 1980s, and using the Web in teaching in the 1990s. He started by experimenting with rapid prototyping and evolutionary delivery to make tools for his students. He is in the fifth and eighth editions of Who’s who among America’s teachers, after being nominated for the campus’ outstanding teacher reward. Richard serves on many committees.

From 1996 to 2001, he was the network administrator for the computer science department. Currently, he gives seminars introducing new technologies. In the 2005 series, he initiated the move from UML1 to UML2. He also presents papers at national and international conferences. Recent topics have been the evolution of software, and ethical ways to teach professional ethics. He is a reviewer for many conferences, journals, and publishers.

He developed a documentation language that included discrete mathematics, logic, and proofs, and created a translator into Hypertext Markup Language (HTML). He now uses this in teaching and to maintain a searchable Web site on software development ( This covers people, notations, tools, methods, processes, languages, logics, and mathematics. The site has notes and links on every topic from "agility" to "Z," and a growing bibliography of at least 3,000 publications. It has specifications and tutorials for many languages, including ML, Java, unified modeling language (UML), and PHP: hypertext preprocessor (PHP). He records his current interests and activities in a blog on his site.

Richard lives in San Bernardino, California, and acts as system administrator for his wife’s Macintosh. His interests include music, books, birds, and classic movies.


 Numerical P systems with migrating variables
Zhang Z., Wu T., Păun A., Pan L.  Theoretical Computer Science 641(C): 85-108, 2016. Type: Article

P systems are a model of computation inspired by biology. A P system is a theory of cells and their biochemistry. It has simple programs distributed over a hierarchical set of membranes. Each membrane has a dynamic mix of chemicals. Each program m...


Optimising the ProB model checker for B using partial order reduction
Dobrikov I., Leuschel M.  Formal Aspects of Computing 28(2): 295-323, 2016. Type: Article

Model checking is a way to see if a design meets requirements. It starts with a model that abstracts how events affect a system. Then, the designers formulate a required behavior, for example, that something will never happen. The checker then sea...


Non-recursive trade-offs between two-dimensional automata and grammars
Průša D.  Theoretical Computer Science 610, Part A, 121-132, 2016. Type: Article

All computer scientists should be familiar with the theory of one-dimensional strings including the automata that can recognize them and the grammars that generate them. But the two-dimensional version is terra incognita to many, and wildly differ...


Model driven development of business applications: a practitioner’s perspective
Kulkarni V.  ICSE 2016 (Companion to the Proceedings of the 38th International Conference on Software Engineering, Austin, TX,  May 14-22, 2016) 260-269, 2016. Type: Proceedings

If you invent a better software development paradigm, nobody will beat a pathway to your door. You may have to spend years tuning it to show that it works. For example, this paper describes a ten-year project to see how model-driven engineering (M...


On the techniques we create, the tools we build, and their misalignments: a study of KLEE
Rizzi E., Elbaum S., Dwyer M.  ICSE 2016 (Proceedings of the 38th International Conference on Software Engineering, Austin, TX,  May 14-22, 2016) 132-143, 2016. Type: Proceedings

Software maintenance research seems to gets no respect and it is a minor miracle that the academic publish-or-perish system produced the data in this paper. This data indicates that ignoring maintenance distorts some academic research. The authors...


Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright © 2000-2017 ThinkLoud, Inc.
Terms of Use
| Privacy Policy