Download Department or Program: Computer Science

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Microsoft Jet Database Engine wikipedia , lookup

Database wikipedia , lookup

Functional Database Model wikipedia , lookup

Concurrency control wikipedia , lookup

Clusterpoint wikipedia , lookup

ContactPoint wikipedia , lookup

Relational model wikipedia , lookup

Database model wikipedia , lookup

Transcript
University Studies Course Approval
Approved by University Studies Sub-Committee. A2C2 action pending.
Approved by Faculty Senate October 18, 2004.
Department or Program: Computer Science
Course Number: CS 385
Course Title: Applied Database Management Systems
Number of Credits: 3
Catalog Description: A study of basic Database Management Systems (DBMS) concepts.
Topics include DBMS Models- Relational and object-oriented; study of query languages; study of
existing DBMS; and data integrity, recovery and concurrency control.
This is an existing course that has previously been approved by A2C2 Yes.
OR
This is a new course proposal No. (If this is a new course proposal, the WSU
Curriculum Approval Form must also be completed as in the process prescribed by WSU
Regulation 3-4.)
Department Contact Person for this course: Paul L. Schumacher
Email: [email protected]
The proposed course is designed to satisfy the requirements in (select one area only):
Course Requirements
A. Basic Skills:
1. College Reading and Writing
2. Oral Communication
3. Mathematics
4. Physical Development and Wellness
______
______
______
______
C. Unity and Diversity:
1. Critical Analysis
2. Science and Social Policy
3. a. Global Perspectives
b. Multicultural Perspectives
4. a. Contemporary Citizenship
b. Democratic Institutions
_______
______
_______
_______
B. Arts & Sciences Core:
___1. Humanities
2. Natural Science
3. Social Science
4. Fine & Performing Arts
_______
_______
_______
D. Flagged Courses:
XX 1. Writing
2. Oral
3. a. Mathematics! Statistics
b. Critical Analysis
_______
_______
_______
_______
_______
Prerequisites by Course(s) and Topic(s):
CS 250 Algorithms and Problem Solving II (with a grade of C or better).
University Studies Course Approval
Textbook(s) and/or Other Required Materials:
Database System Concepts, fourth edition, Silberschatz, Korth, Sudarshan, McGraw-Hill
Coordinator(s):
Paul Schumacher and Gary Stroebel
Course Objectives:
This course is designed to provide the students with the basic principles and topics of database
management systems. The students learn the theoretical topics and database design
methodologies. A practical project is required, in which a large amount of technical writing is
required..
Topics Covered:
1. Data Base system overview
a. motivation
b. data models
c. data independence
d. overall system structure.
2. Entity-Relationship Model
a. components of the model
b. how to create and interpret this model
c. motivation for using the model
3. Relational Model
a. structure
b. operations
c. importance of this model
4. Commercial Relational Languages
a. SQL
b. Query - by - Example
c. Quel
5. Integrity Constraints
a. Existential
b. Referential
c. Functional Dependencies
6. Relational Database Design
a. Normal Forms
b. Alternative approaches
7. File and System Structure
a. overall structure
b. physical structure
c. file organization
d. data dictionary
e. mappings
8. Indexing and Hashing
a. Indexing
b. B-Trees
c. Hashing
9. Query Processing
a. basic strategy
b. Optimization
10 Crash Recovery
a. transaction model
b. log based schemes
11. Concurrency Control
a. serializability
b. methods
12. Transaction Processing
a. deadlock handling
b. consistency models
c. performance
13. Distributed Databases
a. structure
b. design
c. commit protocols
d. concurrency control
e. deadlock handling
14. Security and Integrity
a. authorization and views
b. encryption
c. statistical problems
Contribution of the Course to Writing Flag Requirements:
1. Learning activities to practice the processes and procedures for creating and
completing successful writing in the field
The course requires extensive technical writing throughout the phases of database system
design and implementation. The significant part of the students’ grade is based on the written
reports produced during the semester and final project submitted at the end of the course.
Students write specifications, design algorithms, design input and output forms and reports,
implementation planning and testing plans. A user manual is developed. Students
incorporate the practices and procedures into their summary reports and documentation. At
the end of the semester, students are required to submit a complete project that includes all
written documents completed during the semester on different phases of the database design
and implementation. Documentation is an ongoing activity and used continuously throughout
the analysis, design and implementation phases of the database system. The writing of
documentation is an ongoing, iterative process and goes through continual refinements and
improvements by using the feedback and critiques from the instructor and peers
2. Learning activities to understand the main features and uses of writing in the field
The theory learned throughout the algorithms/problem solving courses sequences (which are
the prerequisites for the course) as well as in the current content on database design and
implementation are put into practice. These ideas and practices help them to understand and
express the concepts required to develop large and complex software projects with
appropriate documentation.
3. Learning activities to adapt the writing to the general expectations of readers in the
field
Students must learn to clearly write the language and notations specific to requirement
specification, analysis, design and implementation of the database system. Students are
required to write and report on the database design activities in a meaningful way to the
readers in the field. The concepts of requirement specification and analysis, the design,
management issues, and implementations are learned through research and report writing, and
the continuous feedback on the report from the instructor and peers. This process ensures
meeting the expectations of readers in the field. The course provides an opportunity to
develop writing skills specific to database design throughout this course. This includes
requirement specification documents, design documents, internal and external documentations
for the implementation, the user’s manual, as well as written assignments that are developed
and graded throughout the semester.
4. Learning activities to make use of the technologies commonly used for research and
writing in the field
This course deals with the theory, concepts and applications of design, development and
use of database management systems by studying and analyzing the existing technology.
Therefore, it is imperative that students utilize the current technology and existing
software tools in writing the documentation and reports in their assignments. This activity
is very useful in research and writing reports and documents in this field.
5. Learning activities to learn the convention of evidence, format, usage, and
documentation in the field.
Students are required to learn and adapt a standard format for writing a technical report.
This includes title page, abstract, introduction, objectives, requirements and design
analysis, conclusions, recommendations, appendices, and references. As students learn the
skills of the database design process and principles report and documentation writing.
Written assignments are intended to prepare the students for the critical thinking and
documentation writing skills necessary for employment and success in the field.
Students get continuous feedback throughout the semester on their reports and writings
from the instructor and their peers. The final project submitted for the course incorporates
all the corrections, comments, suggestions and feedback from the instructor and peers.
The technical writing standards, style and format followed in the course are consistent
with the format and style used in preparing a technical paper for computer science and
software engineering conferences.
COURSE OUTLINE
CS 385-01 Applied Database Mgmt
T R 9:30 - 10:50 am
161 Gildemeister
Fall 2004
Paul L. Schumacher
103 G Watkins
[email protected], Ext 5656
Text: Database System Concepts , FOURTH EDITION, Silberschatz, Korth, Sudarshan
Pub:McGraw-Hill.
This course fulfills a writing flag for University Studies.
Prerequisite: C or better in CS 250.
Topics we will attempt to cover include, but are not limited to, the following:
1.
2.
3.
Data Base system overview
a. motivation
b. data models
c. data independence
d. overall system structure.
Entity-Relationship Model
a. components of the model
b. how to create and interpret this model
c. motivation for using the model
Relational Model
a. structure
b. operations
c. importance of this model
4.
Commercial Relational Languages
a. SQL
b. Query - by - Example
c. Quel
5.
Integrity Constraints
a. Existential
b. Referential
c. Functional Dependencies
6.
Relational Database Design
a. Normal Forms
b. Alternative approaches
7.
File and System Structure
a. overall structure
b. physical structure
c. file organization
d. data dictionary
e. mappings
8.
Indexing and Hashing
a. Indexing
b. B-Trees
c. Hashing
9.
Query Processing
a. basic strategy
b. optimization
10 Crash Recovery
a. transaction model
b. log based schemes
11. Concurrency Control
a. serializability
b. methods
12. Transaction Processing
a. deadlock handling
b. consistency models
c. performance
13. Distributed Databases
a. structure
b. design
c. commit protocols
d. concurrency control
e. deadlock handling
14. Security and Integrity
a. authorization and views
b. encryption
c. statistical problems
COURSE OUTLINE
CS 385-01 Applied Database Mgmt
T R 9:30 - 10:50am
161 Gildemeister
Fall 2004
Paul L. Schumacher
103 G Watkins
Ext 5656
CLASS POLICIES
1.
Attendance -- Attendance is not used for grading purposes, however it is to your best interest to attend
and actively participate in each session. The more actively you become involved in the course, the more
benefit you will gain from the course, because you learn most by doing, experimenting, and trying things
in computer science. However, quizes may be given at any time, and may not be made up. Attendance at
the Project demos is a minimum requirement of this course.
If you miss any of the demos you will not pass this course.
2.
Grading -- Grading is rather simple. Calculate your percentage of the possible points by dividing points
earned by total points possible and multiplying by 100. The assignments are one third of the grade.
However, you must earn at least 65% of the points possible for the assignments to pass the course. Test
scores make up the other two thirds of your grade. There will be three major tests. Tests may not be
made up, unless arranged before hand. Pop quizes are possible at any time and will be counted. Grades
are curved over the class. If you do not meet the prerequisite for the course you will receive a failing
grade.
3.
Assignments -- These will consist of homework exercises and a programming project. They are due at the
beginning of the class period on the due date. Late assignments are not accepted, except in very unusual
circumstances, and then with prior approval only.
4.
Plagerism -- Passing off as your own, work done by someone else. See Departmental policies, these take
precedence! In this course, I encourage you to help each other -- BUT IN NO CIRCUMSTANCES SHOULD
YOU DO THE EXERCISES TOGETHER. WRITE YOUR OWN ANSWERS FOR THE EXERCISE -- IT WILL BE
UNIQUELY YOURS.
This statement is important, observe this policy carefully, as it is a basic academic rule. Failure to so so will
be very detrimental to your academic career
COURSE OUTLINE
CS 385-02 Applied Database Mgmt
T R 9:30 - 10:50am
161 Gildemeister
Fall 2004
Paul L. Schumacher
103 G Watkins
Ext 5656
DATE TOPIC
READING
ASSIGNMENT
8-31
9-2
Intro to the course
E-R Data Model
Chap 1
Chap 2
Group picked--report
9-7
9-9
E-R Data Model
Relational Model
Chap 3
Assign 1 (1.1, 1.3, 1.5, 1.6, 2.3, 2.3, 2.4,2.6)
Project Chosen--report
9-14
9-16
Relational Model
SQL
Chap 4
Assign 2 (3.1, 3.3, 3.5 e-h only )
Project E-R Diagram--report
9-21
9-23
SQL
Other Rational Languages
9-28
9-30
Integrity and Security
Chap 6
..........................................................
Project report
10-5
Relational Data Base Design Chap 7
Assign 4 (5.1 c-e only, 5.2 a-f only, 6.2, 6.3,
6.4)
Project report
10-7
"
"
Chap 5
only)
"
Chap 8 & 9
Chap 10
TEST
Project Base Tables--report
Assign 3 (4.1 c,-e only, 4.2 a-f only, 4.3 b-e
Test 1
10-12
10-14
Object Databases
XML
Assign 5 (7.1, 7.3, 7.23, 7.27)
Project report
10-19
10-21
File Organization
Chap 11
Indexing and Hashing Chap 12
Assign 6 ( 8.2, 8.3, 8.4, 9.1, 9.3)
Project report
10-26
10-28
Query Processing
Query Optimization
Chap 13
Chap 14
Assign 7 (11.4, 11.5, 11.6, 11.7)
Project report
11-2
Transactions
Chap 15
11-4
.........................................................
Assign 8 (12.1, 12.2, 12.4, 12.5, 12.7 a-c only,
13.1, 13.2)
Test 2
11-9
Concurrency Control
15.11)
11-11
A
@
Chap 16
Assign 9 (14.2, 14.4, 15.1, 15.2, 15.3, 15.5,
11-16
11-18
Recovery Systems
Database Architecture
Chap 17
Chap 18
Project Report
11-23
Distributed Databases
Chap 19
Assign 10 (16.2, 16.3, 16.4, 17.6, 18.2, 19.1)
11-30
12-2
Project Demos B Attendance Required.
Project Demos B Attendance Required
12-7
12-9
Project Demos B Attendance Required.
Project Demos B Attendance Required.
12-15
1:00 - 3:00 pm Test on all material covered. ...........
Project Report
Final Exam
The above schedule may vary depending on the pace that is appropriate for this particular group.
This course meets the requirements for the University Studies Writing Flag.
Specifically, the course includes requirements and learning activities that promote students’ abilities
to:
1. Learning activities to practice the processes and procedures for creating and
completing successful writing in the field
The course requires extensive technical writing throughout the phases of database system design
and implementation. The significant part of the students’ grade is based on the written reports
produced during the semester and final project submitted at the end of the course. Students write
specifications, design algorithms, design input and output forms and reports, implementation
planning and testing plans. A user manual is developed. Students incorporate the practices
and procedures into their summary reports and documentation. At the end of the semester,
students are required to submit a complete project that includes all written documents completed
during the semester on different phases of the database design and implementation.
Documentation is an ongoing activity and used continuously throughout the analysis, design and
implementation phases of the database system. The writing of documentation is an ongoing,
iterative process and goes through continual refinements and improvements by using the
feedback and critiques from the instructor and peers
2.
Learning activities to understand the main features and uses of writing in the field
The theory learned throughout the algorithms/problem solving courses sequences (which are the
prerequisites for the course) as well as in the current content on database design and
implementation are put into practice. These ideas and practices help them to understand and
express the concepts required to develop large and complex software projects with appropriate
documentation.
3.
Learning activities to adapt the writing to the general expectations of readers in the
field
Students must learn to clearly write the language and notations specific to requirement
specification, analysis, design and implementation of the database system. Students are required
to write and report on the database design activities in a meaningful way to the readers in the
field. The concepts of requirement specification and analysis, the design, management issues,
and implementations are learned through research and report writing, and the continuous
feedback on the report from the instructor and peers. This process ensures meeting the
expectations of readers in the field. The course provides an opportunity to develop writing skills
specific to database design throughout this course. This includes requirement specification
documents, design documents, internal and external documentations for the implementation, the
user’s manual, as well as written assignments that are developed and graded throughout the
semester.
3
4. Learning activities to make use of the technologies commonly used for research and
writing in the field
This course deals with the theory, concepts and applications of design, development and use
of database management systems by studying and analyzing the existing technology.
Therefore, it is imperative that students utilize the current technology and existing software
tools in writing the documentation and reports in their assignments. This activity is very useful
in research and writing reports and documents in this field.
5. Learning activities to learn the convention of evidence, format, usage, and
documentation in the field.
Students are required to learn and adapt a standard format for writing a technical report. This
includes title page, abstract, introduction, objectives, requirements and design analysis,
conclusions, recommendations, appendices, and references. As students learn the skills of
the database design process and principles report and documentation writing. Written
assignments are intended to prepare the students for the critical thinking and documentation
writing skills necessary for employment and success in the field.
Students get continuous feedback throughout the semester on their reports and writings from
the instructor and their peers. The final project submitted for the course incorporates all the
corrections, comments, suggestions and feedback from the instructor and peers. The
technical writing standards, style and format followed in the course are consistent with the
format and style used in preparing a technical paper for computer science and software
engineering conferences.
4