Code Monkey home page Code Monkey logo

cs327e-wcdb's People

Contributors

ajl2265 avatar geosmon avatar hjh558 avatar taylor4484 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

danvau7

cs327e-wcdb's Issues

Databases

https://piazza.com/class#spring2013/cs327e/174

Here are my thoughts about tables. You can't just have 3 tables. You have to have extra tables to deal with the multiplicity of certain data values (locations, crisis/people/org types, etc)

Downing suggests using joining tables, which is essentially the same thing.

Merging Groups' Data

Is it too early to be annoyed by other group's data/IDs?

Cause I am.

It is not okay for them to only include pictures and a person's name and call that "research"

Log

Create a log of the commits. Push frequently.

WCDB1.log

(already in makefile, just need to run "make log")

Adapt the import/export facility to the new MySQL schema.

The import facility must import into the MySQL DB. The export facility must export from the MySQL DB.

The import facility must be modified to handle the merging of data. This is where it's crucial to have arrived at a consensus on the IDs of the crises, people, and organizations. There is no right or wrong way to do this. Come up with the best design that you can and be sure to documnent it. Import/export the data of all of the other groups.

Create a critique

Create a critique of your final project by answering the following questions:
What did we do well?
What did we learn?
What can we do better?
What puzzles us?

People, Crises, and Organizations ID's

Could we put all of our ID's into one Issue for quick reference? It's time consuming to look up every event that is associated with my data and enter it into my XML

Here are mine:
American Red Cross AR1881
Mexican Government MG1810
Mexican Drug War MD2006
Vietnam War VW1975

Invalid XML

File: hjh558Run.in.xml
Invalid XML

Do not include "" around content in elements

VALID: <element attribute="value">Data</element>
INVALID: <element attribute="value> "Data" </element>

Contact Info Review

Please review your contact information below:

REDACTED
Comment corrections or "OK"

I'll be creating an email distro list such that we can email 1 address and it go to everyone

Invalid XML

File: PeopleXML
Invalid XML

Do not include "" around content in elements

VALID: <element attribute="value">Data</element>
INVALID: <element attribute="value> "Data" </element>

Git Repository

Worth 5pts.

Set up a private Git repository at GitHub, named cs327e-wcb.

Invite the grader to your repository. Commit at least 5 times. Commit once for each bug or feature.

Update your instances

Chosen schema :
https://piazza.com/class#spring2013/cs327e/150

Save it to your computer, do your new instances, validate it, and then push to the team repo (same as last time).


Change ONLY YOUR assigned items (in this file, keeping the structure it already has) and then push the updated file back into the repo.

Validation command on the command line, validate this temporary file using xmllint:
xmllint --noout -schema NewSchema.xsd tempInstance.xml

Once your instances are valid, copy and paste them into the taylor-WCDB1.xml file, make sure you overwrite the old instances - your only!

Commit your changes to the taylor-WCDB.xml file and push to the repo.

XML Schema/Instance

Worth 15 pts.

XML Schema/Instance
Create a MySQL schema.
Push and pull the schema and instance to and from the grader's repository.

.Prepend - to the file names at GitHub (i.e. foo-WCDB2.xml and foo-WCDB2.xsd.xml).

File names:
WCDB2.xml
WCDB2.xsd.xml

Unit Tests

Worth 15pts.

Write at least 3 unit tests for each function. Tests corner cases and failure cases. Name tests logically. Push and pull the unit tests to and from the grader's repository.

Reach consensus on the unit tests.

foo-TestWCDB1.py
foo-TestWCDB1.py.out

Implimentation

Worth 20pts.

Use assert to check pre-conditions, post-conditions, argument validity, return-value validity, and invariants.

Worry about this last, but program should run as fast as possible and use as little memory as possible.

Acceptance Tests

Worth 15pts.

Create at least 10 acceptance tests. Tests corner cases and failure cases. Push and pull the acceptance tests to and from the grader's repository.

RunWCDB1.py
RunWCDB1.in.xml
RunWCDB1.out.xml

INVALID XML

FILE:CrisesXML

Kind doesn't have ikeyident attributes anymore
<Kind keyIdent = "PC"> "Political Confrontation" </Kind>

