Web Technology
106609Module I: Introduction to Web Technologies and Architectures
Q1(a). A system moves most application processing from client machines to a central server while clients mainly provide the user interface. This architecture is closest to (i) Fat-client architecture (ii) Fat-server architecture (iii) Peer-to-peer architecture (iv) N-tier architecture with no server processing20262m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →A system moves most application processing from client machines to a central server while clients mainly provide the user interface. This architecture is closest to
(i) Fat-client architecture
(ii) Fat-server architecture
(iii) Peer-to-peer architecture
(iv) N-tier architecture with no server processingWorked SolutionCorrect answer: (ii) Fat-server architecture. Most application processing occurs on the central server, while clients mainly provide the user interface.
Q1(b). A middleware layer is introduced between clients and servers primarily to (i) Replace the operating system (ii) Convert HTML into machine code (iii) Eliminate all server processing (iv) Hide communication and implementation details between distributed components20262m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →A middleware layer is introduced between clients and servers primarily to
(i) Replace the operating system
(ii) Convert HTML into machine code
(iii) Eliminate all server processing
(iv) Hide communication and implementation details between distributed componentsWorked SolutionCorrect answer: (iv) Hide communication and implementation details between distributed components. Middleware offers common services such as messaging, remote calls, authentication and transactions.
Q2(a). Differentiate between Fat Client and Fat Server architectures with respect to processing, data management and application deployment.20267m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →Differentiate between Fat Client and Fat Server architectures with respect to processing, data management and application deployment.
Worked SolutionFat Client vs Fat Server Architecture
A fat client performs substantial application processing on the client machine. A fat server performs most application processing centrally; the client mainly handles the user interface.
Basis Fat client Fat server Processing Mostly client-side Mostly server-side Client hardware Usually needs more resources Can be relatively lightweight Data management May process/cache data locally; synchronization may be needed Centralized data and business logic are easier to manage Deployment Client applications must be installed/updated on multiple devices Server-side updates can apply centrally Network Some tasks may work offline or need fewer requests Often relies more on network availability Control More logic resides on user devices Easier to enforce central policies Example Rich desktop application Browser-based banking application MermaidDiagramRendering diagram…Conclusion: Fat clients can be responsive and support offline work; fat-server systems simplify centralized deployment and control. Most real applications distribute work between both.
Q2(b). Explain middleware in Client/Server computing and discuss its role in communication between clients and servers.20267m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →Explain middleware in Client/Server computing and discuss its role in communication between clients and servers.
Worked SolutionMiddleware in Client/Server Computing
Middleware is a software layer between applications and the underlying operating system/network. It enables distributed components to communicate through reusable services.
Main roles
- Communication: supports request-response calls, messaging and remote procedure/object calls.
- Abstraction: hides differences in network protocols, operating systems and internal implementation.
- Service discovery: helps locate remote services.
- Security integration: supports authentication and authorization.
- Transactions: coordinates reliable operations involving multiple components or databases.
- Asynchronous messaging: queues messages when a receiver is temporarily unavailable.
- Monitoring and scalability: may provide logging, connection pooling and load balancing.
MermaidDiagramRendering diagram…For example, an online store can call an order service without managing low-level network communication or directly opening database connections.
Advantages: reduces duplicated infrastructure code, improves interoperability and maintainability. Limitations: adds latency, configuration complexity and another component that must be secured and monitored.
Conclusion: Middleware simplifies client/server communication by providing common services between distributed applications.
Q3(a). Discuss markup languages and their grammars. Explain the role of SGML, HTML, CSS, XML and XSL in web technologies.20267m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →Discuss markup languages and their grammars. Explain the role of SGML, HTML, CSS, XML and XSL in web technologies.
Worked SolutionMarkup Languages and Their Grammars
A markup language uses tags or annotations to describe a document's structure or meaning. Its grammar defines legal elements, attributes, nesting and syntax; a parser checks documents against these rules.
- SGML: Standard Generalized Markup Language, a metalanguage used to define markup languages and document structures. HTML historically derived from SGML.
- HTML: describes web-page structure using elements such as headings, paragraphs, links, forms and images.
- CSS: a style-sheet language, not a markup language. It controls presentation, including colour, spacing, layout and responsive design.
- XML: defines custom tags for structured data exchange. XML documents must be properly nested and well-formed.
- XSL: a family of XML technologies. XSLT transforms XML into other formats; XPath selects nodes; XSL-FO supports formatted output.
SVGVector Architecture Diagram (SVG)Conclusion: HTML structures pages, CSS styles them, XML represents structured data, and XSL technologies transform or format XML. Their rules help software interpret content consistently.
Q3(b). Explain the role of DTD in defining the structure of an XML document and discuss its relationship with XML.20267m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →Explain the role of DTD in defining the structure of an XML document and discuss its relationship with XML.
Worked SolutionDTD and XML
A Document Type Definition (DTD) specifies the permitted structure of an XML document. It declares allowed elements and attributes, their order and repetition, and entities. XML conforming to its DTD is valid; a well-formed XML document only needs to obey XML syntax.
Example:
<!DOCTYPE student [ <!ELEMENT student (name, roll)> <!ELEMENT name (#PCDATA)> <!ELEMENT roll (#PCDATA)> ]> <student> <name>Raiyan</name> <roll>106</roll> </student>Here, a student element must contain name followed by roll; each contains parsed character data.
Types
- Internal DTD: declarations appear inside the XML document's DOCTYPE.
- External DTD: declarations are stored in a separate DTD file and referenced by the XML document.
Importance: DTDs standardize document structure, enable validators to detect missing or unexpected elements, document data expectations and support reusable entity declarations.
Limitations: DTD syntax is not itself XML, data types are limited, and namespace support is weak compared with XML Schema (XSD).
Remember: well-formed means syntactically correct XML; valid means well-formed XML that also conforms to a declared DTD or schema.
Q9(a). Write a short note on N-Tiered Software Architecture. Question 9: attempt any two short notes.20267m
Module I: Introduction to Web Technologies and Architectures
View this question on its own page →Write a short note on N-Tiered Software Architecture. Question 9: attempt any two short notes.
Worked SolutionShort Note: N-Tiered Software Architecture
N-tier architecture divides an application into separate logical or physical layers, each with a clear responsibility.
Common three-tier model
- Presentation tier: user interface, such as a browser or mobile app.
- Application/business tier: rules, validation, workflows and APIs.
- Data tier: database and persistent storage.
MermaidDiagramRendering diagram…Advantages: separation of concerns, easier maintenance, independent scaling, improved testability and the ability to protect the database behind application services.
Disadvantages: more deployment complexity, network latency between tiers and additional operational cost.
Example: in an online shopping system, the browser displays products, the application server calculates orders, and the database stores products and orders.
Conclusion: N-tier architecture makes large applications easier to maintain and scale by separating interface, business logic and data responsibilities.