ELE 3921 Web Applications Development

ELE 3921 Web Applications Development

Course code: 
ELE 3921
Department: 
Data Science and Analytics
Credits: 
7.5
Course coordinator: 
Jan Kudlicka
Course name in Norwegian: 
Web Applications Development
Product category: 
Bachelor
Portfolio: 
Bachelor - Programme Electives
Semester: 
2025 Spring
Active status: 
Active
Level of study: 
Bachelor
Teaching language: 
English
Course type: 
One semester
Introduction

Web applications have become integral tools for modern businesses, serving as platforms for customer engagement, e-commerce, data analysis, and more. Proficiency in web application development empowers business students to actively contribute to the creation and management of these essential tools. 

Additionally, web development skills bridge the gap between technical and managerial roles, promoting effective communication and collaboration with IT professionals. In a digital-focused business environment, these skills make students more adaptable and competitive in their careers, ensuring they can navigate technology-driven enterprises successfully. 

This course offers an opportunity for students to acquire practical skills in web application development using Django, a leading Python-based web framework renowned for rapid development. Some of the most prominent sites running on Django include YouTube, Spotify, Instagram, Disqus and Eventbrite.

Learning outcomes - Knowledge

Upon successful completion of this course, students shall: 

  • Grasp and articulate the core concepts of web development and their integration in creating dynamic web applications. 
  • Comprehend and use the core features of the Django framework, including Object-Relational Mapping (ORM), URL routing, views, template systems, authentication and authorization, sessions, and security. 
Learning outcomes - Skills

Upon successful completion of this course, students will be able to: 

  • Design and implement web applications from the ground up, using the Django framework. 
  • Develop interactive and user-friendly web applications that can serve a variety of business needs, from customer-facing websites to internal management tools. 
  • Use Git and GitHub for version control, facilitating collaboration within development teams. 
  • Formulate strategies for testing and debugging web applications, ensuring their robustness and reliability. 
General Competence

In addition to the learning outcomes mentioned above, students will enhance the following general competencies: 

  • Refine problem-solving skills. 
  • Cultivate effective collaboration within teams. 
  • Engage in peer review processes to improve their work. 
Course content
  • Introduction to Web Development 
    • Overview of web technologies 
    • Setting up the development environment 
    • HTML and CSS fundamentals 
  • Introduction to Django 
    • Django framework overview 
    • Model-view-controller (MVC) architecture 
    • Setting up a Django project 
  • Models and databases 
    • Introduction to relational databases 
    • Data modeling 
    • Django models and ORM 
  • Views and Templates 
    • Views and URL routing 
    • Introduction to templates and template language 
  • Building Dynamic Web Applications 
    • Creating and handling forms in Django 
    • Implementing authentication and authorization 
  • Advanced Topics 
    • Working with static files and media files 
    • Architecture of modern web applications and APIs
    • Developing production-ready applications 
    • Deploying Django applications 
Teaching and learning activities
  • Organized (synchronous) classes combining classical lectures with discussing and solving practical assignments.
  • Working on an individual / group project, supervised by the course coordinator and teaching assistants.

Software tools: Open source software (Python, Django)

Software tools
Software defined under the section "Teaching and learning activities".
Qualifications

Higher Education Entrance Qualification

Disclaimer

Deviations in teaching and exams may occur if external conditions or unforeseen events call for this.

Required prerequisite knowledge

Proficiency in Python (either through a course or self-study). 

Assessments
Assessments
Exam category: 
Submission
Form of assessment: 
Portfolio Assessment other than PDF
Exam/hand-in semester: 
First Semester
Weight: 
100
Grouping: 
Group/Individual (1 - 3)
Duration: 
1 Semester(s)
Comment: 
Project
Exam code: 
ELE 39211
Grading scale: 
ECTS
Type of Assessment: 
Ordinary examination
Total weight: 
100
Student workload
ActivityDurationComment
Teaching
45 Hour(s)
Lectures
Submission(s)
155 Hour(s)
Project
Sum workload: 
200

A course of 1 ECTS credit corresponds to a workload of 26-30 hours. Therefore a course of 7,5 ECTS credit corresponds to a workload of at least 200 hours.