UIT2201: CS & the IT Revolution
Project (Spring 2012)

(Milestone 1 Deadline: Thu, 16-Feb-2012, 23:59)
(Milestone 2 Deadline: Week of 13-Mar-2012, by appt)
(Milestone 3 Deadline: Thu, 12 April 2012, 23:59)

Update: Your time-slots for Project Demo: 2012-M3-Appt.txt


Project for UIT2201

Recent UIT2201 projects had mostly involved the Alice programming platform, Google Map meshups, Google gadgets, and Scratch (in 2010).

For this semester, the project for UIT2201 (25% of the course) will be based on the innovativeand fun programming paradigm Scratch that is designed to make it easy to create applications quickly and without a lot of pain. Working with Scratch does not involve the usual "coding style" of writing software -- since the software has been pre-programmed and allows users to just build applications using point-and-drag. You have already experienced this fun in the lectures and tutorials.

Students with prior strong programming experience can and should opt for doing some more interesting and that can contribute to UIT2201 in some meaningful way. Please discuss with me your proposals.


Project Ideas

In Scratch development, what is more important is the thinking process and design ideas involved in building up your cool applications or story-board. What do you want to do in your cool applications or story-board, who/what are the key "actors" in it, what's the story line, what is it that makes it cool, how to present it so that the cool idea is clearly demonstrated to the audience, and so on.

It is possible to develop really cool, innovative and fun applications with Scratch. You should go to the Scratch website to browse the multitude of wide-ranging and fascinating stuffs that others have developed. That will give you ideas on possible topics.

It will be highly preferred to have your application linked to your domain of study, but that is not compulsory.

On the other hand, if you prefer to, I have some UIT2201-related project topics that I like to see developed with Scratch. These projects will become teaching materials for future UIT2201 classes and also possible Outreach workshops.

Some "UIT2201-Related" Project Topics using Scratch:

  1. Using Scratch to demonstrate various algorithms covered in UIT2201 and beyond -- such as sorting, binary search, pattern matching, and so on.
  2. Using Scratch to demonstrate swarm intelligence (in AI) such as flocking behaviour.
  3. Using Scratch to demonstrate interesting fundamentals taught in UIT2201: network protocols, AI, etc.
  4. Using Scratch to simulate a Turing Machine.
  5. Using Scratch to demonstrate the building and "execution" of logic circuits, such as an n-bit adder or n-bit comparator.

Projects based on other ideas and software platforms:
Of course, you are NOT forced to use Scratch if you really don't like it. If you have other interesting project ideas that will fit with the aims of this module, please make a proposal to the instructor.

  • Projects done in Spring 2010: look here.



    Project Details and Milestones

    Team Formation and Teamwork: This is a team project and each team will consist of 2 members. Team formation will be discussed in class soon.

    Each project team should work on a simple initial project plan that should include such things as meeting schedule, division of labour, project risks and how to overcome them. (I expect each team to meet face-to-face at least three times to work on the project.) Some portion of the marks will be assigned to the teamwork aspect of this project.


    Milestone 1: Project Proposal

    You should form teams and choose topic (or choose topic and form group).
    Then, write a short "one page statement" (at most 1 page) on your chosen topic and a rough plan of action on how you will do the project.

    This is to be due by the deadline (given above). Submit to IVLE Workbin (UIT2201-M1 folder).

    Update: Confirmed team pairing is as follows: 2012-Teams.txt


    Milestone 2: Interim Project Review

    There will be a mid-project review for each project group done with the instructor. This will be scheduled on the week given above.
    (Email will be sent by the instructor to set up appt for this project review.)
    Your M2 Review Schedule -- here


    Milestone 3: Final Project Submission

    Final Project Deliverables: Your final project deliverables are as follows:

    Submssion of Project Deliverables:

    Your ProjectCD should be properly labelled with the following info: "UIT2201 Spring 2012 Project", Your-Application-Name, names of the team members, contact info (if appropriate).
    Please submit your ProjectCD to me within the same deadline.

    (I highly recommend that you also make a ProjectCD for yourself, for keepsake.)

    Please submit your final project report to both

    Final Project Demo: Schedule is here.


    IMPORTANT REMARK FOR ALL PROJECT REPORTS:


    UIT2201: CS & IT Revolution; (Spring 2012); A/P Leong HW