BST471 Asynchronous ProgrammingIstanbul Okan UniversityDegree Programs Information Systems and TechnologiesGeneral Information For StudentsDiploma SupplementErasmus Policy StatementNational Qualifications
Information Systems and Technologies
Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

General course introduction information

Course Code: BST471
Course Name: Asynchronous Programming
Course Semester: Spring
Course Credits:
Theoretical Practical Credit ECTS
3 0 3 6
Language of instruction: TR
Course Requisites:
Does the Course Require Work Experience?: No
Type of course: Department Elective
Course Level:
Bachelor TR-NQF-HE:6. Master`s Degree QF-EHEA:First Cycle EQF-LLL:6. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator : Dr.Öğr.Üyesi NURŞEN TOPÇUBAŞI
Course Lecturer(s):
Course Assistants:

Course Objective and Content

Course Objectives: To examine in detail the Callback, ES6 Promise and ES7 Async Await structure that enables Asynchronous Operations to be executed in Javascript, to learn the differences between ES5, ES6 and ES7 and to have an infrastructure that can develop applications with NodeJs.
Course Content: Node.JS, Module, NPM concept, Asynchronous Operation logic, API concept, Node.JS Web Server, database, Restful API, Middleware, Session and Authorization operations, E-mail operations (send, confirm, reset password), File Upload to Server .

Learning Outcomes

The students who have succeeded in this course;
Learning Outcomes
1 - Knowledge
Theoretical - Conceptual
2 - Skills
Cognitive - Practical
1) To examine in detail the Callback, ES6 Promise and ES7 Async Await structures that enable Asynchronous Operations to be executed in Javascript.
3 - Competences
Communication and Social Competence
Learning Competence
Field Specific Competence
Competence to Work Independently and Take Responsibility

Lesson Plan

Week Subject Related Preparation
1) Introduction to Node.JS and concept of Module, concept of NPM and details, Projector, Computer
2) logic of Asynchronous Working, Projector, Computer
3) concept of API and HTTP module, Projector, Computer
4) create of Node.JS Web Server and Express module, Projector, Computer
5) MongoDB database and Mongoose module Projector, Computer
6) Construction of Restful API, Middleware Projector, Computer
7) Errors, Validation, Projector, Computer
8) Session and Authorization Processes Projector, Computer
9) Node.JS Template Engine Projector, Computer
10) Usage of EJS, Passport JS, Theme Covering, Projector, Computer
11) Email processes (Send, Confirmation, Password Reset), Projector, Computer
12) File Upload to Server with Multer, Projector, Computer
13) Deploy transactions, Heroku, Projector, Computer
14) Digital Ocean, to Publish Applications. Projector, Computer

Sources

Course Notes / Textbooks: 1. https://www.coursera.org/learn/html-css-javascript-for-web-developers
2. https://www.w3schools.com/
3. https://css-tricks.com/
4. https://tr.reactjs.org/docs/getting-started.html
References: 1. https://www.coursera.org/learn/html-css-javascript-for-web-developers
2. https://www.w3schools.com/
3. https://css-tricks.com/
4. https://tr.reactjs.org/docs/getting-started.html

Course-Program Learning Outcome Relationship

Learning Outcomes

1

Program Outcomes
1) Having knowledge and skills in software development for different environments, systems management, network security, data and database management systems.
2) Keeping up-to-date with current issues about new information systems that are the result of rapid change of information technologies.
3) Be aware of the importance of Information Systems' stratagic position in the firm and its role in the creation of new business strategies.
4) To be able to explain the ideas and suggestions that is related to the field of Information Systems as in writing and orally.
5) ability to carry out an independent study on the subjects requiring expertise in the field of Information Systems.

Course - Learning Outcome Relationship

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) Having knowledge and skills in software development for different environments, systems management, network security, data and database management systems. 5
2) Keeping up-to-date with current issues about new information systems that are the result of rapid change of information technologies. 4
3) Be aware of the importance of Information Systems' stratagic position in the firm and its role in the creation of new business strategies. 4
4) To be able to explain the ideas and suggestions that is related to the field of Information Systems as in writing and orally. 4
5) ability to carry out an independent study on the subjects requiring expertise in the field of Information Systems. 3

Learning Activity and Teaching Methods

Individual study and homework
Lab
Homework
Q&A / Discussion
Case Study
Web Based Learning

Assessment & Grading Methods and Criteria

Written Exam (Open-ended questions, multiple choice, true-false, matching, fill in the blanks, sequencing)
Homework
Application
Individual Project

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Committee 42 % 0
Laboratory 10 % 0
Quizzes 5 % 0
Midterms 1 % 40
Final 1 % 60
total % 100
PERCENTAGE OF SEMESTER WORK % 40
PERCENTAGE OF FINAL WORK % 60
total % 100

Workload and ECTS Credit Grading

Activities Number of Activities Duration (Hours) Workload
Course Hours 14 3 42
Laboratory 12 2 24
Application 10 1 10
Study Hours Out of Class 6 2 12
Project 1 20 20
Homework Assignments 10 1 10
Quizzes 6 1 6
Midterms 1 3 3
Final 1 3 3
Total Workload 130