Help:COAP-3180/exam: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
 
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{under construction}}
<pageby nominor="false" comments="false"/>
<pageby nominor="false" comments="false"/>


== Introduction ==
== Introduction ==


This is a page to help you prepare the [[Help:COAP-3180|COAP-3180]] exam, December 2007.


== Conceptual exam topics ==
== Conceptual exam topics ==


=== Web databases, major database types and simple Internet architectures  ===
* Understand the difference between major database types
* HTML Forms, server-side scripts and databases: you should understand roughly how they interact
* The three-tier architecture model (client, webserver+script, database)
Reading:
* http://tecfa.unige.ch/guides/te/files/webdatabases-intro.pdf


=== Simple web 2.0 databases ===
=== Simple web 2.0 databases ===
* Understand the potential of tools like [[Zoho]] Creator and other virtual office software, e.g. other Zoho applications or Google Apps like [[Google Docs]]
Reading:
* O'Reilly Tim (2005), What is Web 2.0,  http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html, better take the [http://www.oreillynet.com/lpt/a/6228 print] version.


=== Webtops and widgets ===
=== Webtops and widgets ===


=== Database types ===
* Understand the principle of a web top like [[Pageflakes]]
* Understand the principle of web widgets and how to create simple mashups (either in a webtop or on your own HTML page)
 
Reading:
* [[Web widget and mashup]] (chapters 1 and 2)


=== Relational databases ===
=== Relational databases ===


=== Code generators ===
* Principles of relational databases, i.e. how objects can be represented with tables, and how tables can be linked together with keys
 