Remove "" and extra spaces from xml
Should look like this:
<First>Hurricane Katrina</First>

Check to make sure you have all required elements, I think you are missing things.

sys.stdin Issue

sys.stdin is being used to give the XML file name, so when ask() prompts for the keyboard it reads the first line of the file given instead.

Currently this produces an error, one possible fix: hard coding in the ask() values :'(

REVISING XSD

I'm taking the lead from some posts on Piazza,

I'm re-writing the entire schema. I finally understand how this works and will share an instance and the XSD shortly. From what I have seen thus far groups have certain parts right here and there, I am summing up the best parts from each into a "superschema"

@geosmon @Davoletows @hjh558 @ajl2265 @danielehrlich @Malloryfarr

You will have to adapt your instances, but I'll provide a template instance.

Time mangement

Alright, so it's come to my attention that we probably won't finish this phase in time at the rate we're going currently.

Still left to do:

  1. fix unit tests so they compile
  2. create more unit tests for new function written (possibly just the merge)
    3)write all 45 queries. I haven't seen any published yet and we need those ASAP
  3. Queries must be written into WCDB3q.sql
    5)Merge function needs to be finished
    6)Import and export need to be written/finalized
    7)Queries must be run using the finalized python/mysql code and (just as Downing does for classes), turned into an html file: WCDB3q.html
    THIS IS WHAT WILL TAKE EXTRA TIME. This cannot be done last minute as the queries might need to be adjusted, and we might need time to figure out the html. We need these completed today so that once the code is finished we can run them and get the project finalized for submission.

Also, we still need a comprehensive list of every group's xml instances. I haven't managed to track them down and don't think I should be spending time searching for those when the merge function takes priority for me, so someone else needs to find them and commit them to the repo.

WE ARE NOT DONE WITH THIS PROJECT.
If you haven't done anything for this part, or feel that you can still contribute more, then get started on something above. Making our project deadline is a serious concern right now and everyone needs to contribute.
Don't pick something and say you'll do it like people have been. Start something and publish to the repo to let everyone know you're contributing by actually doing so. We need results at this point, not intentions.

-Holly

Submission

Worth zero points, but mandatory.

Create zip file and submit to Turnin.

INVALID XML

FILE: AlexXML.xml

If there are unused elements, you must delete them or put them in a comment. You can't leave them blank, it won't validate properly.

Need unit tests

I can't log into the MySQL server for some reason, so if someone can log in and make some unit tests for our query function it would be appreciated. Need one that is valid, one that isn't, and one other.

Documentation

Worth 5pts.

Use pydoc to document the interfaces.

Documentation only needs to be generated for WCDB1.py
Comment each function meaningfully.

XML Instance/Schema

Worth 15 pts.

Create an XML schema and instance and validate it.
Push and pull the schema and instance to and from the grader's repository.

WCDB1.xml
WCDB1.xsd.xml

Issue Tracker

Worth 5pts

Create an issue for each of the requirements in this table. Create an issue for each bug or feature, both open and close

Create at least 10 more issues in addition to the requirements.

Design

Worth 5 pts.

Design a UML diagram of the MySQL DB design.
Use any UML editor that you like.
The diagram must only show the associations and multiplicity between the classes.

File:
WCDB2.pdf

load xml file name

Need to get file name from the writer and then feed it into a string-query directed at the MySQL database.

INVALID IDS

FILE wdb539Run.in.xml

Example of correct. Use attributes for IDs instead of the element.

    ```<Crises>
        <!-- Repeate Crisis up to 10 times -->
        <Crisis cID="CID" />
    </Crises>   

    <People>
        <!-- Repeate Person up to 10 times -->
        <Person pID="PID" />
    </People>```

Phase 3 meeting

(From Mallory)
In class today we discussed meeting to discuss/plan for the project either Sunday or sometime next week. Taylor and Wilson, what are y'all's thoughts on this?

Also we will have to present the project to the class either the Friday after its due or the following Monday or Wednesday. We decided going Friday seemed like the best idea, does that work for y'all?

Also if we decide Sunday works for everyone what time, 4ish? I'm free after 1 so if anyone has issues concerning the time let me know!

Happy Friday!
Mallory

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.