Group Project

 

As you can see, the group project is a very important aspect in determining your grade. Typically, teams consisting of 4 to 6 students will be formed, and suggested topics for the group project will be handed out as the semester progresses. You are free to choose your own topics, as long as the instructor approves each project topic and its scope.

 

I encourage you to start thinking about (as soon as possible)

  • Who you would like to team up with
  • Some candidate topics that you would like to work on (as a suggestion, consult professor(s) from your department majors to see if they have a need for a 6-week scope project).
  • Team captain (chosen on a volunteer basis with full team consensus)
  • Emails, Phone Numbers, Weekly meeting schedules for the team

.

Feel free to discuss any ideas with the instructor at any time.

Sample cs327e Group Project Reports from Previous Semesters

 

Mandatory Reading

You must read the following sections from Dr. Debra Richardson’s URL:

http://www.ics.uci.edu/~djr/classes/ics125/project.html#coordination

  • Team Work
  • Cost and Benefits of doing a Group Project

Most of what is said in these sections is also applicable for this course.

 

Project Phases

 

The project grade (for all teams) is broken up as follows, with percentages:

 

Project Phase

% Of total class grade

1

Proposal

2%

2

Logical Model

6%

3

DDL

4%

4

Team Grade

2%

5

PowerPoint Presentation

4%

6

Final Report

6%

7

Demo

6%

 

Each of these phases is described below.

Project Phase 1: Proposal

As the semester progresses, each team will need to fill up the following table:

 

Team #

Team Members

Captain

Group Project Description

Team Name

1

Alyssa Reinhart, Boat Charoensombud, Courtney Norris, Gautam Sapre, Jacob Casiano, Nicholas Robinson

Nicholas Robinson

Database for a coffee house (one of our group members is going to be opening a coffee house)

Team Caffeine

2

Alex Blackmur, Eric Seufert, Keith Wagner, Ben Tillman, Michael Johnson, Justin Burke, Sheng Ma

 

Alex Blackmur

We plan to make a database of all Academy Award nominees, and winners and the related information for each movie, since the inception of the academy awards.

Team Friendship

3

Amanda Pasquali, Sean Fitzgerald, Drennan Travers Fuller, Usman Moon, David Herlambang, Brian Kachmar

Amanda Pasquali

Amanda's Biomedical Engineering professor, Dr. Richards-Kortum, is conducting a research project with her BME 301 class to determine how students learn and what activities help them learn better.  We will be designing a database to keep track of student participation data that is recorded for each of Dr. Richards-Kortum's class lectures.

DBMS Dawgs

4

Carlee Patterson, Chris Shaffer, Erik Stark,

Michael Donley, Shatayu Bhattacharyya (aka "Shy"), Otis Tucker

 

Carlee Patterson

Team OUTCAS intends to design and create a database that allows maintenance of information on chemicals used in an Organic chemistry research lab here on the UT campus. Key entities are chemical bottles with varying attributes such as bottle size, CAS number, shelf location within lab and relationships to other chemicals such as reactivity.

OUTCAS

5

David Grau, Aaron Richardson, Junita Sari, Hong Tran, Jochen Teizer, Mustansir Abbas

David Grau

Integration of construction data for improving project analysis and control

Project Control

6

Kaitian Wang, Dennis Nye, David Lee Griffith, Charles Knight, Sami Khan

 

Kaitian Wang

Dynamic schema user management

Team 420

7

Dan Katz, Greg Carter, Long Le, Andrew Timm, Drew Bradford, Shirley Truong

Dan Katz

“What’s for Dinner” (A recipe database with meal planning capabilities and the option to print out organized and logical shopping lists)

E-culinar

 

The Project Proposal is a 1-page MS-Word document that highlights:

  • Name of team members (along with team captain)
  • Team Name
  • Project Topic
  • Need/Purpose for doing this project
  • The audience (i.e. users) of the project who will benefit the most
  • At least 5 salient features of this project/system to be built
  • Optionally, requirements (as gathered from the users)
  • Optionally, assumptions, constraints, and functional dependencies

 

The instructor will then review this project proposal. This proposal is also the starting point for the Project Report to be submitted at the end of the course.

 

Project Proposal One-on-One review with the instructor

 

Each team will get an opportunity to meet with the instructor for ~ 30 minutes. Along with the project proposal, all constraints, assumptions, functional dependencies will be reviewed in order to attempt defining what part of the “real world” this project is going to model. Be prepared to ask as many questions as you can. Also, write down, as many requirements from your users that you think would be pertinent for the project.

 

Time Slots:

