San Jose State University | CS 151 - OO Design Section 4 | Spring 2017

Group Project Rules

  1. 3-4 members per team—no exceptions.
  2. You can email me preferences for team members and projects by Tuesday, April 4. I assemble the teams and assign the projects.
  3. Each team makes a new repo on Github/Bitbucket and invites me and all the participants.
  4. Put all documentation in the Github/BitBucket Wiki
  5. Use the issue tracker for work assignments. Each task has a single owner.
  6. Each team is prepared to give a brief progress report in class on Monday, with every member present.
  7. Each team member submits an individual report each Sunday night in the project Wiki. Each report has this format:
    Week x
    ======
    Date time1-time2: What you worked on
    Date time3-time4: What you worked on
    ...
    Comments: 
    Total hours this week:
    Total hours on project:
  8. All project code is always on Git.
  9. There is a build script that builds the program, runs test cases, runs CheckStyle, and javadoc.
  10. It must build on my machine (and on yours).

Projects

You may choose from one of the following projects. All projects are based on the Violet UML editor whose source code can be found at http://horstmann.com/violet. (Just unzip the JAR file.)

To build the source code, you need Ant. You can install it in Linux by running

sudo apt-get install ant

Then simply run

ant

in the directory containing the build.xml file.

You can get an architectural overview of Violet in Chapter 8 of your textbook and at http://www.aosabook.org/en/violet.html.

FXViolet
Class and sequence diagrams with JavaFX
MobileViolet
Some way of doing some UML diagrams on an Android phone or tablet
TeamViolet
What if multiple people want to collaboratively edit a diagram? Commands are set to a server, which sends it to all participants, and the diagrams are kept in sync.
TextViolet
Use a text description to specify class and sequence diagram, similar to http://spinellis.gr/umlgraph, http://yuml.me, or https://www.websequencediagrams.com/.

Week 1 Goals

Week 2 Goals

Week 3 Goals

Week 4 Goals

Week 5 Goals