You are on page 1of 4

Enterprise  Database  Management  

CIS  363  Syllabus  –  Spring  2019,  CSM  


 

Instructor:     Mounjed  Moussalem  


Email:       moussalemm@smccd.edu  
Office:     Building  10  Room  477  
Office  Hours:     Tues  and  Thurs  4:00  pm  –  8:00  pm  (online);  Wed  2:00  pm  –  4:00  pm  (office)  
Textbook:     Murach's  MySQL,  by  Joel  Murach – Publisher:  Mike  Murach  &  Associates
ISBN-­‐13:  978-­‐1890774684 – – ISBN-­‐10:  1890774685
 
 

Course  Description:  
CIS-­‐363   is   a   comprehensive   course   in   enterprise   database   management   with   the   open-­‐source  
MySQL  database.  It  covers  relational  model  and  theory,  forms  and  theories  of  normalization,  and  in-­‐
depth  SQL  and  an  overview  of  database  administration,  stored  procedures,  functions,  triggers,  and  
metadata.   Also,   covered   are   MySQL   server   administration,   performance   tuning,   security,  
optimization,   and   database   design.   Advanced   topics   include   Client-­‐Server   database   applications  
using  Java  and  PHP,  dynamic  SQL,  prepared  SQL,  and  callable  statements.    
Intended  for  students  with  previous  programming  experience.    
Recommended  preparation:  eligibility  for  ENGL  838  or  848  and  completion  of  CIS  111  or  CIS  254.    
Pass/No  Pass  or  letter  grade  option.  (AA,  CSU).  

Student  Learning  Outcomes:  


Upon  completion  of  this  course,  students  should  be  able  to:  
1.  Design  and  construct  MySQL  databases  of  moderate  complexity;  
2.  Use  SQL  commands  to  create  tables  and  to  query,  update,  and  drop  them;  
3.  Explain  the  relational  model  and  theory  of  normalization;  
4.  Create  stored  procedures,  functions,  and  triggers;  
5.  Administer  a  MySQL  database,  with  ability  to  backup,  recover,  and  protect  data;  
6.  Develop  an  advanced  project  using  MySQL  with  Java  or  PHP  and  callable  statements.  

Workload:  
You  are  expected  to  keep  up  with  reading,  complete  the  five  project  phases  and  three  assignments  
on   time,   and   regularly   participate   in   the   corresponding   forums.   Students   are   welcome   to   post  
questions   that   relate   to   the   current   project   component,   answer   other   student’s   questions   or  
respond   to   questions   that   I   may   post.   So   all   together,   this   means   being   able   to   spend   8-­‐10  
hours/week   (regular   semester,   twice   during   summer   session)   minimum   on   assigned   work   for  
success  in  this  class.  
 
 
 

  1  
 
Submitting  Project  Components  and  Exams:  
There   will   be   a   project   composed   of   five   successive   phases.   For   each   project   phase,   you   are   to  
submit   copies   of   all   files,   and   upload   them   to   the   corresponding   Canvas   drop   box   (multiple   file  
assignments  are  to  be  zipped  first).  Assignments  will  be  graded  on  correctness,  documentation,  and  
style.    

Grading:  Your  grade  will  be  determined  by  aggregating  the  following  components:  
Two  preliminary  SQL  assignments  (2  x  10%  =  20%)    
Project  in  5  phases       (5  x  10%  =  50%)    
Final  Exam         (30%)    

Assignments:  the  purpose  of  the  three  assignments  is  to  help  you  focus  on  the  main  concepts  that  
are  relevant  to  the  project.  
Assignment  1:  basic  SQL  in  the  MySQL  Environment.  
Assignment  2:  advanced  SQL  similar  to  what  is  expected  in  the  later  phases  of  your  project.  

Project:   You   get   to   choose   from   a   list   of   deliberately   sketchy   descriptions   and   shape   the   project  
according  to  your  interest.  The  project  will  be  structured  into  five  phases.  For  each  project  phase,  
there  will  be  a  one-­‐page  specification  document.  The  phases  are  fairly  sequential:  
1)   Proposal  and  Data  Modeling    
2)   Database  Design  
3)   Populating  your  Database  and  Simple  Queries  
4)   Advanced  Queries  and  Stored  Procedures,  Constraints  and  Assertions  or  Triggers  
5)   A  Front-­‐End  Application  (possibly  PHP  or  Java-­‐JDBC)  based  on  the  backend  developed  
in  phases  1-­‐4.  

Grades  will  be  assigned  according  to  the  following  scale:    


         %  needed  for              this  grade  
   90     A  
   88     A–  
   86     B+  
   80     B  
   78     B–  
   75     C+  
   67     C  
   60     D  
<  60     F  

Please  see  the  Dean’s  Addendum  for  further  information.  


 
 
 

  2  
Topical  Outline:  
1.  Introduction  
a.  History  of  MySQL  
b.  Database  Concepts  
c.  Relational  Model  and  Theory  
d.  MySQL  Installation  
e.  MySQL  Features  
2.  SQL  Basics  
a.  SQL  Syntax  
b.  Database  Creation  
c.  Table  Management  
d.  MySQL  Data  Types  
e.  Indexing  
f.  Data  Management  
g.  SQL  Operators  
h.  Queries  
i.  Transactions  
j.  Metadata  
3.  Database  Design  Fundamentals    
a.  Database  Concepts    
b.  Entities,  Attributes,  and  Relationships    
c.  Design  Methods    
d.  Design  Requirements    
e.  Functional  Dependence    
f.  Primary  and  Secondary  Keys    
g.  Normalization    
4.  Database  Administration    
a.  Defining  and  Using  Views    
b.  Using  a  View  to  Update  Data    
c.  Dropping  a  View    
d.  Security    
e.  Indexes    
f.  System  Catalog    
g.  Integrity  Constraints    
5.  MySQL  Administration    
a.  Configuration    
b.  Application  and  Database  Server  Tuning    
c.  Security    
d.  Logging    
e.  Backup  and  Recovery    
 

  3  
6.  MySQL  Advanced  Topics    
a.  Importing  Data    
b.  Exporting  Data    
c.  Using  the  MySQL  Query  Browser    
d.  Using  the  MySQL  Administrator    
7.  Database  Applications    
a.  Architecture    
b.  Connections  and  Transactions    
c.  Object-­‐Relational  Modeling    
d.  Client-­‐Server  Applications  (Java  and  PHP)  
e.  Dynamic  SQL    
f.  Prepared  SQL    
g.  Callable  Statements  (Stored  Procedures  and  Functions)    
h.  Triggers    

  4  

You might also like