Open Computing
Laboratory exercises
Course Description
Study Programmes
University undergraduate
General Competencies
This course capacitates for comprehension of open network computing concepts and development of dynamical interactive network services. Based on given parameters, students will be capable to choose appropriate architecture for network information application or system. Using tools and learned languages, they will be able to build a system for generation, management and utilization of dynamic content based on open technologies.
Learning Outcomes
- define term open computing and openness
- describe basic Internet and Web standards
- use structured data in XML form
- apply HTML and CSS languages in Web site pages
- explain communication between browser and Web server
- explain basic server and client Web technologies
- apply different Web technologies
- apply open technology based on its features
Forms of Teaching
Lectures will be held 3 hours per week
ExamsExams in written and oral form
Laboratory WorkLaboratory exercises will be held every other week for 2 hours
E-learningUsage of additional content in e-learning management system
Grading Method
Continuous Assessment | Exam | |||||
---|---|---|---|---|---|---|
Type | Threshold | Percent of Grade | Threshold | Percent of Grade | ||
Laboratory Exercises | 0 % | 25 % | 0 % | 25 % | ||
Quizzes | 0 % | 15 % | 0 % | 15 % | ||
Mid Term Exam: Written | 0 % | 20 % | 0 % | |||
Final Exam: Written | 0 % | 25 % | ||||
Final Exam: Oral | 15 % | |||||
Exam: Written | 0 % | 45 % | ||||
Exam: Oral | 15 % |
Comment:
To access the written part of exam / final exam it is necessary to submit all laboratory work and collect a minimum of 50% points, and collect a minimum of 50% points from the mid-term exam. To access the oral exam / final exam it is necessary to collect a minimum of 45 points from all previous forms of verification. Oral exam is mandatory and it is necessary to acquire at least 5 of 15 points to pass the course.
Week by Week Schedule
- Introduction to Open Computing; Course organization; Definitions of Open computing (portability, adaptability, accessibility, interoperability); Open systems examples; History of open computing; Legends and myths of Open computing
- Introduction to tag programming (SCCS, nroff, SGML - Standard Generalized Markup Language); Visualization of content on Web (HTML - HyperText Markup Language); Design of content on Web (CSS - Cascading Style Sheets); Data forms on Web
- Structured data; Introduction to XML (Extensible Markup Language); Rules of XML; Applications of XML; Namespaces; XML rules using DTD (Document Type Definition); XSD - XML Schema Definition
- Data vizualization, transformations and filtering; DOM - Document Object Model; XML and DOM; Sequential parsing (SAX - Simple API for XML); XSL - Extensible Stylesheet Language (XPath, XSLT, XSL-FO)
- XML usage examples (SMIL - Synchronized Multimedia Integration Language; RSS - Really Simple Syndication; SVG - Scalable Vector Graphics; GML - Geography Markup Language; ODF - Open Document Format; OOXML - Office Open XML); Standards (in general, examples, W3C standards, text data encodings)
- Distributed systems and Web technologies; Browser, server and communication (URI - Uniform Resource Identifier , MIME - Multipurpose Internet Mail Extensions, preglednici, HTTP - HyperText Transfer Protocol, CGI); PHP language
- Other server side Web technologies (ASP, Servlets, JSP ...); Programming languages and openness (portability and scalability, reduction of complexity, standardization and licensing); Object oriented programming and Java
- Mid-term exam
- Distributed systems; Layered architecture; Distributed applications architecture;
- Clients and servers; Inter-process communication; Application protocols; Protocol mechanisms and services states
- Web technologies and application server (Servlets, MVC design pattern - Model-View-Controller, JSP - JavaServer Pages, JavaBeans)
- Client Web technologies (DHTML - Dynamic HTML, JavaScript, Flash); Web 2.0; RIA - Rich Internet Applications; Sessions and statefullness; REST and Web applications
- SOA - Service Oriented Architecture; Coupling; Examples (Eclipse, XML-RPC, SOAP); Security and openness (general terms, algorithms, Internet and security)
- Wireless and mobile computing (Applets, Midlets, WAP, Java Card); Various examples of open (and closed) systems; Free as free of costs and free for usage, and openness in computing; Creative Commons licence; Other (ORscar award)
- Final exam