[My image] [Text Version] projects Thu Feb 10 18:47:33 PST 2011


    CSCI690 Project ideas

      PHP translation of a bash shell script

      Since the "system" command is now deemed insecure, one of my web pages has become disfunctional. Translate a parsing and rendering script from shell+sed+awk into PHP. Script reads marked up text and creates a fully formatted and hyperlinked web page.

      PSP Plugin for Eclipse

      Develop, install, and test a Plugin for the popular Eclipse integrated development environment that integrates PSP into our student's software development process. This project implements proposals that came from Paul Conrad's thesis in 2006.

      SEE3D Software Engineering Exploration in Three Dimensions

      Develop programs that translate source code into 3D virtual worlds that can be explored by a software engineer while developing software. Experiments with Temporal Maps -- a novel graphic notation for data, programs, protocols, grammars, etc..

      Dynamic Logos spoof scammers

      proof of concept. Show that a complex web site can protect it's users from scams by continuously changing a logo on all the pages and all the references to them. This can be combined with any web-based project.

      formatting a project report with no tears

      Develop XML DTDs + Web accessible tools for writing MS reports & theses. Use LAMP platform for preference. Output RTF or other printable formats acceptable to Graduate Studies. This project enhances the work done by Humaira Rahim.

      Java analyst

      documentation & calculation with data models: DFD with Data dictionary and process info, etc, ERD, multiplicity, plans CPM, volumes, ERD validation, normalization, ...

      Improve my Seminar Web pages

      Create an easy to administer and pleasant to use web site that records CSci dept seminars and presentations. The current prototype [ seminars/ ] has many defects. Some kind of simple content managment system would be good.

      Universal Gift Registry

      Enable some body preparing for any celebration: marriage, birth, 21st, graduation, etc. to record the gifts they would like, and for friends and relations to choose ones to buy. This could also have been used by victims of fire and flood to restock their houses.

      Intern assistant

      Develop a set of web based applications and a data base to help the Computer Science Dept run its internship program. It should enable students to propose an internship, faculty to review and improve the proposal, and the department to approve it. It should help the adviser and the student to communicate during the internship. It should also assist in the final assessment (presentation or report) and the accumulation of an archive of internships that have been completed.

      Formal Concept Analysis

      There is a new technique in discrete mathematics called "formal concept analysis." It shows how to analyze a context relating objects and attributes into a lattice of concepts that are implicit in the context. (1) implement a set of applets that would help people apply the algorithms from this theory to small abstract contexts. (2) Implement versions of the algorithms as applications that can handle large data bases. (3) develop and implement versions of the algorithm that are tuned to run on the parallel processing systems at CSci.CSUSB.

      Implement Web-based Tools for mathematics and logic

      I have a large collection of pages defining mathematical and formal logical ideas:
      that use the MATHS language I have invented.
    1. MATHS::= See http://cse.csusb.edu/dick/maths/

      The language needs better tools. Take one of these pages that mentions one or more algorithm and implement 1 or more applets that allows Internet users to carry out calculations based on algorithms mentioned in the page -- for small amounts of data.

      Add to my smaples of formal docuentation of languages and systems

      There are many samples [ samples/ ]

      Tiny Languages

      Implement 6 tiny languages for cs320/cs620 -- one for each paradigm: primitive, structured, object-oriented, modular, functional, declarative. The implementations could be either via compilers, interpreters, or a hibrid implementation. The underlying platform should be available in CSE.CSUSB labs and also to students.

      Symphony Page

      Explore the use of XML, CSS and java-script (AJAX) to improve the Unofficial Symphony page: [ symphony.html ]

      Master Mind and Cows and Bulls

      Develop Java Applet on a web page that applies a particular heuristic to the game of guessing a 4 digit number known to the user -- commonly known as <em>Cows and Bulls</em>. A variation of this game, played with colored pegs is called "Mastermind".


      Explore a Constraint Logic approach to playing the well known Minsweeper/MineHunt game.


      Redevelop my PICT picture drawing system(Circa 1971) as a Java Applet.

      Parnasian Displays

      Develop a software engineering tool that automatically manages and displays specifications and implementations in a form that allows simpler verification, inspection, review, and analysis of code and documentation.

      MATHS and XML

      Design a MATHS XML DTD and implement parser for MATHS -> XML. Also XML-> XHTML translator.

      Graphics and Digraphs

      Experiment with various ways of automatically displaying graphs. Integrate successful techniques into my MATHS language.

      AMAS Agile Mathematics Applied in Software

      I am willing to be on any committee where the project promises to have a formal or mathematical component such as extensive UML, or any ammount of symbolic Logic, Discrete or Continuous mathematics.

      File Locking in UNIX

      (1)Develop a Unix command that locks a file, executes some commands and then unlocks the file. (2)Modify the Linux Bourne Again Shell (bash) to include a new construct:
               with file; do commands; done
      At any time only one BASH script can lock a file at one time. When one locks it, others must wait for it to release the lock, to terminate, or to be interrupted.

    . . . . . . . . . ( end of section CSCI690 Project ideas) <<Contents | End>>

  1. CR::="Computer Reviews", [ http://www.reviews.com/ ] and [ browse_reviewers.cfm?reviewer_id=115728 ]