IS Project
The Case
You are part of a development team that successfully delivered a relational data design to a client. (Read Corporate Programs, Part 1 for background.) The completed ERD is provided for your use, as if you had already completed Part 1. You may alter this design if needed, but it is recommended you don’t make significant changes.
Your task is given in Corporate Programs, Part 2. In brief, you are to make a working web application in Python. The application is to be connected to a live database.
Your clients have provided a set of sample inputs (ZIP).
Hints
You are provided a fully functional sample project, called “Sushi”. All of the code in the sample project is fully commented, and this site provides additional hints to help you understand it.
You are going to have to learn some new technologies on your own. (Welcome to the wonderful world of IT!) Use every resource at your disposal. You will find internet searches to be helpful (particularly StackOverflow).
Suggested milestones
This list of tasks is at a high level. You should create more specific task list in your early planning.
Consistent with Agile principles, do the most important tasks first (like data design!), and less important tasks last (CSS styles). Also consistent with Agile, you should get a minimal protype working as early as possible in the process. I suggest getting the Sushi Sample Project up and working, and then incrementally modify it.
- Day 1:
- Re-read case documents; determine what is in scope and what work is not in scope
- Get the sample code working
- Install Flask (may be pre-installed if you use IDLE)
- Complete Flask tutorial
- Study sample code, and be able to describe how it works
- Create work task list (“Agile backlog”)
- Prepare questions for the instructor
-
Create ERD
-
Day 2:
- Build database tables from ERD
- Write necessary SQL to create tables, read and edit data
- Build HTML mockups, including header, body, footer
- Build HTML
<form>mockups - Read Jinja tutorial
- Successfully parse bulk data (e.g., sample input files)
-
Get at least one full table/process working
-
Day 3:
- Get remaining tables/processes working
- Project should be 90% complete by end of day
- Debug working application
-
CSS styling
-
Day 4:
- Build presentation
- Practice application demo
Submit
Submit a single zip file containing everything you need to present and demo your project, as if you were submitting to a client, including:
- any PowerPoint files
- any documents or diagrams you made as part of your design process (as PDFs, please; no Visio files)
- all code (in a separate folder within your zip file)
These should be final versions of your files. No changes after submission. The zip file you submit must be the only resource you are permitted to use during your presentation.
Presentation
Plan on 20+ minutes total for your presentation (including questions). You may allocate your time as you wish, but a successful group starts with an introduction of the project justification and design process, then demos their application. It is not necessary (or desired) for you to walk through your code line by line. A working application is evidence of sufficient code.
After you are done presenting to “your client”, spend 3–4 minutes doing a brief retrospective for your instructor about your process, who did what parts, and what you learned from the project.
Expect questions throughout your project. Leave the last several minutes of your time to receive feedback on your project and presentation.
Your presentation schedule will be given via Canvas.