Reading:
* See [[#SQL basics|SQL basics below]]


=== The LAMP architecture ===
=== The LAMP architecture ===


=== Configuration of LAMP-based portalware ===
* Understand what Apache/MySQL/Php means
* Understand advantages/disadvantages of working with a [[web hosting service]], a local WAMP installation or a WAMP on a memory stick.
* Know about some other alternatives (e.g. ASP/.Net or Java/JSP/J2EE)
 
Reading:
* http://en.wikipedia.org/wiki/Web_hosting_service
* [[Web application]]
* [[Web application framework]] (additional pointers, optional)
 
=== PHP/MySQL and Code generators ===
 
* Be able to produce scripting code with a generator
* Understand what the generator does and why generators can be useful
* Have a basic understanding how PHP interacts with MySQL
 
Reading:
* http://tecfa.unige.ch/guides/te/files/php-mysql.pdf
* See also the [[Help:COAP-3180/hw3|homework 3]] page.
 
=== Installation and configuration of LAMP-based portalware ===
 
* Discuss the design of a CMS, i.e. its purpose, front page design, menu layout, skin and extra tools installed
* Understand different user roles: Administrator, editor, user and guest
* Understand the difference between a front end (user) and a back end (admin).
 
Reading:
* none required, but you must be able to define objectives and come up with a sketch of desired functionalities.
* Joomla Manual, http://help.joomla.org/images/User_manual/user_manual_v1%200%201_10%2021%2006.pdf (optional)


=== The W3C XML framework ===
=== The W3C XML framework ===


=== Webservices ===
* Purpose of XML
* Basic technical features of XML:
** well-formedness,
** validity, i.e. the Schema concept (DTD, XML Schema, etc.) and its purpose
** namespaces
* Some understanding of the purpose of important XML applications, e.g. XHTML, XSLT, XPath, SVG.
* Understand the difference between "true XHTML" and XHTML used as "just" HTML
 
Reading:
* http://tecfa.unige.ch/guides/te/files/xml-databases.pdf
* http://tecfa.unige.ch/guides/te/files/xml-intro-edit.pdf (not all the technical details, but you should understand for example how various XML applications can combine)
* http://tecfa.unige.ch/guides/te/files/xml-ns.pdf (optional)
* http://tecfa.unige.ch/guides/te/files/xslt-basics.pdf (not all the technical details, but you should understand what a "template" is)
* [[XML]] (this wiki, optional) and http://en.wikipedia.org/wiki/XML
* [[SVG]] (distributed book chapter)
 
=== XML Databases ===
 
* Understand the purpose of XML databases
* Advantages and disadvantages compared to other database technologies
* Have a rough understanding on how XPath, XQuery, Xupdate, XQuery Update, XSLT and CSS may work together
 
Reading:
* http://tecfa.unige.ch/guides/te/files/xml-databases.pdf
* Ronald Bourret (2005). XML and Databases, http://www.rpbourret.com/xml/XMLAndDatabases.htm (in particular chapters 2, 3, 4 and section 6.3)
 
=== Web services ===
 
* Have a general understanding of what we mean be "webservice"
* Be able to distinguish between a REST, A XML-RPC and SOAP interface
* Understand the role of XML formats (query languages, web service languages, data formats)
 
Reading:
* http://tecfa.unige.ch/guides/te/files/connectivity-web-services.pdf (first few chapters)
* Additional pointers can be found in [[web service]]


=== LDAP databases ===
=== LDAP databases ===


Readings:
Readings:
 
* [[LDAP]] (this wiki)
* Optional: http://www.zytrax.com/books/ldap/ch2/ and http://www.zytrax.com/books/ldap/ch3/


== Technical exam topics ==
== Technical exam topics ==


You are expected to master technical details (beginner's level) of these topics.
You are expected to master technical details (beginner's level) of these topics.
Note: Other SQL and XQuery tutorials can be found on the web, e.g. at http://www.w3schools.com/


=== SQL basics ===
=== SQL basics ===


* Be able to create a simple table with an SQL statement (CREATE)
* Be able to query and update a table (SELECT, INSERT, UPDATE)
* Be able to query 2 tables (SELECT)


Readings:
Readings:
* http://tecfa.unige.ch/guides/te/files/mysql-intro.pdf (Note: You can find links to additional SQL tutorials on the [[Help:COAP-3180|course homepage]] or the [[SQL]] and [[MySQL]] pages if the slides are not clear enough...
=== PHP/MySQL basics ===


* Be able to use the PHPMyAdmin interface (create users and databases; fix permissions, i.e. GRANT user rights for a database)
* Install a portal on a LAMP server
Readings:
* none, but you can consult the Joomla installation manual (http://help.joomla.org/) or read [[Joomla installation and configuration]] or look at the [[Help:COAP-3180/hw2|homework 2]] page ....


=== XQuery basics ===
=== XQuery basics ===


* Be able to write a simple XQuery application (of course, this includes simple XPath expressions)
* Produce both XML and HTML output
* Be able to upload XML data files and *.xq files to an eXist server
* Query and eXist database with simple REST expressions


Readings:
Readings:
* http://tecfa.unige.ch/guides/te/files/xml-databases.pdf
* http://tecfa.unige.ch/guides/te/files/connectivity-web-services.pdf (last few chapters)

Latest revision as of 12:43, 16 December 2007

<pageby nominor="false" comments="false"/>

Introduction

This is a page to help you prepare the COAP-3180 exam, December 2007.

Conceptual exam topics

Web databases, major database types and simple Internet architectures

  • Understand the difference between major database types
  • HTML Forms, server-side scripts and databases: you should understand roughly how they interact
  • The three-tier architecture model (client, webserver+script, database)

Reading:

Simple web 2.0 databases

  • Understand the potential of tools like Zoho Creator and other virtual office software, e.g. other Zoho applications or Google Apps like Google Docs

Reading:

Webtops and widgets

  • Understand the principle of a web top like Pageflakes
  • Understand the principle of web widgets and how to create simple mashups (either in a webtop or on your own HTML page)

Reading:

Relational databases

  • Principles of relational databases, i.e. how objects can be represented with tables, and how tables can be linked together with keys

Reading:

The LAMP architecture

  • Understand what Apache/MySQL/Php means
  • Understand advantages/disadvantages of working with a web hosting service, a local WAMP installation or a WAMP on a memory stick.
  • Know about some other alternatives (e.g. ASP/.Net or Java/JSP/J2EE)

Reading:

PHP/MySQL and Code generators

  • Be able to produce scripting code with a generator
  • Understand what the generator does and why generators can be useful
  • Have a basic understanding how PHP interacts with MySQL

Reading:

Installation and configuration of LAMP-based portalware

  • Discuss the design of a CMS, i.e. its purpose, front page design, menu layout, skin and extra tools installed
  • Understand different user roles: Administrator, editor, user and guest
  • Understand the difference between a front end (user) and a back end (admin).

Reading:

The W3C XML framework

  • Purpose of XML
  • Basic technical features of XML:
    • well-formedness,
    • validity, i.e. the Schema concept (DTD, XML Schema, etc.) and its purpose
    • namespaces
  • Some understanding of the purpose of important XML applications, e.g. XHTML, XSLT, XPath, SVG.
  • Understand the difference between "true XHTML" and XHTML used as "just" HTML

Reading:

XML Databases

  • Understand the purpose of XML databases
  • Advantages and disadvantages compared to other database technologies
  • Have a rough understanding on how XPath, XQuery, Xupdate, XQuery Update, XSLT and CSS may work together

Reading:

Web services

  • Have a general understanding of what we mean be "webservice"
  • Be able to distinguish between a REST, A XML-RPC and SOAP interface
  • Understand the role of XML formats (query languages, web service languages, data formats)

Reading:

LDAP databases

Readings:

Technical exam topics

You are expected to master technical details (beginner's level) of these topics. Note: Other SQL and XQuery tutorials can be found on the web, e.g. at http://www.w3schools.com/

SQL basics

  • Be able to create a simple table with an SQL statement (CREATE)
  • Be able to query and update a table (SELECT, INSERT, UPDATE)
  • Be able to query 2 tables (SELECT)

Readings:

PHP/MySQL basics

  • Be able to use the PHPMyAdmin interface (create users and databases; fix permissions, i.e. GRANT user rights for a database)
  • Install a portal on a LAMP server

Readings:

XQuery basics

  • Be able to write a simple XQuery application (of course, this includes simple XPath expressions)
  • Produce both XML and HTML output
  • Be able to upload XML data files and *.xq files to an eXist server
  • Query and eXist database with simple REST expressions

Readings: