QVault

Web Application Programming

Semester 5 Web Application Programming questions organized unit-wise for the new syllabus.

Unit 1: Introduction

  • 2080 Chaitra (Q1) [2+2+4] — What is the Internet and the Web? Explain the importance of Web technology and describe the concept of Web 2.0 with its key features.
  • 2079 Chaitra (Q1) [3+5] — Explain the concept of multi-tier architecture in web development. Illustrate a three-tier architecture consisting of presentation, business logic, and data layers.
  • 2078 Chaitra (Q1) [4+4] — Describe the client/server computing paradigm and its role in modern computing with real-world examples.
  • 2077 Chaitra (Q1) [3+2+3] — Describe the structure of an HTML document and explain different types of CSS. Write HTML to demonstrate the basic structure with sectioning elements.
  • 2077 Chaitra (Q3) [10] — Create a form to input Name, Email, and Password. Requirements: all fields required; valid email; valid phone number (9********* or 01*******); password at least 8 characters with uppercase, lowercase, number, and symbol. (Also relates to Unit 2.)
  • 2076 Chaitra (Q1) [4+4] — Explain the rowspan and colspan attributes in HTML tables with examples. What are the attributes of list tags? Explain with suitable examples.
  • 2074 Chaitra (Q1) [1+3] — Define CSS selectors. Explain element, class, id, attribute, and universal selectors with examples.
  • 2074 Chaitra (Q2) [1+3] — What are CSS combinators? Explain different types with suitable examples.
  • 2074 Chaitra (Q10) [3+4] — Write short notes on responsive web design and the mobile-first approach.
  • 2073 Chaitra (Q1) [2+3+3] — What is the CSS box model? Explain margin, padding, border, and content with a neat diagram. Differentiate block and inline elements with examples.
  • 2072 Chaitra (Q2) [1+3] — What is Bootstrap? Explain the role of Bootstrap in responsive web design.
  • 2071 Chaitra (Q1) [4+4] — Write an HTML script to insert an audio file in a page using controls and autoplay. Also explain how to insert different multimedia elements in HTML.

Unit 2: JavaScript and Client-Side Programming

  • 2080 Chaitra (Q2) [2+4] — What is JavaScript? What are the potential platforms where JavaScript can be used?
  • 2080 Chaitra (Q3) [6] — Explain JavaScript Execution Model.
  • 2080 Chaitra (Q4) [4] — Explain JavaScript modules with example.
  • 2079 Chaitra (Q2) [2+4] — What is the need for client-side scripting? Explain features of JavaScript.
  • 2079 Chaitra (Q3) [2+4] — What is a JavaScript event? Explain with example.
  • 2079 Chaitra (Q4) [4] — What are different data types in JavaScript?
  • 2078 Chaitra (Q3) [2+4] — What is an Event Object? Explain with example.
  • 2078 Chaitra (Q4) [4] — How do you use local storage in JavaScript?
  • 2077 Chaitra (Q3) [10] — Create a form to input Name, Email, and Password. Requirements: all fields required; valid email; valid phone number (9********* or 01*******); password at least 8 characters with uppercase, lowercase, number, and symbol. (Also relates to Unit 1.)
  • 2077 Chaitra (Q4) [4] — What is callback hell?
  • 2076 Chaitra (Q2) [6] — Explain the concept, structure, and importance of DOM.
  • 2076 Chaitra (Q3) [5] — What are the major differences between session storage and cookie storage? (Also relates to Unit 5.)
  • 2076 Chaitra (Q4) [5] — Explain spread operator with example.
  • 2075 Chaitra (Q2) [6] — Explain methods available to access DOM elements using id, class, name, and selector with suitable example.
  • 2075 Chaitra (Q3) [6] — Write JavaScript code to change the background color of a web page every second.
  • 2075 Chaitra (Q4) [4] — Explain statement, expression, and keywords in JavaScript.
  • 2074 Chaitra (Q3) [6] — What are components in React? Demonstrate how props are passed to React components.
  • 2074 Chaitra (Q4) [6] — Create an HTML page containing a division with an image and its paragraph description. Write a JavaScript function to change the description during onmouseover and onmouseout on the image.
  • 2074 Chaitra (Q5) [4] — Explain Promise with example.
  • 2073 Chaitra (Q2) [6] — Write a program with a function sum() that adds an arbitrary list of parameters.
  • 2073 Chaitra (Q3) [6] — What is jQuery? What is its use? How does jQuery differ from JavaScript?
  • 2073 Chaitra (Q4) [4] — Explain principles of React.
  • 2072 Chaitra (Q3) [2+4] — What is an arrow function? Write rules for writing JSX in React.
  • 2072 Chaitra (Q4) [6] — How can you create a simple modal popup using HTML, CSS, and JavaScript that opens and closes on button clicks?
  • 2072 Chaitra (Q5) [4] — List different types of jQuery selectors with one example of each.
  • 2071 Chaitra (Q2) [2+4] — Write a program that displays continuous time in the format HH:MM:SS on a web page.
  • 2071 Chaitra (Q3) [2+2+6] — Explain AJAX. List benefits of using AJAX. Demonstrate AJAX with jQuery.

