Other Information

Skip to end of metadata
Go to start of metadata

Other Information

Tool Resources

As a general principle, students can explore various tools available to help building thier projects. See this page for example tools.

Howeve, since this is a DB course, our focus is on databases. Hence, learning how to do hands-on SQL programming is very important. While we do not restrict what tools students can use, the tools must not mask interactions with databases. In other words, students need to know hands-on SQL programming and show actual SQL calls (ie. codes) in demos.  For example, PHP does not mask the interactions with databases as students still need to construct actual SQL commands.  On the other hand, tools such as Hibernate and Linq are not allowed.  With these tools, students do not need to write actual SQL commands to query the database (see here for some Hibernate examples and here for some Linq examples).

If you have any doubts about what tools to use, please discuss with Reza.

Subversion Related Information

You can find information related to subversion here:

https://agora.cs.illinois.edu/display/tsg/Subversion+Service#SubversionService-RequestingRepository

Computing Resources

We have provided mysql as database for your project development needs.  Web space is also provided for hosting your project.

Both the database and web space are hosted on EWS machines.  They have been shifted from old course CSIL servers to EWS for this course. Here is an http://www.ews.illinois.edu/overview on EWS facilities.

Database and web resources are accessible via a hosting platform software called cPanel. cPanel provides integrated access to MySQL, a webserver, php and file storage through a graphical interface. Read here for more information.

Login by going to http://accounts.cs.illinois.edu/projects and authenticating with your AD password.  You should then be redirected to the cPanel dashboard. 

If you cannot login or have any questions, please email Reza. We try our best to help you with your problems but course servers are maintained by EWS and TAs have no more access than students. In case of any problem with your account/... you can always contact userhelp@cs.illinois.edu  

Question: How can I develop a project using the EWS-provided cpanel? You can create a database in cpanel and add your teammates as users to this database.  Remember to grant them all the privileges.  As for the web development, you can request a group cpanel where your teammates all share the same login and password.  To request a group cpanel, email TSG at userhelp@cs.illinois.edu. 

Note: Currently the department doesn't provide an alternative way to upload your files to your public_html except through cPanel.  In other words, the department doesn't provide a means for you to use any FTP tools.  If you need to upload many files, you can zip them up and upload the zipped files using cPanel.  There's an extraction tool on cPanel that can unzip your files. 

Update: You can now have SSH access to cPanel project servers. All you have to do is to SSH to "projects.cs.illinois.edu" with your NetID and Active Directory password.

Tutorial Materials

Web programming examples:

1. HTML + CGI + C: The HTML code is example1.html (to be placed in the public_html directory). The C source code and executable is mult.c and mult (to be placed in the cgi-bin directory).

2. HTML + PHP: The HTML code is example2.html (to be placed in the public_html directory). The PHP code is mult.php (to be placed in the public_html directory). The cookie and session PHP codes are multCookie.php and session.php (to be placed in the public_html directory).

3. AJAX: The codes from the AJAX suggestion example are the following: suggest.html, clienthint.js, gethint.php (all to be placed in the public_html directory).

All the code can be found in the zipball: webprogramming-code.zip

Project Tutorial Session

There are tutorial sessions for students. These tutorial sessions are about using PHP and MySQL to build webapps.  As these sessions are quite hands-on, you should bring your laptop to the sessions.  These tutorial sessions will not be video recorded.  There are data, sample code, and a handout for the session. 

Project Track 1 Grading

Here is the breakdown of the course project grade.  We will be looking at how your project satisfies the requirements below.

