. Faculty Activities My latest CSUSB Faculty Activities Reports are .See http://csci.csusb.edu/dick/FAR2001.html and .See http://csci.csusb.edu/dick/FAR20030430.htm and cover September 1996-April 2003 .Open VITA This document was prepared using software based on my research. . Address etc Dr. Richard J. Botting, Department of Computer Science, California State University, 5500, State University Parkway, San Bernardino CA 92407 (Phone): (Voice Mail): USA-(909)-537-5327 (EMail): rbotting at CSUSB, edu. (Home Page): http://csci.csusb.edu/dick/home.html .See http://csci.csusb.edu/dick/home.html (Rank): Full Tenured Professor . Qualifications I have a Bachelors degree in Mathematics with Upper Second Class Honors(1968) and a Ph. D. in Computer Science(1971) from $Brunel University in England. From 1970 to 1978 I was a member of the faculty of the Computer Science Department at $Brunel University. From 1979 to 1982 I taught and developed structured analysis, structured system design, and program design methods at the Civil Service College, London, England. .Open Teaching . 1992-2003 .Table .Row Number Title Notes .Row CS121 Computer Technology & People .Item .See GE .See a .Row CS124 Exploring the Information Superhighway .Item .See GE .See a .See Web .Row CS125 BASIC Programming .Item .See GE .Row CS201 Computer Science I .Item .See Major .See Web .See a .Row CS202 Computer Science II .Item .See Major .See Web .See a .Row CS290 Ada, C, C++ .Item .See Web .See a .Row CS320 Programming Languages .Item .See Major .See Web .See a .Row CS330 Data Structures .Item .See Major .See Web .Row CS360 Systems Tools .Item .See Cert .See Distance Learning .See a .Row CS365 Systems Administration .Item .See Cert .See Web .See a .Row CS372 Computer Systems in Organizations .Item .See BA .See a .See Web .Row CS375 Requirments Analysis and Design .Item .See BA .See a .Row CS488 Ethics .Item .See Major .Row CS489 Senior Seminar .Item .See Major .Row CS505 Computability .Item .See Major .Row CS556 Formal Methods .Item .See Grad .See Web .See a .Row CS620 Programming Language Theory .Item .See Grad .See Web .Row CS656 Formal Methods .Item .See Grad .See Web .See a .Close.Table I also supervise MS theses, independent studies and interns. Notes .Set (a): I designed and implemented this course. (BA): Bachelor of Arts in Computer Systems (GE): Course in the General Education Program (Major): Course in the BS in Computer Science (Cert): Courses in the Certificate in Computers and Systems Administration (Grad): Courses in the Graduate Program (Web): These days most class have materials on my web sites: .See http://www/dick/teaching.html .As_is http://csci.csusb.edu/dick/teaching.html (Distance Learning): Courses placed on the web .See http://csci.csusb.edu/cs360/ .Close.Set . Sound-bites .Set Firm, Fair, but Friendly. Experience is the best teacher. Lazy professor, active student! Hi Tech = Hard Work. .Close.Set . Recent Innovations In 2003 I taught CSCI372 Computer Systems in Organizations for the first time having developed the course for the new $BA in Computer Systems. From 1999-2000 I pushed through the curriculum changes to include Formal Methods classes in the BS and MS degrees. I taught them for the first time in winter of 2002. As part of the Department's ROOT project I prepared a large number of UML handouts and changed the content and format of CS320 (Programming Languages) to include Object-Oriented Analysis and Design. The class uses an active learning rather than lecture/discussion. The students prepare lab reports on the Web. They carry out a group project where they design a new programming language and specify its syntax and semantics in BNF and the UML. This work has been presented at major international conferences (OOPSLA and SCI). I developed techniques for using the Web to get anonymous feedback from students -- the FEEDBACK'99 project below. . Previous Innovations As the founding chair I developed the first versions of all the classes in the major and certificate up to the middle 1980's. All computer science lecture rooms were equipped so that either a terminal or a networked computer could be used as an audio-visual aid by 1983. The rest of the campus provided similar facilities 16 years later. I've been using Electronic Mail for student work since the middle 1980's. This used the first modem-accessible system on campus. We also put up the first UNIX servers and laboratories at this time. In 1993 I helped recreate the Computer Science Certificate program. I developed two of the central courses in this program. In 1994 I proposed, defined, planned, developed, and pioneered the teaching of Internet skills and knowledge as a GE subject on campus. I put up first World Wide Web Pages on campus and created a special site to act as guides and visual aids in the CS124 Internet Class. This was praised in the student Newspaper in the Fall of 1995. I put all my teaching materials on the World Wide Web. It is easy, using the tools I have developed, to create electronic texts and visual aids. I want to move beyond this. For 5 years I have been experimenting with electronically mediated discussions in appropriate courses. In the Fall I attended the Active Learning Workshop offered by the Teaching Resource Center, CSUSB. I use some of these techniques in class. I am starting to develop ways to place these activities in the materials I make available on the World Wide Web. In Fall 1997, for the first time, I offered a class where students had no need to attend either the lecture/discussions or the laboratory sections. All the presentations, assigned work, discussion, materials, lab work, interaction etc. has been mediated by the World-Wide-Web rather than face-to-face. Only attendance at the final is required. THis has now been handed over as a package to others to teach. .Close Teaching .Open Service Activities . 2003-2003 Committees .Box Department Evaluation Committee (Chair) Department Undergraduate and graduate committess Seminar Committee Web Committer University BATS committee .Close.Box . 2002-2003 Service .Box CSCI Graduate Coordinator for Advising (January - August 2003) Department Graduate Committee (ex officio chair January - August 2003) Department Undergraduate (Curriculum) Committee University BATS committee .Close.Box . 2001-2002 Committees .Box Graduate Committee Undergraduate (Curriculum) Committee (Chair). Seminar Committee (Chair). .Close.Box . Previous Service Activities .Box Department Evaluation Committee. Graduate Committee Undergraduate (Curriculum) Committee (Chair). Sabbatical Leave Committee. .Close.Box + Faculty Seminar Series Coordinator 2000-2001 I was Network Administrator of the Computer Science UNIX Network from Fall, 1994 to Fall 2000. I presented some special sessions introducing the Internet to people in the WR&AR Center. I have acted as a consultant to the San Bernardino, Sun/Telegram Life Styles Team. I publish and maintain the "Recently Announced Pages" directory for the WWW. I have recently been commended for my Java documentation page. I advise the San Bernardino "Guthrie Memorial Music Library" on ways to use the WWW. I run the Unofficial Inland Symphony of San Bernardino page: .See http://www/dick/symphony.html Founding Chair of CSci Dept 1983-1989. As Chair I developed a series of computer laboratories and computerized lecture rooms in the Biology Building and the Physical Science Building. By 1985 I had started the first dial up student service on campus. This used donated equipment from the Digital Equipment Corporation, and was supported by a series of grants from the chancellor's office. The system was managed in a novel way by a team of student interns, under my leadership. I designed computer laboratories for the CS dept in what became University Hall and Jack Brown Hall. These plans were implemented by later chairs of the department. .Close Service Activities .Open Professional Growth Activities .Open Overview I am studying how people develop software. My central question is: Why are there such massive gaps between practice, teaching, and research? . Methods I have made a detailed study of the various methods that are (1)taught (2) advocated in research, and (3) in use. By September 1995 I had a bibliographic data base of more that 1500 papers and books on my old Powerbook 140 .See http://www/dick/pb140.gif It has grown to over 1900 items. I have translated this into hypertext on the Web. but it is too large to be accessed quickly and easily .See http://www/dick/bib.html. So I am supervising a Graduate project that will develop it into an efficient online client/server database. An early prototype can be found on my research page: .See http://www/dick/research.html#Lab . MATHS From 1971 to 1995 I focused on ways that computer science and mathematics can be used in producing software. I discovered that there was no simple way to do put mathematical statements into a document so that computers could test, interpret, and share them. I developed a prototype language to do this. I experimented with systems using the Internet. One became a tool that I use for preparing documents for my teaching and research. It was used for preparing this document. In 1997 started developing an experimental online interactive system for retrieving information from my data base of formal descriptions .See http://www/dick/research.html#Lab I submitted a research monograph on language to the Institute of Electrical and Electronic Engineers(IEEE) Computer Society Press in 1992. . Beyond Mathematics and Methods In 1995 I moved on from studying the use of computer science and mathematics in software development to showing how different market situations demand different methods. I presented this work at a department seminar. In 1996 I rewrote part of this as a paper on an economic model of software development for the mass market. This was presented at the International Conference on Software Engineering in April 1997. . Reviews etc I have been publishing an average of five voluntary reviews per year in `Computing Reviews` - "The Review Journal of the Association for Computing Machinery($ACM)". $ACM is the main professional society for computer scientists. "Computing Reviews" is the prime source of information on the materials published in the field. .See http://www.acm.org/reviews .See http://www.acm.org/reviews/Current.html I also do paid pre-publication reviews of computer science textbooks. I have been publishing letters and articles in IEEE Computing and IEEE Software magazines and presenting two or three seminars in the department's faculty seminar series per year. In 1996 the Software Engineering Transactions of the Institute of Electrical and Electronic Engineers(IEEE Trans SE) a short paper critiquing a formal model of the Object Modeling Technique(OMT). I've since been invited to review papers for the IEEE Trans SE. .Close Overview .Open Publications . 2005 Published "Teaching and Learning Ethics in Computer Science: Walking the Walk", ACM SIGCSE Bulletin "Inroads" V37 n1 (Mar 2005) pp342-346. Computer Review V46n3(March 2005) published my review #0503-0361 of "Comprehension of diagram syntax: an empirical study of entity relationship notations" Purchase H., Welland R., McGill M., Colpoys L. International Journal of Human-Computer Studies 61(2): 187-203, 2004. "On the co-evolution of SSADM and the UML", Chapter V (pages 134-151) in "Software Evolution with UML and XML" The Idea Group, Hershey PA & London UK 2005 ISBN 1-59140-462-2 . 2004 Published Computer Reviews V45n8(August 2004)published review #0408-0939 of "Clustering for Petri nets" By W. Keller, Theoretical Computer Science 308(1-3): 145-197, 2003. "Computer Reviews" V45n9 (September 2004) published my review (Review #0409-1085 ) of "Mutilated chessboard problem is exponentially hard for resolution" By Alekhnovich M. ( Theoretical Computer Science 310(1-3): 513-525, 2004). . 2003 Published On December 31st Computer Reviews published (online) my review of "Behavioral subtyping relations for active objects", by H Wehrheim, Formal Methods in System Design 23(2): 143-170, 2003. Online publication of review in Computer Reviews of "More Success and Failure Factors in Software Reuse" Menzies T., Di Stefano J., IEEE Transactions on Software Engineering 29(05): 474-477,2003 Published review #0310-1036 in Computer Reviews of T. Gardner "Inheritance Relationships for Disciplined Software Construction" Springer-Verlag London Uk 2002 Published review #0307-0653 in Computer Reviews of book "Extreme programming perspectives" by Succi, Marchesi Williams, and Wells published on Computer Reviews web site. Published review 0305-0466 in Computer Reviews of paper "Improving the scalability of the CORBA event service...." by K Ho & H. Leong (S P&E 32(5):417-441). Published review 0304-0311 in Computer Reviews of Ellen Gottesdiener's "Requirements by Collaboration". Published review #0301-0062 in Computer Reviews of paper "An automated method for distributed systems software based on model extraction", IEEE Trans SE, No 4(April 2002). Published review #0301-0108 in Computer Reviews of paper "A State-of-art survey on software merging", IEEE Trans SE, No 5(May 2002). . 2002 Published Published book review #0205-0250 in Computer Reviews (online and hardcopy) of "Branching Programs and Binary Decision Diagrams" by Ingo Wegener (SIAM 2000) Volume 43 No 5, (May 2002) Review of $ACM Computer Reviews item #33757: "Hyperauthorship: A Postmodern Perversion or Evidence of a Structural Shift in Scholarly Communication Practices?" by Blaise Cronin ( Journal of the American Society for Information Science and Technology, Vol. 52, No. 7 (2001), pgs. 558-569). Paper on Stochastic Models of Software Evolution in Volume I of Proc SCI'2002 . 2001 Published $ACM Computing Reviews 2001 Volume 42 Review 0103-0094 of "Software Product Lines: Experience and Research directions" edited by Patrick Donohoe (Kluwer Acad Pub, Norwell MA 2000) ISBN 0-79237-940-3 . 2000 Submitted Letter to the Communications of the ACM on democracy demanding open government source code. (No response) . 2000 Published Letter published by IEEE Software Magazine (Sep/Oct 2000 pp11) on Object-Oriented Analysis and Design. Joint paper on the ROOT project in Proceedings of the SCI'2000 Tampa Florida by Concepcion, Scroggins, and Botting. Letter published by IEEE Software Magazine (Mar/Apr 2000 pp8-9) on Object-Oriented Analysis and Design. $ACM Computing Reviews 2000 Volume 41 Review 0009-0517 of Sistla, Gyuris, & Emerson's Paper on symmetry-based model checking in ACM Trans Sofw Eng Methodolo V9n2 (Apr 2000) pp133-166 Review 0006-0410 of Krishnan & Kellner "Measuring Process Consistency: Implications for Reducing Software Defects", IEEE Trans Software Engineering, V25n6(Nov/Dec 1999)pp800-815. Review of Janne Ropponen & Kalle Lyytinen, "Components of Software Development Risk: How to address them? A Project Manager Survey", IEEE Trans Softw Eng V26n2(Feb 2000)pp98-112 ), Submitted June 21st 2000, published as CR0004-0298 in September 2000. Review CR 0003-0184 of "Creating High Performance Software Development Teams" by Frank P Ginac (Prentice Hall 2000) submitted April 12th 2000 published in March 2000 issue. Letter published by IEEE Magazine on Object-Oriented Analysis and Design( submitted November 1999) . 1999 Submitted Article submitted to the Communications of the ACM on democracy demanding open government source code. . 1999 Published Reply published in ACM SIGPLAN Notes(Dec 1999, Vol 34 no 12 p38) to comment on earlier note in SIGPLAN Notices. Note published by $ACM Special Interest Group on Program Languages SIGPLAN Notices V34n6(Jun 1999)pp82-83 Request for Comment published in ACM SIGSOFT Software Engineering Notes Vol 24 No 4(July 1999)page 4 $ACM Computing Reviews 1999 Volume 40 ( 7 reviews published) Review number 9912-0921 December of paper "Evaluating emerging software development technologies: Lessons learned from assessing aspect-oriented programming" by Murphy, Walker, and Baniassad (IEEE Trans SE-25n4(Jul 1999) Review Number 9910-0765 October of a Book by Watts Humphrey on the Team Software Process. Review Number 9909-0702 September of a Book by Felix Redmill on Evolutionary Delivery of Software Review Number 9907-0526 July of Paper in IEEE Trans Software Engineering Review Number 9906-0403 June of Book by Marc Hamilton of Software Development Review Number 9904-0230 April of Book by Ian Graham on Object-Oriented Software Development. Review Number 9902-0108 Febuary . 1999 Acknowledgments For reviewing draft of J M Morris and A Bunkenburg's Specificational Functions, TOPLAS Vol 21 No 3(May 1999)pp677-701 . 1998 Letter: "Earthquake Insurance", IEEE Computer Magazine, Vol31 No 2(Feb 1998)p115 $ACM Computing Reviews 1998 Volume 39 ( 5 published ) Review Number 9811-0894 November Review Number 9810-0801 October Review Number 9807-0523 July Review Number 9805-0281 May Review Number 9805-0337 May . 1997 Paper: `On the Economics of Mass-Marketed Software`, Proceedings of the 19th International Conference of Software Engineering, Boston, May 1997. .See http://www/dick/newbib.html#Botting97a Usenet message reprinted in the $ACM SIGSOFT `Software Engineering Notes Vol 22` No 2(Mar 1997)Page 11. $ACM Computing Reviews 1997 Volume 38 ( 6 published ) Review Number 9712-0996 December Review Number 9709-0695 September Review Number 9709-0633 September Review Number 9707-0519 July Review Number 9705-0324 May Review Number 9702-0118 February . 1996 Short Paper: `IEEE Transactions on Software Engineering. Vol 22`, No 12 (Dec 1996) page 911 `Comments on "A Formal Semantics for Object Model Diagrams"` $ACM Computing Reviews 1996 Volume 37 ( 5 published ) Review Number 9611-0907 November Review Number 9609-0695 September Review Number 9608-0552 August Review Number 9607-0502 July Review Number 9604-0234 May . 1995 $ACM Computing Reviews 1995 Volume 36( 5 published ) Review Number 9512-0963 December Review Number 9511-0843 November Review Number 9506-0430 June Review Number 9503-0137 March Review Number 9501-0006 January . 1994 Article: Confessions of a computing chameleon, IEEE Computer Magazine (Open Channel) Sep 1994 Letter: When More is Expected of Programmers, IEEE Software Magazine Page 9 Sep 1994 $ACM Computing Reviews 1994 Volume 35 ( 6 published) Review number 9412-0891 December Review number 9409-0637 September Review number 9408-0498 August Review number 9407-0447 July Review number 9405-0299 May Review number 9402-0062 February . 1993 Article: Do you want you program in a Glass, IEEE Computer Magazine (Open Channel) Sep 1993 $ACM Computing Reviews 1993 Volume 34 (4 published) Review number 9311-0880 November Review number 9310-0795 October Review number 9305-0296 May Review number 9305-0276 May . 1984-1989 1989 Theory & Practice of Software Engineering, (Abstract), Proc. ACM CSC 1989, St. Louis, KY, Feb 1989 1988 On the Analysis of Algorithms When the Data is Held on Disk, the Western Educational Computing Conference, November 1987 A Critique of Pure Functionalism, pp148-153 , Proc. Fourth Int'l Workshop on Software Specification and Design, April 1987, IEEE Catalog No. TH0181-8, LA CA. Regular Expressions, Relations and Software, Part I - Practice, Proc Western Educational Computing Conference, CECC, Nov 1987 Regular Expressions, Relations and Software, Part II - Theory, Proc Western Educational Computing Conference, CECC, Nov 1987 Letter: Object-oriented front-end, p3, IEEE Software, May 1987 1986 Into the Fourth Dimension: An Introduction to Dynamic Analysis and Design, SE Notes, 11, 2 pp36-48, Apr 1986, ACM SIG Software Engineering Novel Security Techniques for On-line Systems, Comm ACM Vol 29 No 5 pp 416-417, May 1986 1985 On Prototypes vs Mockups vs Breadboards (Letter), SE Notes, Jan 1985, ACM SIG Software Engineering An Eclectic Approach to Software Engineering, pp25-29, Proc Third Int'l Workshop on Software Specification and Design, Aug 1985 On the Evolution of Software for Faculty, Western Educational Computing Conference, Nov 1985 1984 FRED - The Friendly Editor, Western Educational Computing Conference, Nov 1984 Generalization - An Alternative to Error Messages, Western Educational Computing Conference, Nov 1984 . 1968-1983 .See http://www/dick/old_publications.html .Close Publications .Open Recent Presentations 2005 Paper on teaching Ethics "Walking the Walk" at SIGCSE'05 Paper on teaching software engineering at SIGCSE'05 2002 Paper on Stochastic Models of Software Evolution at SCI'2002 Chaired session on Methods and Methodology at SCI'2002 2000 Position paper on Active Learning workshop at OOPSLA'2000 .See http://www/dick/papers/rjb00a.ActiveROOT.html Chair of session on Object-Orientation at SCI'2000 Tampa Florida. .Open Local Presentations 2002 "A Solvable Stochastic Model of Debugging", Seminar at CSUSB and Colloquia at UC Santa Barbara .See http://csci.csusb.edu/dick/papers/rjb02a.hack.html 2001 The Objects are Restless, Report on OOPSLA'2000 as faculty seminar. .See http://csci.csusb.edu/dick/samples/OOPSLA2000.html 1998 Ten Years of Internet Teaching, 5th CSU Symposium on University Teaching(Feb 21st 1998) .See http://csci.csusb.edu/dick/papers/rjb98a.tenyears.html 1996 A Stochastic Model of Immature Program Debugging and Evolution (November 1996, Faculty seminar, CS dept.) Programmers Introduction to Java. CS Dept faculty Seminar(Video taped) 1995 Can One Size Fit All? Faculty seminar. .See http://csci.csusb.edu/dick/papers/rjb95b.one.size.html Relational Semantics of Program Languages, ( Faculty Seminar ) .See http://csci.csusb.edu/dick/papers/rjb95a.Relations.vs.Programs.html and .See http://csci.csusb.edu/dick/papers/rjb95a.semantics.html For a revised version of this: .See Relational Semantics 1994 Writing HTML. ( Faculty Seminar ) .See http://csci.csusb.edu/dick/papers/rjb94c.html.html Mosaic=FTP+WWW. ( Faculty Seminar ) .See http://csci.csusb.edu/dick/papers/rjb94b.mosaic.html Using UNIX in CS Classes. ( Faculty Seminar ) .See file://csci.csusb.edu/dick/papers/rjb94a.seminar.unix.class 1993 An Approach to teaching Data Structures(Demonstration class) How Far Can BNF Stretch?. ( Faculty Seminar ) .See file://csci.csusb.edu/dick/papers/rjb93a.xbnf.mth 1992 Temporal Maps: A Way to represent dynamics. Faculty seminar .See file://csci.csusb.edu/dick/papers/rjb92c.TEMPO Discrete Mathematics as a Basis for Software Engineering (MAA/SIAM Joint Spring Meeting Poster Session) .See file://csci.csusb.edu/dick/papers/rjb92b.discrete An Example of Discrete Mathematics in Action. Faculty seminar .See http://www/dick/papers/rjb9Xa.lift.html .Close Local Presentations .Close Recent Presentations .Open Work in Progress . Pages on the World Wide Web An experimental search tool to access formal and informal documentation: .See http://csci.csusb.edu/dick/research.html#Lab Pages listing sites of interest to software developers and researchers .See http://csci.csusb.edu/dick/se.www.sites.html and .See http://csci.csusb.edu/dick/java.www.sites.html Introduction to Java (This page was chosen "Best o' c.i.w.announce" Feb 22nd 1996) .See http://csci.csusb.edu/dick/samples/java.html Directories to Recent Pages on the World Wide Web( Web Site of the Week April 30th 1995). Monthly summaries back to March 1995. .See http://csci.csusb.edu/doc/www.sites.html A set of pages on the standardization of C++ .See http://csci.csusb.edu/dick/c++std Pages documenting computer languages, methods and research in software development. .See http://csci.csusb.edu/dick/research.html, .See http://csci.csusb.edu/dick/methods.html and .See http://csci.csusb.edu/dick/languages.html Drafts of half-a-dozen research papers can be found at http://csci.csusb.edu/dick/papers/ .See http://csci.csusb.edu/dick/papers/ Samples of mathematical documentation will be found in .See http://www/dick/samples/ . Projects I maintain a large bibliography of software development items using my $MATHS language as a tool: .See http://www/dick/newbib.mth that can be searched at http://csci.csusb.edu/dick/lab.html that is a prototype for a more complex search engine being developed by a masters student. .Open Books . Monograph on Mathematics as a Software Engineering Language. Submitted for publication by IEEE Computer Society in 1992. .See http://csci.csusb.edu/dick/monograph/ This monograph develops a mathematical software engineering language defined in .See http://csci.csusb.edu/dick/maths/ . Textbook on Software Engineering for Computer Scientists. A textbook on Software Engineering for Computer Scientists. Submitted, revised with co-author & editor, forgotten by publisher. I bought the copyright back, filed it awaiting revision, ... Not yet available .Close Books .Close Work in Progress .Close Professional Growth Activities .Open Memberships in Professional Societies Association of Computing Machinery, Member since 1983. Member of the Special Interest groups for Computer Science Education, and the Special Interest Group for Software Engineering. Associate member of the Computer Society of the Institute of Electrical and Electronic Engineers(CS of IEEE). Also member of two or three Technical Committees of the CS of IEEE. .Close Memberships .Open Notes ACM::=http://www.acm.org, ACM::abbreviation="Association for Computing Machinery", Brunel::=http://www2.brunel.ac.uk:8080/, "The University of West London", a small British university, named after the Great Victorian Engineer. .Close Notes .Close VITA