Information Management (IM) (12%) For Computer Science Students
IM1. Information models and systems [core]
IM2. Database systems [core]
IM3. Data modeling [core]
IM4. Relational databases [elective]
IM5. Database query languages [elective]
IM6. Relational database design [elective]
    
IM1. Information models and systems [1%] [core] 
Minimum core coverage time: 3 hours
Topics:
Topics:
Topics:
IM1. Information models and systems [core]
IM2. Database systems [core]
IM3. Data modeling [core]
IM4. Relational databases [elective]
IM5. Database query languages [elective]
IM6. Relational database design [elective]
Recommended Books: 
1.    Database Systems by C.J. Date 
2.    Modern Database Management by Fred R McFadden & Jeffry A. Hoffer 
Information Management (IM) plays a critical role in almost all areas where computers are used. This area includes the capture, digitization, representation, organization, transformation, and presentation of information; algorithms for efficient and effective access and updating of stored information, data modeling and abstraction, and physical file storage techniques. It also encompasses information security, privacy, integrity, and protection in a shared environment. The student needs to be able to develop conceptual and physical data models, determine what IM methods and techniques are appropriate for a given problem, and be able to select and implement an appropriate IM solution that reflects all suitable constraints, including scalability and usability. 
Minimum core coverage time: 3 hours
Topics:
- History      and motivation for information systems 
 - Information      storage and retrieval (IS&R) 
 - Information      management applications 
 - Information      capture and representation 
 - Analysis      and indexing 
 - Search,      retrieval, linking, navigation 
 - Information      privacy, integrity, security, and preservation 
 - Scalability,      efficiency, and effectiveness 
 
- Compare and contrast information with      data and knowledge. 
 - Summarize the evolution of information      systems from early visions up through modern offerings, distinguishing      their respective capabilities and future potential. 
 - Critique/defend a small- to      medium-size information application with regard to its satisfying real      user information needs. 
 - Describe several technical solutions      to the problems related to information privacy, integrity, security, and      preservation. 
 - Explain measures of efficiency      (throughput, response time) and effectiveness (recall, precision). 
 - Describe approaches to ensure that      information systems can scale from the individual to the global. 
 
Topics:
- History      and motivation for database systems 
 - Components      of database systems 
 - DBMS      functions 
 - Database      architecture and data independence 
 - Use      of a database query language 
 
- Explain the characteristics that      distinguish the database approach from the traditional approach of      programming with data files. 
 - Cite the basic goals, functions,      models, components, applications, and social impact of database systems. 
 - Describe the components of a database      system and give examples of their use. 
 - Identify major DBMS functions and      describe their role in a database system. 
 - Explain the concept of data      independence and its importance in a database system. 
 - Use a query language to elicit      information from a database. 
 
IM3. Data modeling [2%] [core] 
Minimum core coverage time: 4 hours Topics:
- Data modeling 
 - Conceptual models (including      entity-relationship and UML) 
 - Object-oriented model 
 - Relational data model 
 
- Categorize      data models based on the types of concepts that they provide to describe      the database structure -- that is, conceptual data model,      physical data model, and representational data model. 
 - Describe the      modeling concepts and notation of the entity-relationship model and UML,      including their use in data modeling. 
 - Describe the      main concepts of the OO model such as object identity, type constructors,      encapsulation, inheritance, polymorphism, and versioning. 
 - Define the      fundamental terminology used in the relational data model . 
 - Describe the      basic principles of the relational data model. 
 - Illustrate the      modeling concepts and notation of the relational data model. 
 
- Mapping conceptual schema to a relational      schema 
 - Entity and referential integrity 
 - Relational algebra and relational      calculus 
 
- Prepare a      relational schema from a conceptual model developed using the      entity-relationship model 
 - Explain and      demonstrate the concepts of entity integrity constraint and referential      integrity constraint (including definition of the concept of a foreign      key). 
 - Demonstrate      use of the relational algebra operations from mathematical set theory (union, intersection, difference,      and cartesian product) and      the relational algebra operations developed specifically for relational      databases (select, product, join,      and division). 
 - Demonstrate      queries in the relational algebra. 
 - Demonstrate      queries in the tuple relational calculus. 
 
- Overview of database languages 
 - SQL (data definition, query      formulation, update sublanguage, constraints, integrity) 
 - Query optimization 
 - QBE and 4th-generation environments 
 - Embedding non-procedural queries in a      procedural language 
 - Introduction to Object Query Language 
 
- Create a      relational database schema in SQL that incorporates key, entity integrity,      and referential integrity constraints. 
 - Demonstrate      data definition in SQL and retrieving information from a database using      the SQL SELECT statement. 
 - Evaluate a set      of query processing strategies and select the optimal strategy. 
 - Create a      non-procedural query by filling in templates of relations to construct an      example of the desired query result. 
 - Embed      object-oriented queries into a stand-alone language such as C++ or Java      (e.g., SELECT      Col.Method() FROM Object). 
 
- Database design 
 - Functional dependency 
 - Normal forms (1NF, 2NF, 3NF, BCNF) 
 - Multivalued dependency (4NF) 
 - Join dependency (PJNF, 5NF) 
 - Representation theory 
 
- Determine the      functional dependency between two or more attributes that are a subset of      a relation. 
 - Describe what      is meant by 1NF, 2NF, 3NF, and BCNF. 
 - Identify      whether a relation is in 1NF, 2NF, 3NF, or BCNF. 
 - Normalize a      1NF relation into a set of 3NF (or BCNF) relations and denormalize a      relational schema. 
 - Explain the      impact of normalization on the efficiency of database operations,      especially query optimization. 
 - Describe what a      multivalued dependency is and what type of constraints it specifies. 
 - Explain why      4NF is useful in schema design. 
 
No comments:
Post a Comment