Project Grading (100%):

  1. In time and complete submission for Stage 1: Functional Description and ER design (4%)
  2. In time and complete submission for Stage 2: Development Plan (3%)
  3. In time and complete submission for Stage 3: Setup development environment (3%)
  4. Demonstrate the following in Stage 4: Initial demo (25%):
    1. Having real data in the database (Pass=5%/Marginal=2%/Fail=0%)
    2. Show how to insert records to the database (Pass=5%/Fail=0%)
    3. Show how to update records (Pass=3%/Fail=0%)
    4. Show how to delete records (Pass=2%/Fail=0%)
    5. Show at least one query that searches the database and list or print the returned records (Pass=5%/Fail=0%)
    6. Having specific plan for the rest of the project and the two advanced functions (Pass=5%/Marginal=2%/Fail=0%)
  5. Demonstrate the following in Stage 5: Final Demo (45%):
    1. Basic Functions:
      1. Show how to insert/delete/update records to the database (Pass=3%/Fail=0%)
      2. Having real data in the system (Pass= 5%/Marginal=2%/Fail=0%) (If you rely on users to enter data into your system, your system must be up and running at least 1 week before the presentation)
      3. Show how to search the database and list or print returned results. You need to show a few different interesting queries over your database. One of the queries must involve join of multiple tables. (Pass=7%/Marginal=3%/Fail=0%)
    2. Advanced Functions:
      1.  function 1: (Pass=15%/Marginal=7%/Fail=0%)
      2.  function 2: (Pass=15%/Marginal=7%/Fail=0%)
  6. Final Report (15%)
    1. Deadline: the time of your demo
    2. Please create a page called "Final Report" in your project page.
    3. Your final report needs to include the following:
      1. Briefly describe what the project accomplished.
      2. Discuss the usefulness of your project, i.e. why is your project useful
      3. Discuss the data in your database
        1. Include your ER Diagram and Schema
        2. Briefly discuss where you collected the data and how you collected them
      4. Clearly list the functionalities in your project
      5. Explain one basic function
        1. Show the actual SQL call
        2. List and briefly explain the dataflow, i.e. the steps that occur between a user entering the data on the screen and the output that occurs
      6. Explain your two advanced functions and why they are considerd advanced
      7. Describe one technical challenge that the team encountered.  This should be sufficiently detailed such that another future team could use this as helpful advice if they were to start a similar project or were to maintain your project
      8. States if everything goes according to the plan and the designed specifications, if not, then why
      9. Describe the final division of labor.
  7. Demo Video (5%)
    1. Deadline: the time of your demo
    2. you need to prepare a 2-5min video introducing your project and walking through its goals, features, .... Please upload the videos to YouTube website with the description "University of Illinois at Urbana-Champaign - CS411- Spring 2012- Demo Project" (you can just record your screen while talking on the video and showing different features of your code. We don't expect a professional movie from you)
    3. You also need to put the video link in your project page

Project Track 2 Grading

Here is the breakdown of the survey project grade.  We will be looking at how your survey is written, as well as timing. The requirements are below.

Project Grading (100% + 5% extra credit):

  1. In time and complete submission for Stage 0: Survey Teams Formation (1%)
  2. In time and complete submission for Stage 1: Survey Proposal Submission (20%)
    1. All questions in the guideline are answered clearly and comprehensively. This will go to your introduction and general roadmap sections.
      1. Why you have chosen this topic, Why it is cool and hot, interesting, useful or important. What motivated you? (It can be personal research topic, highly discussed in the blogosphere, industry and research conferences, etc.). (4%)
      2. Are there any surveys on the same topic (make sure to do your homework, spend some time using your favorite search engine to figure out existing works) or related topics? What specific perspective they deliver? Whether it is a historical summary or summarization of state-of-the-art trends and recent improvements? Read them briefly and cite them in your proposal. (8%)
      3. Identify key researchers and universities and research labs that publish papers on this topic, provide top5-top10 list for each type of entity (researcher, university, research center, conferences and journals). (5%)
      4. Describe a tentative weekly plan. Make sure to follow it and we guarantee that you will make a stellar work at the end. This is proven by many years of practice. (1%)
      5. Argue on feasibility to finish the survey on selected topic. If you select to broad topic you might get lost. If you select too narrow or supernew topic you might not have enough papers to survey about. So, select something in the middle doable, yet solid. (2%)
  3. In time and complete submission for Stage 2: Survey Midterm Progress Draft Submission (30%)
    1. All sections of the paper are clearly defined and major text is there. (15%)
    2. Motivation for the survey is written and key challenges identified, as well as diversity from existing surveys, if any. (5%)
    3. References are provided in a spreadsheet of all relevant works with brief summary. (5%)
    4. References that are already in the text, should be properly cited at the end of the document. Use BibTex and LaTex. (3%)
    5. Satisfaction of your work calendar plan. (2%)
  4. FINAL: In time and complete submission for Stage 3: Survey Final Draft Submission (49% = 45% (survey) + 4% (comments), +5% extra credit)
    1. Comment on works of other students during 1-week period (4%)
    2. More than 50 references to papers from top venues (VLDB, SIGMOD, EDBT, etc.) (5%) 
    3. More than 100 references to papers from top venues (VLDB, SIGMOD, EDBT, etc.) (+5%) (extra credit)
    4. Text clarity and organization, research taxonomy. (15%)
    5. Uniqueness and novelty of the survey (10%)
    6. Lack of mathematical errors and akward statements. (2%)
    7. Coverage of demo systems and real world applications based on this technology. (3%)
    8. Conclusions and recommendations for future directions. (10%)
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.