DOC PREVIEW
Database Applications

This preview shows page 1-2-3-4 out of 12 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Faloutsos CMU SCS 15-415 1 CMU SCS Carnegie Mellon Univ. Dept. of Computer Science 15-415 - Database Applications Lecture #19 (not in book) Database Design Methodology handout CMU SCS Faloutsos CMU SCS 15-415 2 Based on handout: Adaptable methodology for database design by N. Roussopoulos and R.T. Yeh, IEEE Computer Vol. 17, no. 5, pp. 64-80. 1984 CMU SCS Faloutsos CMU SCS 15-415 3 Goal • Given an English description of an enterprise • build a system to automate it and • produce the documentation In diagram form • tasks • documentsFaloutsos CMU SCS 15-415 2 CMU SCS Faloutsos CMU SCS 15-415 4 description req. anal. top level I.F.D. sys. anal. conc. mod. impl.+test. task + doc forms. schema. code. task emul. tests user’s man. pseudo-code CMU SCS Faloutsos CMU SCS 15-415 5 description req. anal. top level I.F.D. sys. anal. conc. mod. impl.+test. task + doc forms. schema. code. task emul. tests user’s man. pseudo-code Phase-I Phase-II CMU SCS Faloutsos CMU SCS 15-415 6 Running example - ‘Mini-U’ • Students register • Students enroll in courses • Students ask for transcripts • Administrator records grades • Every semester: print class listsFaloutsos CMU SCS 15-415 3 CMU SCS Faloutsos CMU SCS 15-415 7 Requirement analysis Turn English description in to top level information flow diagram, where • boxes -> documents (~ db tables) • ovals -> tasks (= db programs) Important: system boundary CMU SCS Faloutsos CMU SCS 15-415 8 reg. form reg. student rec. input output Top level inf. flow diagram CMU SCS Faloutsos CMU SCS 15-415 9 reg. form reg. student rec. System boundary • internal documents -> db tables • tasks -> db programs • tasks: internal onlyFaloutsos CMU SCS 15-415 4 CMU SCS Faloutsos CMU SCS 15-415 10 reg. form reg. More on top level diagram enroll. form enroll class rec. student rec. CMU SCS Faloutsos CMU SCS 15-415 11 reg. form reg. More on top level diagram enroll. form enroll class rec. student rec. transc. req. transcr. transcr. CMU SCS Faloutsos CMU SCS 15-415 12 Example - Mini-U • Students register • Students enroll in courses • Students ask for transcripts • Administrator records grades • every semester: print class rostersFaloutsos CMU SCS 15-415 5 CMU SCS Faloutsos CMU SCS 15-415 13 reg. form reg. enroll. form enroll class rec. student rec. transc. req. transcr. transcr. grades form grades CMU SCS Faloutsos CMU SCS 15-415 14 reg. form reg. enroll. form enroll class rec. student rec. transc. req. transcr. transcr. class list grades form grades list CMU SCS Faloutsos CMU SCS 15-415 15 description req. anal. top level I.F.D. sys. anal. conc. mod. impl.+test. task + doc forms. schema. code. task emul. tests user’s man. pseudo-code Phase-I Phase-IIFaloutsos CMU SCS 15-415 6 CMU SCS Faloutsos CMU SCS 15-415 16 Document + Task forms Top level diagram: only half of the info - we also need: • Document forms and document list • Task forms and task list CMU SCS Faloutsos CMU SCS 15-415 17 Document list • D1: registration form • D2: enrollment for • … • D7: student record • D8: class record } INTERNAL CMU SCS Faloutsos CMU SCS 15-415 18 Document forms • D1: registration – ssn – name – address D2: enrollment ssn name List-of: course id course nameFaloutsos CMU SCS 15-415 7 CMU SCS Faloutsos CMU SCS 15-415 19 Document forms - cont’d • D3: transcript request form – ssn – name D4: transcript ssn name List-of: class-id class name grade CMU SCS Faloutsos CMU SCS 15-415 20 Document forms - cont’d (Internal documents - VERY IMPORTANT) D7: student record – ssn – name – address CMU SCS Faloutsos CMU SCS 15-415 21 Document forms - cont’d D8: class record – class-id – class-name – syllabus – List-of • ssn • gradeFaloutsos CMU SCS 15-415 8 CMU SCS Faloutsos CMU SCS 15-415 22 Document forms - cont’d • IMPORTANT POINTS – avoid redundancy in internal documents: ie., grades should be stored in ONE place only – there are many, different, correct solutions CMU SCS Faloutsos CMU SCS 15-415 23 Task List • T1: Registration • T2: Enrollment • T3: Transcript • ... CMU SCS Faloutsos CMU SCS 15-415 24 Task forms • As in [R+Y] • not required for this homework • sub-tasks: probably there won’t be any – otherwise: ~3-7 sub-tasks per taskFaloutsos CMU SCS 15-415 9 CMU SCS Faloutsos CMU SCS 15-415 25 description req. anal. top level I.F.D. sys. anal. conc. mod. impl.+test. task + doc forms. schema. code. task emul. tests user’s man. pseudo-code Phase-I Phase-II CMU SCS Faloutsos CMU SCS 15-415 26 Database schema - E-R • from the internal documents • use their forms – ‘List-of’ constructs -> relationships Eg., for ‘Mini-U’: D7: Student record (ssn, name, address) D8: Class record (c-id, …, List-of … ) CMU SCS Faloutsos CMU SCS 15-415 27 E-R diagram for Mini-U Student Class ssn addr. c-id ... ... takes N M gradeFaloutsos CMU SCS 15-415 10 CMU SCS Faloutsos CMU SCS 15-415 28 Relational schema student( ssn, name, address) class( c-id, c-name, syllabus) takes(c-id, ssn, grade) Make sure that – Primary keys are underlined; – tables are in BCNF (or 3NF at worst) CMU SCS Faloutsos CMU SCS 15-415 29 SQL DDL statements create table student (ssn char(9), … ); create table class (c-id char(5), … ); ... CMU SCS Faloutsos CMU SCS 15-415 30 description req. anal. top level I.F.D. sys. anal. conc. mod. impl.+test. task + doc forms. schema. code. task emul. tests user’s man. pseudo-code Phase-I Phase-IIFaloutsos CMU SCS 15-415 11 CMU SCS Faloutsos CMU SCS 15-415 31 Task emulation T1: Registration read ssn, name and address if ( ssn does not exist in ‘student’){ insert into student values ( :ssn, :name, :address); } else{print “error: duplicate ssn”} CMU SCS Faloutsos CMU SCS 15-415 32 description req. anal. top level I.F.D. sys. anal. conc. mod. impl.+test. task + doc forms. schema. code. task emul. tests user’s man. pseudo-code Phase-I Phase-II CMU SCS Faloutsos CMU SCS 15-415 33 Testing • For T1 (registration), we check – duplicate ssn – ssn with 9 digits • For T2 (enrollment) we check – for valid ssn (9 digits) – for registered ssn – for valid c-id – for duplicate (ssn, c-id)


Database Applications

Download Database Applications
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Database Applications and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Database Applications 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?