Unit 3: Server-Side Web Programming

  • 2080 Chaitra (Q5) [8] — Explain MVC architecture with neat diagram.
  • 2080 Chaitra (Q6) [4] — Explain how to set, get, and delete sessions.
  • 2079 Chaitra (Q5) [8] — Explain MTV architecture with neat diagram.
  • 2079 Chaitra (Q6) [4] — Explain how to set, get, and delete cookies from the server side. (Also relates to Unit 5.)
  • 2078 Chaitra (Q5) [1+4] — What is Django? Explain the file structure of a Django project and Django app.
  • 2078 Chaitra (Q6) [7] — Write a controller that accepts username and password, checks the student table, redirects to dashboard on success, and shows Invalid username/password otherwise. Assume the user already exists. (Also relates to Unit 5.)
  • 2077 Chaitra (Q5) [1+4] — What is routing? How do you handle routing on the server side? Give examples.
  • 2077 Chaitra (Q6) [7] — Write a server-side script to create and validate a patient form and store data into a patients table. Rules: Name, Mobile, Doctor Name, Gender, and DOB are required; Mobile must be 10 digits starting with 98, 97, or 96; DOB must use YYYY-MM-DD.
  • 2076 Chaitra (Q5) [1+4] — What is templating? How do you generate dynamic HTML content on the server side?
  • 2076 Chaitra (Q6) [7] — Design the form and write server-side code to store user values after validation. Rules: Full name up to 40 characters; valid email; username starts with a string and is followed by a number; password length more than 8 characters.
  • 2074 Chaitra (Q6) [4] — What are the major differences between sessions and cookies? (Only the retained covered part from the old paper; also relates to Unit 5.)
  • 2074 Chaitra (Q7) [6] — What are different field types for defining models in Django? Give example.
  • 2073 Chaitra (Q5) [2+4] — What is middleware? Create custom middleware for logging. (Also relates to Unit 5.)
  • 2073 Chaitra (Q6) [6] — Explain the syntax of Django Template Language with example.
  • 2072 Chaitra (Q6) [2+4] — What is a database? What are types of databases?
  • 2072 Chaitra (Q7) [6] — How do you inherit templates and include partial template snippets?
  • 2071 Chaitra (Q4) [4] — Compare Django, Flask, FastAPI, ASP.NET, Spring Boot, and Node.js.

Unit 4: Web Services and APIs

  • 2080 Chaitra (Q7) [2+2+5] — Define API. Differentiate between Open APIs and Internal APIs. Explain why APIs are important in modern software development with their purposes.
  • 2079 Chaitra (Q7) [2+7] — What is REST? Explain the six architectural constraints of REST with their benefits.
  • 2078 Chaitra (Q7) [2+2+5] — What is the difference between PUT and PATCH? What status code is returned when a resource is successfully created using POST? Explain different HTTP status codes from success, client error, and server error categories.
  • 2077 Chaitra (Q7) [3+6] — What is statelessness in REST architecture? Explain good endpoint and URL design practices with good and bad examples.
  • 2075 Chaitra (Q7) [2+2+5] — Define JSON. List the syntax rules of JSON. Explain JSON data types with examples and provide a complete JSON example with simple values, nested objects, arrays, and null values.
  • 2074 Chaitra (Q8) [3+6] — Define XML and write syntax rules for XML. Explain declaration, element, attribute, comment, and CDATA with examples, and provide a complete XML example.
  • 2072 Chaitra (Q8) [2+2+5] — Define serialization in Django REST Framework. Define deserialization and explain its importance. Explain the full serialization and deserialization flow for incoming requests and outgoing responses.
  • 2071 Chaitra (Q6) [2+2+5] — Define microservices architecture. Define monolithic architecture. Compare them in deployment, scaling, database, and technology, and explain when to use each with diagrams.

