UIT2201: CS & the IT Revolution
Project (Fall 2014)

(Milestone 0 Deadline: Tue, 23-Sep-2014, (by email to LeongHW)
(Milestone 1 Deadline: Tue, 30-Sep-2014, 23:59)
(Milestone 2 Deadline: Fri, 24-Oct-2014, (by announcement)
(Milestone 3 Deadline: Wed, 12-Nov-2014, 17:00pm)
(Milestone 4: Project Showcase: Wed, 19-Nov-2014, @USP-TR1 (See details below))


Latest Update: Tentative Schedule for Project-Showcase is OUT. Check below.
Please email me for re-scheduling if you have problem with your assigned time-slots.


Project for UIT2201

The course project (25% of the course) for UIT2201 will be a team-based project (two students per team). Your team-mate can be anyone in the UIT2201 class, not necessarily from same tutorial group. The project will be based on the innovative and 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 will have experience with this fun platform in lectures / tutorials at the beginning of the course.

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.

[UIT2201 projects from the past also involved other programming platforms like Alice, Google Map meshups, Google gadgets, and Scratch (in 2010 and 2012).]


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 2013: look here.
  • Projects done in Fall 2013: look here.


    Project Details and Milestones

    Milestone 0: Team Formation and Teamwork:

    This is a team project and each team will consist of 2 members. Once you form your team, send email immediately to the instructor and get started on Milestone 1 (Project Proposal).

    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.

    Team pairing is as follows: 2014-Teams.txt


    Milestone 1: Project Proposal

    Once your team is formed, you should meet to brainstorm your topic for the project. Preferably, your project should be related to your major of study or something that you are passionate about. Then, write a short "one page statement" (1-2 pages) 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).


    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.)

    The Schedule for Fall-2014 Project-M2: || here (txt) ||


    Milestone 3: Final Project Submission

    Final Project Deliverables: Your final project are as follows:

    Submssion of Project Deliverables:

    Your ProjectCD should be properly labelled with the following info: "UIT2201 Fall 2013 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


    Milestone 4: Project Showcase

    The project presentation will be done in a "Project Showcase" during Study-Week. The purpose is to present the fruits of your labour to your peers and to the course instructor. Through the varied application / games / tools that you develop in your project, the whole class gets to witness what ITEM that you have developed in this class, and what it (Scratch or other programming platforms) can do with the skill-set you acquired in this class.

    You will also participate in Peer Grading of the projects of your peers. Join in the fun and learn about their projects as well.

    Details:


    IMPORTANT REMARK FOR ALL PROJECT REPORTS:


    UIT2201: CS & IT Revolution; (Fall 2014); A/P Leong HW