웹기술및응용 : Course Syllabus 2018 년도 2 학기 Instructor: Prof. Young-guk Ha Dept. of Computer Science & Engineering
Contents Introduction Major Topics Term Project Course Material Grading Policy Class Schedule Contact Information 2
Course Overview Course title 웹기술및응용 Objective 웹기반컴퓨팅의개념및기초지식을학습 웹기반컴퓨팅시스템개발에대한기초학습및실습 웹기반컴퓨팅최신기술동향및이슈에대한이해 머신러닝 (Machine Learning) 기반의지능형웹기술에대한지식습득 Lecture time 월요일오후 4:00 ~ 오후 6:00 / 목요일오후 2:00 ~ 오후 4:00 Lecture room 신공학관 1213호 3
Introduction to Web-Based Computing (1) What is Web-Based Computing? Web Technology 를기반으로하는분산컴퓨팅기술 For Human-to-Machine interaction (traditionally) Essential technologies W3C standards: URL, HTML, HTML5 HTTP, CGI, Web Servers & Web Browsers (e.g., IE, Safari, Chrome, FireFox, ) Java: JavaScript, JSON, JSP, JQuery, AJAX, Web UI Frameworks ASP, Flash, Human Readable Web Pages in HTML Web-based computing for Human-to-Machine interaction HTML HTTP 4
Introduction to Web-Based Computing (2) Today s Web-Based Computing 다양한 Mobile Smart Device, Cloud Service 및 IoT 의등장 보다 Intelligent, Interactive 및 Dynamic 한특성을가짐 Increasing requirements for Machine-to-Machine interaction à HTML & CGI are not enough Essential technologies XML (extensible Markup Language) Web Services: WSDL, SOAP, REST, Semantic Web: RDF, OWL, Open APIs: Google, Facebook, Naver, And so on Hard to adapt to changes of Web pages Hard to parse semantics of Web pages Web Agents HTML HTML Mobile Apps Cloud 5
Today s Web-Based Computing Smart & IoT Devices ü REST ü SOAP Cloud Services XML XML Web- Based Open XML XML Social Media Services XML API XML Information Services 6
What s Next? Intelligent Web = AI + Web-Based Computing Traditional approach: Semantic Web Web 자체를하나의거대한지식베이스화함 ( 웹온톨로지 ) 의미추론기반웹검색 (Retrieval), 웹서비스자동실행 (Execution) 및웹서비스자동조합 (Composition) 등이가능해짐 아직실현되기에는극복해야할한계가많으며, 연구및소규모실증수준에서머물고있음 Todays: Machine Learning 최근기계학습 (i.e., Deep Learning) 기술의발전및실용화에힘입어웹과기계학습기술을접목하는연구가활발해짐 웹기반서비스에빅데이터및기계학습기술을접목하여다양한지능형 ( 사용자맞춤형 ) 서비스및클라우드기반지능형서비스를제공하고있음 (Google, Amazon, Apple, MS, Naver 등 ) 7
Semantic Web & Semantic Web Services Interaction Bringing the web to its full potential à Basis of WoT Java, REST, Web Services (XML, WSDL, SOAP) Semantic Web Services (OWL-S) Web (URL, HTML, HTTP, Browser, Web Server) Semantic Web (Ontology, RDF, RDFS, OWL) Intelligence 8
Technology Stack for Semantic Web Services Semantic Web Services OWL-S (Web Ontology Language for Services) Service Profile Service Model Service Grounding OWL (Web Ontology Language) WSDL (Web Services Description Language) RDF (Resource Description Framework) and RDF Schema XML (extensible Markup Language) and Namespaces SOAP (Simple Object Access Protocol) REST (Representational State Transfer) HTTP/HTML Unicode and URI/URL (Uniform Resource Identifier/Locator) Semantic Web Web Services 9
Intelligent Web-Based Services: Echo and Lynx 10
What s behind? Amazon Cloud OpenAPI Echo / Lynx Internet 11
Major Topics (1) XML (extensible Markup Language) XML basics Introduction Document structure Basic syntax XML document models DTD (Document Type Definition) XML Schema XML document processing DOM (Document Object Model) SAX (Simple API for XML) XML Path language (XPath) 12
Major Topics (2) Web Interfaces and Open API Web Services Basic architecture (SOA) Core technologies (WSDL, SOAP, UDDI) REST (Representational State Transfer) REST architecture RESTful API design JavaScript JSON (JavaScript Object Notation) Front-end frameworks Open API examples Google, Facebook, Naver, 공공데이터포털, 기상청, 한국도로공사, 13
Major Topics (3) Machine Learning Introduction to machine learning What is ANN (Artificial Neural Network)? What is deep learning? Deep learning models: CNN, RNN Python Basics on Python language Programming practice with Python PyTorch Open source machine learning library for Python Deep learning practice with PyTorch 14
2018 Programming Language Ranking by IEEE Spectrum 15
Term Project 지능형웹서비스시스템구현 Base technologies: XML, SOAP, REST, HTML, HTML5 Programming frameworks: Java, JavaScript, Python Open APIs: Google, Facebook, Naver 등 Operating systems: Android, ios, Linux, Windows v 주 1: 관련 Open source 를적극활용 v 주 2: C++, C#,.NET, ActiveX, ASP, Flash 등은사용불가 텀프로젝트진행절차 1) Project proposal 2) Progress report 3) Final report 및 demonstration 16
Course Material 강의자료 PPT 를이용하여강의진행 강의자료는수업시간전에과 목홈페이지에서다운로드 URL (under construction) References http://sclab.konkuk.ac.kr/ class/2018/web_computing 각종 Web 표준및 Spec.: http://www.w3c.org Web 에서다운로드할수있는 관련 Open 소스및 Document 를활용 17
Grading Policy Midterm exam: 30% Programming exam Final exam (Project): 60% Proposal: 15% Progress report: 15% Final report and demonstration: 30% v Copying or cheating will result in no grade Class attendance: 10% 2 회지각 = 1 회결석 5 회결석 = 출석점수 0 점 18
Class Schedule Week Week 1 Week 2 Major Topics Course Syllabus Introduction to Web-Based Computing / XML Basics Week 3 XML DTD & Schema 1 Week 4 XML DTD & Schema 2 Week 5 XML DOM & SAX 1 Week 6 XML DOM & SAX 2 Week 7 Week 8 Week 9 Week 10 Week 11 Week 12 XPath Midterm exam Project proposal Web Services REST & Open API Progress report Week 13 Python 1 Week 14 Python 2 Week 15 Week 16 Machine Learning & PyTorch Final report & demonstration 19
Contact Information Instructor: 하영국교수 Office: 공학관 C 동 291-2 호 Phone: 02-450-3273 ( 내선 3273) Email: ygha@konkuk.ac.kr Office hour: 수업후 1 시간 ( 또는사전연락후상담 ) Teaching assistant: 최수용 Office: 신공학관 1216 호 ( 대학원 SCLab 연구실 ) Email: slidingmouse@naver.com 20