Unit 5: Web Application Security

  • 2080 Chaitra (Q8) [2+2+4] — Define Cross-Site Scripting (XSS). Differentiate between Stored XSS and Reflected XSS. Explain four potential impacts of XSS attacks on web applications.
  • 2079 Chaitra (Q8) [2+2+4] — What is SQL Injection? Explain how it works with an example. Describe four preventive measures against SQL Injection in web applications.
  • 2078 Chaitra (Q8) [2+3+3] — Define Cross-Site Request Forgery (CSRF). Explain how CSRF attacks exploit user sessions. Describe how Django's CSRF protection mechanism works with a code example.
  • 2077 Chaitra (Q8) [2+3+3] — What is input validation? Differentiate between whitelist and blacklist validation approaches. Explain why server-side validation is mandatory even when client-side validation is implemented.
  • 2076 Chaitra (Q8) [2+3+3] — Define input sanitization. Explain the difference between input validation and input sanitization. Describe HTML encoding and its role in preventing XSS attacks.
  • 2075 Chaitra (Q8) [2+4+2] — What are environment variables? Explain why sensitive information like database passwords and API keys should be stored in environment variables instead of source code. Demonstrate how to use environment variables in Django settings.
  • 2074 Chaitra (Q9) [6+2] — Explain the purpose of the cookie security attributes Secure, HttpOnly, and SameSite. Write the Django settings to configure secure session cookies.
  • 2073 Chaitra (Q8) [2+2+4] — Differentiate between authentication and authorization. Explain why storing passwords in plain text is dangerous. Describe password hashing and its key properties.
  • 2072 Chaitra (Q9) [4+4] — Explain session-based authentication and its working mechanism. Describe session hijacking, session fixation, and session prediction with their prevention methods.
  • 2071 Chaitra (Q7) [2+2+4] — What is Cross-Origin Resource Sharing (CORS)? Differentiate between simple requests and preflight requests. Explain four CORS response headers and their purposes.
  • 2080 Chaitra (Q9) [3+4] — Write short notes on full-stack development and frontend-backend integration.
  • 2079 Chaitra (Q9) [4+3] — Write short notes on unit testing with the AAA pattern and integration testing approaches.
  • 2078 Chaitra (Q9) [4+3] — Write short notes on Test-Driven Development (TDD) and Quality Assurance (QA) vs testing.
  • 2077 Chaitra (Q9) [3] — Write a short note on test automation benefits.
  • 2076 Chaitra (Q9) [3+4] — Write short notes on Continuous Integration (CI) and Continuous Delivery vs Continuous Deployment.
  • 2075 Chaitra (Q9) [4+3] — Write short notes on CI/CD pipelines and GitHub Actions.
  • 2074 Chaitra (Q10) [3+4] — Write short notes on responsive web design and the mobile-first approach.
  • 2073 Chaitra (Q9) [4+3] — Write short notes on web app manifest and build pipeline in web development.
  • 2072 Chaitra (Q1) [1+3] — Define media queries. Explain responsive web design using media queries with examples.
  • 2072 Chaitra (Q10) [4+3] — Write short notes on DevOps principles and the DevOps lifecycle.
  • 2071 Chaitra (Q8) [4+3] — Write short notes on Progressive Web Apps (PWAs) and breakpoints in responsive design.

Coverage Note

Some newer micro-syllabus topics did not appear in the provided paper, including HTTP/HTTPS basics, browser concepts, async/await, Fetch API, React Router, ORM CRUD, JWT, simple REST API implementation/testing, and a few standalone usability topics.

On this page