Each team captain needs to send an email to the instructor, signing up for the appropriate timings (on a first come first serve basis)

 

Slot #

Date

Time

Team Name

1

2004-03-12

08:00am – 08:20am

Project Control

2

2004-03-12

08:20am – 08:40am

Team 420

3

2004-03-12

08:40am – 09:00am

Team Friendship

4

2004-03-12

09:00am – 09:20am

OUTCAS

5

2004-03-12

09:20am – 09:40am

Team Caffeine

6

2004-03-12

09:40am – 10:00am

E-culinar

7

2004-03-12

10:00am – 10:20am

DBMS Dawgs

NOTE: All meetings will take place in the instructor’s office.

 

Project Phase 2: Logical Model

This phase of the project will account for 6% of the course. As part of the deliverables, I expect

  • Project Report (in MS-Word format)
  • ER diagram

 

The Project Report must include

a)      The project proposal that you submitted earlier, with any modifications. This must include things that you are going to deliver as part of this project as well as, things that you are NOT going to deliver as part of this project, and maybe flag them as future enhancements. I.e. Phase II etc. You do want to show that you have thought through some of the issues beyond the project, but in interest of time, you may not be able to achieve those.

 

b)      All functional dependencies. The schema must be in at least 3NF, otherwise, explicit reasons need to be stated as to why your schema is not in 3NF. Preferably, submit functional dependency diagrams similar to lab2.

 

c)      Some description of application interfaces (UI screens etc.)-Not necessarily complete.

 

d)      Some description of Work Flow for the intended audience. (Use cases)-not necessarily complete. Work Flow includes the UI screens, including the order in which a user will navigate through the screens to achieve a certain task. Each such “navigation path” is deemed a use case. E.g. “Search for a book by title on www.amazon.com” is a use case that probably comprises of 3 or 4 UI screens (in some particular order). “Buy a book on www.amazon.com” is another example of a use case.

 

The ER diagram must include

a)      Entities, Relationships (along with appropriate cardinalities), Optional / Mandatory, Weak / Strong entities, Attributes, RI (Referential Integrity) definitions i.e. PK (Primary Key) and FK (Foreign Key) attributes need to be clearly labeled. Use IDEF1X notation if possible, otherwise Extended ER notation.

 

No programming language code is required to be submitted; neither is any SQL code required.

 

Next Steps:

 

  • Start thinking of “actions” required on each entity. These actions will dictate your stored procedure and trigger definitions.
  • Stored Procedures and Triggers are required to implement business rules, constraints, and assumptions.
  • For the “Physical”, start thinking about data types.
  • Application Logic, and programming language, along with database connectivity.
  • Distributing above work/Implementation Strategy among team members.

 

Hence, this will require the group to be split up in essentially 3 roles:

A) Role Front-End Developers: Responsibility includes

  • Programming language selection,
  • Work flow implementation of UI screens, and look and feel of the application from end-user perspective
  • Connectivity to database,
  • Specifying the “headers” of stored procedures needed from the Role B) folks.
  • Determining display of data on screen after invocation of stored procedures.

B) Role Business Logic Developers: Responsibility includes

  • Providing stored procedures headers to the Role A) folks,
  • Work with Role C) folks in coming up with the “body” of the stored procedures,
  • Advising Role C) folks on requirements coming from Role A) folks

C) Role Database Schema Implementors: Responsibility includes

  • Converting the logical ERWin diagram into physical.
  • Coming up with conventions for table/view and column names,
  • Referential Integrity specifications,
  • All the DDL associated with CREATE and INSERT statements,
  • Specification of data types, lengths, defaults for various columns.
  • Communicating the physical schema to Role B) folks..

 

Project Phase 3: DDL

This step consists of submitting all the SQL statements required to

  • Create tables
  • Create views
  • Create referential integrity
  • Create indexes (optional)
  • Create users (optional)
  • Create privileges (optional)
  • Create stored procedures
  • Create triggers (optional)

Any other settings required for transforming the logical model into the physical.

 

From the above, the required DDL are

  • Create tables
  • Create views
  • Create referential integrity (PK, FK, etc.)
  • Create stored procedures (only the header and not the SQL statements i.e. body contained in it).

For example, if your stored procedure looks like

 

CREATE PROCEDURE titles_sum @TITLE varchar (40) = '%', @SUM money OUTPUT

AS

BEGIN

SELECT 'Title Name' = title

FROM titles

WHERE title LIKE @TITLE

SELECT @SUM = SUM (price)

FROM titles

WHERE title LIKE @TITLE

END

 

Then, what you need to submit is just the “header” viz.

 

