Enhanced Entity-Relationship (EER) Piazza

76 阅读4分钟

Project Phase 1 
Due Sep 29 by 8:59pm
Points 100
Submitting a file upload
File Types pdf
Available Sep 2 at 9pm - Sep 29 at 8:59pm
Start Assignment
The first phase of the project deals with the Analysis and Specification. You should review the Project
Requirements Document (which will be released around the same time this assignment opens) that has
the system requirements and description of what you will be developing.  Please ask questions about the
requirements on Piazza in a private Team+Instructors post.
Essentially, anything Leo does in the lectures on Analysis and Design for the GTOnline project you
should do for your analysis and design of this project. There is also a sample submission available on
Canvas that will help guide you in creating your submission and shows mostly everything required for
this phase.  When in doubt, please refer to them.  If you still aren't sure, open a private
"Team+Instructors" note.  If your submission is missing an element that was present in the lectures or on
the sample submission, you will lose credit for what's missing, and "we weren't sure if you needed that"
will not be a valid reason for returning the points that were lost. 
Phase 1 Deliverables:

  1. Information Flow Diagram (IFD) (10%)
  2. Enhanced Entity-Relationship (EER) Diagram (40%)
    Surrogate keys 代 写Enhanced Entity-Relationship (EER) Piazza should not be used on the EER diagram in this phase.
    NO CREDIT is granted for your EER if it is auto-generated by any tool such as MySQL
    workbench, uses crows-feet notation, or deviates from the notation Leo uses in the lectures or the
    notation used in the textbook.
    Tools available to create your EER include: draw.io (www.draw.io/) , LucidCharts
    (www.lucidchart.com/pages/tour/…) , among others.
  3. A project report containing:
    Data Types (5%)
    Business Logic Constraints (logic which cannot be reflected in the EER model) (5%)
    Task Decomposition (TD): rules of thumb/oval diagrams- both single and decomposed (10%)
    Abstract Code (AC) pseudo-code: input validation/error handling, how to navigate between tasks
    (30%)
    The most weight for project grading is on the EER and AC, so make sure to put as much detail and effort
    into those items as possible.How You Should Work:
    Teams should use their official assigned GitHub Enterprise account for collaborating on team projects.
    Not utilizing GitHub may lead to a teammate earning a reduced project grade if there is no record of their
    contributions and their teammates communicate that they did not make any material contributions to the
    project.
    Login using your GaTech credentials to github.gatech.edu/ (github.gatech.edu/)  where
    your repository has been created for you with all your team members as collaborators.  (You should have
    also received an email from when you were added to your repo.) Once at your repo, you should clone it
    onto your workstation using either Git's clone command (git-scm.com/book/en/v1/…)
    or GitHub Desktop
    (desktop.github.com) - be aware that GT's GitHub does not allow access via SSH unless you are
    connected to the Georgia Tech VPN.
    The objective of this course is to learn all phases of relational database development and in order to do
    that, teams should work collaboratively, not separately. You should not say, "OK, I'll take the EER
    diagram, you go write the IFD, John can write up the Task Decomposition and Jane can take the
    formatting and constraints."  Rather, each member should each work on all parts of the project, all
    reviewing, all having input, all fully understanding each part of the design. That way all students learn all
    aspects of the project to help solidify the skills needed to be successful on the exams.  One way to
    ensure this is by the following steps:
  4. Create a directory called “Phase_1” in the team GitHub repository we created for your team (do this
    by committing any file in the directory called “Phase_1” to GitHub).
  5. As you work on phase 1, continue to commit and push the files to GT’s GitHub enterprise server.
  6. Please review the sample submission that is provided on Canvas. Your deliverables should be similar
    to those in the sample submission
    How and What To Submit:
    Convert all deliverables to a PDF format, and submit them as three files to this Canvas assignment:
  7. team#_p1_ifd.pdf - your IFD
  8. team#_p1_eer.pdf - your EER
  9. team#_p1_report.pdf - your project report
    (Replace the # with your full team number, so if you are Team001, files would be
    "team001_p1_ifd.pdf"…)
    Please review the sample submission that is posted on Canvas.  Your deliverables should be similar to
    those in the sample submission.  
    If you are unsure how to upload files to a Canvas assignment, please refer to this Canvas guide
    (community.canvaslms.com/t5/Student-… 1 Rubric (1)
    in-Canvas/ta-p/274) . Since this is a team assignment, any team member can make a submission on
    behalf of the entire team.  For more information, please refer to this Canvas guide
    (community.canvaslms.com/t5/Student-…)
    .  Your team's final submission will be graded, so please be sure all team members agree
    on what will be submitted. We will not grade previous submissions and will not consider any requests to
    do so.
    Preparing for Future Phases
    In this phase, you should not be concerned with implementation details such as what technology stack
    you want to build your project on. We DO want you to plan ahead so that your team can be prepared for
    the last phase, so we are providing these details now NOT so that you choose a stack while working on
    this phase, but in order to make an informed decision when the time comes to make that choice.
    We suggest using WAMP, WAPP, MAMP, MAPP (which means the combination of Mac, Windows,
    Apache, MySQL or PostgreSQL, and PHP v7, and can be downloaded as a package for either OS) but
    you are by no means limited to those. You are welcome to implement your system in any language or
    platform you wish (Python, Java, Ruby, .Net) subject to the caveat that you must write your own
    SQL and implement your own logic on the database. Use of ORM or ORM-like tools such as hibernate,
    query-by-example frameworks (like Power Query) and others which handle your database interaction
    (and even your schema design) are strictly prohibited.  Note: SQLite or MS Access is not allowed. A
    standalone, full featured relational DBMS is required for the project: teams are free to use PostgreSQL,
    MySQL, MS SQL Server, or even Oracle if desired. (Non-relational noSQL: Hadoop, Cassandra,
    MongoDB, etc. are not allowed. “Built-in” or application-hosted databases should not be used.  Nonrelational
    databases that utilize SQL as an interface are also not allowed.  Data warehouse-specific
    platforms, such as Snowflake or Teradata, should also be avoided.)
    As always, if you have questions, please post on Piazza to your “Team+Instructors” group.To

s Information Flow Diagram EER Diagram Data Types Constraints Task Decomposition Abstract Code

WX:codinghelp