Python Forum
Final Project (Databases, GUI, and Classes)
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Final Project (Databases, GUI, and Classes)
#1
I'm frankly lost on where to even start. The teacher has BARELY taught us how to structure databases using SQLite in Python and now she wants it to be a good chunk of the project? I think?
If someone could just give me a good starting point and/or a simplified version of the instructions, I'd very very much appreciate that. Here are the instructions:

Python Class Project
Overview:
This is the end project for the CSC 121 class. It is a large integrated program where you show the skills you have learned in in this course. The rubric at the end will be used for grading.
Overall Situation:
You work for a company that does IT projects. You have been instructed to write a program to help keep track of these operations and who is assigned to them for the manager. The manager also wants it in python, and to use a sqlite3 database, as well as being a GUI program
General Requirements
You must use python and SQLite3. This is to ensure that the project can be graded and database access is the same. Create a sqlite3 database called ITProjectsData in python. Store it in the same folder as your python code files.
Make sure to turn in your python files and this database you create.

Setup / Create Statements
Your project must have a program that creates the database with create statements for the following tables. Please create your own field names as ones in this description with spaces (like employee id ) are invalid field names because of the spaces.
Employee Table : employee id, first and last name fields, phone number and email address
Task or Job Table: Task id, customer name, IT Job description, price charged(must be Real), estimated hours
Assignments Table : Assignment id, employee id, Task id, , and completed (will be yes or no)
(5 points)
IMPORTANT: This does not have to be part of the GUI program. It can be a separate python script.
Setup / Insert Statements
Create Insert Statements which will add 5 records with sample data into the Employee Table, 5 records into the Task Table, and 10 records (you must have some Assignments for at least 4 of the 5 employees and the Assignments must include at least 3 of the 5 tasks so you have a mix of them in these 10 records) into the Assignments table.
If you want more than these 20 insert statements…by all means add them. You must represent at least 4 customers in the Assignments. But if you want to add extra records to make even more interesting reports…by all means do so.
(5 points)
IMPORTANT: This does not have to be part of the GUI program. It can be a separate python script, and can be part of the script creating the database
Setup / Drop Statements
This is a proof of concept prototype. So you will be creating the tables with your start test data several times. To do this you must be able to delete the tables that are currently there.
Create the Drop Statements which will Drop/delete the Employee, Task and Assignments tables.
(5 points)
IMPORTANT: This does not have to be part of the GUI program. It can be a separate python script, and can be the first part of the script creating the database if you want (so it drops the existing database, creates the new one, and inserts the test data. This is a common script to make to make a test database.)
Main Project / GUI Interface
Create a main screen Canvas with a logo image somewhere on the screen and controls (buttons, radio buttons, checkboxes and other controls) as you wish for the user to be able to work with the employees, Assignments, and tasks. It would be good to use a multi-line Text Area for the display of the records for the user. You can have multiple Canvas windows and multiple python files but the GUI interface must have controls to for the User to do these things successfully:
• Display Tasks (5 points)
• Display all completed tasks (10 points)
• Display all incomplete tasks (10 points)
• Display Employees (5 points)
• Display all tasks assigned to a user specified employee (10 points)
• New Customer (10 points)
• New Assignment (10 points)
• Change Assignment, usually marking Task as complete. (10 points)

Make sure to include Try/Catches around the code that makes database commands of course and give the user an appropriate message if there is a problem. Also include error handling so the user can’t make a new customer or Assignment with blank fields, or negative hours or prices (15 points)
Reply
#2
The sequence is in the directions. Start with the database. I bet you've already done some database programming so this should be a snap. Once you are sure the database is working, insert some records. Start with 1 for each table. Proceed from one step to the next until you are done.

All software development is a series of little steps. Because you are inexperienced you may run into some dead-ends in you first design. You must not let the fear of making mistakes prevent you from starting.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
Smile Final Projet - Credit Risk Rauchvant 3 2,444 Nov-18-2020, 03:21 PM
Last Post: Rauchvant
  Help please. Looping the same SQL query over different databases and combine them danlin123 3 2,095 Sep-23-2020, 02:31 PM
Last Post: danlin123
  Help needed, stuck at the final output extricate 0 1,542 Jun-20-2020, 05:35 AM
Last Post: extricate
  Final Project Help hyg71886 6 3,973 Feb-07-2019, 01:30 AM
Last Post: micseydel
  Trouble with edX Python Final sarah_mb_sues 11 13,769 Jun-19-2018, 10:36 AM
Last Post: cryomick
  Final problem Truman 4 4,029 Jan-22-2018, 11:42 PM
Last Post: Truman
  Framework Django duplicating objects in databases-table!? tavaresdavi677 1 3,671 Dec-12-2016, 07:43 PM
Last Post: nilamo

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020