CREATE PROCEDURE titles_sum @TITLE varchar (40) = '%', @SUM money OUTPUT

 

With some English description of what this procedure is supposed to do.

 

 

The rest of the DDL is optional, but dependent on your project. For example, if your project requires creating users, and privileges, then submit the DDL for doing so. Similarly, for triggers, submit only the headers, and not the body containing SQL statements.

 

For the project, any INDEXES will be considered for bonus points.

Project Phase 4: Team Grade

Each group member will be required to grade his or her respective team members (excluding themselves) on the following criteria:

 

  • Participation
  • Completion of tasks on time
  • Attitude
  • Any other comments/mutually agreed upon criteria

 

These criteria (and any more) will be discussed in the first day of class.

Each member will submit a cumulative score (out of 100) for their respective team members and mail them to me confidentially.

Project Phase 5: PowerPoint Presentation

In the last couple of weeks of the course, there will be PowerPoint presentations by each team. Each team will prepare no more than 5 or 6 slides, and present the topic to the rest of the class in a 10-minute presentation, followed by 5 minutes of Q&A.

 

Email to the instructor, the electronic copy of the PowerPoint presentation with the following 5/6 slides:

  • Title of Project, Team members
  • Introduction/Purpose/Need/Functionality (Not all of these need to be included)
  • ER Diagram (Logical)
  • UI screen shots
  • Conclusions/Problems encountered in implementation/Team roles/task distributions (Not all of these need to be included)
  • Future Suggestions/Lessons Learned

 

NOTE: You are free to do more slides, as long as you can do the presentation in 15 minutes.

 

There will be presentations in this class (15 minutes each), with question/answers. Each team must decide who (all) is/are going to present.

The class will start at 8.30 a.m. promptly.

 

Attendance is required/mandatory during ALL presentations. If you miss these classes, your whole team will be penalized for some portion of the project.

 

Each team captain needs to email the instructor as to when his or her team would like to present.

 

Presentation time slots:

Slot #

Date

Time

Team Name

1

2004-04-26

8.45am

Team 420

2

2004-04-26

9.00am

Team Caffeine

3

2004-04-26

9.15am

e-culinar

4

2004-04-26

9.30am

Team Friendship

5

2004-04-30

8.45am

OUTCAS

6

2004-04-30

9.00am

Project Control

7

2004-04-30

9.15am

DBMS Dawgs

 

Project Phase 6: Final Report

Also, on the due date, each team will submit a project report (in electronic, preferably MS-Word for Windows format, and print format) outlining:

  • The purpose of the project, the audience
  • The team members and their roles
  • Assumptions/Constraints/Requirements going into the design phase (see chapters 6, 7, & 8 for guidance)
  • Different phases of the database design
  • Hardware & Software used to implement the project
  • PowerPoint presentation, if any
  • Source+SQL+Modelling code, including all the DDL
  • Table/View/Procedures/Triggers definitions
  • Any other information relevant to running/executing the project on a system

 

Bound copy of project report must be brought and submitted in class on the due date. In addition, an electronic copy needs to be emailed to the instructor.

Project Phase 7: Demo

In addition to the presentation, the team will provide a live demo in 10 minutes, followed by 5 minutes of Q&A. All demos will take place in the lab.

The instructor and/or the TA at the end of the course will test the project LIVE. During the team demo, all team members of the team giving the demo are required to attend. If you miss this class, your whole team will be penalized for some portion of the project. The attendance of the rest is optional. If you have your demo on laptops, make sure you get it to the lab.

 

Each team captain needs to email the instructor as to when his or her team would like to give the demo.

 

Demo time slots:

Slot #

Date

Time

Team Name

1

2004-04-30

10.00am

 

2

2004-04-30

10.15am

 

3

2004-04-30

10.30am

 

4

2004-05-03

9.05am

OUTCAS

5

2004-05-03

9.20am

DBMS Dawgs

6

2004-05-03

9.35am

Project Control

7

2004-05-03

9.50am

Team Caffeine

8

2004-05-03

10.05am

Team Friendship

9

2004-05-03

10.20am

e-culinar

10

2004-05-03

10.35am

Team 420

 

Project Grade Calculation

The grade on the project will be determined by

§         Submitted Project Report

§         Team members grading each other

§         Scope/Depth/Features of DBMS etc. of project

§         Design of the project

§         Implementation of the project

§         End of class presentation and LIVE demo

§         Electronic copy of the project

§         Comments in Source+SQL+Modelling code+GUI code

§         Submitted Project Proposal

§         Submitted Logical Model

§         Submitted DDL

 

Last Updated: 4/21/2004 9:06:17 AM