210 likes | 326 Vues
This presentation, led by Mansha Nawaz, focuses on modeling web applications through the use of UML stereotypes and widely recognized architecture patterns. Participants will learn about the Thin Web Client, Thick Web Client, and Web Delivery patterns, alongside practical illustrations using UML models. The session will highlight the importance of UML extensions in effectively modeling web applications. By the end, attendees will have a comprehensive understanding of various UML stereotypes and their applicability in real-world web application architecture.
E N D
And Franchise Colleges Modelling for Web Development - 2 • Name : MANSHA NAWAZ • room : G 0/32 • email : m.nawaz@tees.ac.uk
Learning Objectives • Outline a range of UML stereotypes available for the modelling of web applications • Using a set of UML models illustrate the modelling of web applications based on the architecture patterns: • Thin Web Client • Thick Web Client • Web Delivery • Demonstrate the use of UML extensions in web application models
Reminder - Web Application Architecture Patterns • Thin Web Client: • Little control of client’s configuration • Standard web browser • All business logic executed on the server • Thick Web Client: • Significant business logic executed on the client using dynamic HTML, Java applets etc. • HTTP used for communication with server • Web Delivery: • May support distributed objects where web browser acts as a delivery and container device for the objects • Uses additional protocols such as RMI, IIOP and DCOM
Thin Web Client Design • Thin web client actors only interact with client pages & server pages only interact with server resources • Need to incorporate client & server pages in sequence diagrams • Boundary objects from analysis model become client pages • Transform controller objects become server pages
Sequence Diagram for Thin Web Client Conallen, J. (2000)
Thin Web Client Design • Server-side objects can be overloaded • Executing business logic • Building user interface to send to client • Can alleviate this by separating business logic processing from interface building • Conceptual web pages and business objects
Logical-view classes related to checking-out a shopping cart
Forms & Frames • <<Form>> objects are aggregates of client pages • Standard input elements submitted for processing by server page • Stereotypes & tagged values can add information • Frames <<framesets>> allow browser windows to be subdivided into panes each containing its own webpage • Each pane is a target that other client pages can request web pages for
Shipping address collection form Conallen, J. (2000)
Thick Web Client Design • Client-side scripting allows processing on client • e.g. recalculation of shopping cart after quantity changes • Functionality can also be provided by ActiveX controls, Java applets & JavaBeans components – client pages can invoke operations on them • Server objects interact with server-side resources to provide functionality
Class Diagram with Client Page that uses ActiveX components Conallen, J. (2000)
Web Delivery Design • Distributed objects can provide real flexibility • RMI/IIOP or DCOM provides additional communication protocols • Direct communication between client & server objects improves efficiency • Frequently business logic is initially modelled without deployment to simplify developer understanding • Deployment view of architecture covers these issues
Web Delivery Deign – Sequence Diagram (without deployment shown) Online Sporting Event System – Conallen (2000)
Summary • Outlined a range of UML stereotypes available for the modelling of web applications • Using a set of UML models illustrated the modelling of web applications based on the architecture patterns: • Thin Web Client • Thick Web Client • Web Delivery • Demonstrated the use of UML extensions in web application models
References • Conallen, J. (2000) Building Web Applications with UML Addison Wesley • Conallen, J. (1999) Modelling Web Application Architectures with UML Communications of the ACM volume 42, number 10 • Ceri, S., Fraternali, P. & Matera, M. (2002) Conceptual modelling of data-intensive Web applications IEEE Internet Computing volume 6, number 4