View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Summer 2006 Milestone 2

For the second group project milestone, you will be doing the object-oriented analysis (with CRC cards and Scenarios) for this semester's project—Digital Logic Workbench. You will also turn in a user description and a user interface mock-up.

Digital Logic Workbench

You are going to create a drag-and-drop system for someone to create logic circuits. Your system should support common logic gates (NOT, AND, OR, NOR, NAND, etc.). You should also have some flexibility on the number of inputs. So, it is possible to have an AND gate that takes in three inputs and outputs the logical AND of those. In addition to gates, you should support simple memory circuits through flip-flops and a clock (at minimum, you should have a D flip-flop, that allows you to take in a value and store it for one clock cycle). To allow the interface to be interactive, you should allow for simple graphical inputs and outputs (switches and indicators for true and false). Your user should be able to connect gates to one another through the GUI. Your interface should also stop the user from making logical mistakes, like tying two outputs together. To get some inspiration, you may want to check out LogicWorks, a sophisticated digital logic workbench.

User Description / User Interface Mock-up

One of the learning goals for this class is that you should consider the needs of the user of a system when you are designing a system. To give you some flexibility, you get to choose that user. As long as the user you choose might actually use a Digital Logic Workbench, they are an appropriate choice. If you have any questions about this, talk to the TA or the instructor about it.

We expect you to make design decisions based on the user. For instance, how are inputs represented? On or off? True or false? 0 or 1? How you answer this question depends on your user. When you demonstrate your product in Milestone 4, you should be able to talk about why the design decisions you made are correct for your user. In order to be informed by your choice of user, you need to be specific about the user. So, you will create a User Description. Write a paragraph (4-7 sentences) about who you intend to use this software and what you think would be important for that person. This is a critical decision that should drive your design. Your team needs to be in agreement on the choice of user, so don't delegate this to one group member.

Another thing to consider is how you want your final product to look and how the user is supposed to interact with it. So, we want you to create a User Interface Mock-up. This can be as simple as a hand-drawn screenshot of what your interface will look like and some notes about how the user engages the system. There's no need to make it fancy; it's much more important that it is a reasonable design and that your group is in agreement on it. Here's a suggestion of how you can create this. 1) Draw the interface on a whiteboard with your entire team there. Argue about where things should go, what should be included, how the user interacts, etc. 2) Once you have settled on a design, polish the drawing on the whiteboard. 3) Take a snapshot with a digital camera, print it out, and turn that in.

Your UI Mock-up will be evaluated by how thought out it is, rather than how slick it looks. So, going low-end (hand-drawings or whiteboard pictures) is fine. Also, you are not locked into your UI. We realize that your design will evolve, based on your better understanding of the problem and what your development system will allow you to do. So, your eventual design will never be graded by how closely it resembles your mock-up. Ideally, you did a good job with the mock-up and it can guide your team as you implement your design. That's ultimately what you should aim for.

Check List of Things to Complete

  1. CRC Cards and Scenarios
  2. User Description / User Interface Mock-up
  3. Turn everything in on the due date in class; make sure that your documents are marked with your name and bound together. The beginning of the class is the due time.
  4. Get feedback from the TA (mandatory)

Grading Criteria

Post Questions to the Newsgroup

Links to this Page