CLICK ON EITHER SEMINARS OR PROJECTS TO ACCESS IT.



SEMINARS

Unified Modeling Language (UML)

ABSTRACT

A primary goal of this paper is to stress the need for proper modeling. Unfortunately modeling web application is not obvious. The focus is on the ability of a web application using UML to function as a software application. The purpose of this paper is to present a mechanism to assist web application designers.

With the assumption that modeling is important, and we should model the artifacts of a system, it becomes obvious that web application designers must work with pages. Since UML is Fundamentally Object Oriented, and web pages are not a inherently disconnect arise. The Solution, as presented here, is to apply some new semantics to a special model element; to help bring out their hidden object oriented aspect.

UML has defined a mechanism to allow certain domains to extend the semantics of specific model elements. The extension mechanism allows the inclusion of new attributes, different semantics and additional constraints. When collected together as Tagged Values, Stereotypes and Constraints they form an Extension to UML. This paper gives an Extension UML for web application design.

Index Terms: Web, Client , Server Script , Client Script, Forms, Components, Modeling, Modeling Extension, Page Stereotypes, Server Page, Client Page, Link, Framesets, Target.

Introducing THE UML

The Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. Using UML, programmers and application architects can make a blueprint of a project, which, in turn, makes the actual software development process easier.

History of UML:

Object oriented modeling languages appeared between the mid-1970s and late 1980s as methodologist faced with a new genre of object-oriented programming languages and increasingly complex application began to experiment with alternative approaches to analysis and design. There were few clearly prominent method emerging like Booch, Jacobson’s OOSE ( object-oriented software engineering) , and Rumbaugh’s OMT (object modeling language) . In simple terms , the Booch method was particularly effective for design and construction of projects.A critical mass of ideas started to form by the mid-1990s ,when Grady Booch ,Iver Jacobson and James Rumbaugh began to adopt ideas from each other’s methods .The UML effort started officially in oct 1994 when Rumbaugh joined Booch at Rational Software Corporation. After a year Jacobson joined Rational and the scope of UML project was expanded to incorporate OOSE. These partners contributing to the UML 1.0 defination included Digital Equipment Corp. , HP, I-Logix, Intelli Corp,IBM,Icon Computing,MCI,System House,Micosoft,Oracle,Rational,Texas Instrument and Unisis. Maintaince of UML was taken over by OMG . In June 1998 they release editorial revision , UML 1.2 .

What is the unified modeling language?

Unified: It is the unified approach of the Booch ,OMT , OOSE and other object oriented methods .

Modeling: Modeling is a proven and well accepted engg technique. A model is simplification of reality in UML.

Language: The modeling language like UML is a standard language of software blueprints.

The UML Goals:

1. Be a ready to use expressive visual modeling language that is simple and extensible .

2. Be a programming language independent , process independent .

3. Encourage the growth of object oriented tools market.

4. Be a general purpose, powerful, simple and widely accepted.

Object -Oriented Modeling:

In software there are several ways to approach a model. The two most common ways are from algorithmic perspective and from an object-oriented perspective. Algorithmic perspective was the traditional view of software development. But as requirement change( and they will) and the system grows ( and it will) , system build with an algorithmic focus turn out to be very hard to maintain.

Object-Oriented Paradigm:

Object: The things in the real world are known as Objects. Objects are well-defined representation constructs of concrete or conceptual entities or An Instance Of Class.

Class: A description of set of objects that share the same attributes, operation, relationship, and semantics

Types: Types defines the specification or interfaces for Classes.

Fig1.Object-Oriented Paradigm

UML for Modeling Web Application

Introduction:

Web application has now become the part of our day-to-day life. This is because system designers are recognizing the situation where web applications have very significant advantages over traditional applications. Any system important complexity needs to be designed and medeled. The focus is on the ability of a web application to function as a software application.

Web Site Architecture:

The architecture for the web site is straightforward. We have two approaches for accessing the web pages. One is Basic web application architecture and Dynamic web site architecture. Now more we are considering the Dynamic web site architecture .In this the content of page is not necessarily stored inside the file. It can be assembled at runtime from the information stored in a database. The web server uses a page filter to interpret and execute the steps in the page. This makes it easy to keep the content fresh.

Fig2. Dynamic Web Site Architecture

Web Applications

For those systems where the web server allows the business logic to be affected via web browsers, the system is considered a web application. For all but the simplest web applications the user needs to impart more than just navigational request information.

Pages

The most fundamental component of a web application is the page. Browsers request pages from servers. In the web application development environment like Microsoft’s ASP or Allaire’s Cold Fusion, the pages are combination of static html formatted pages and dynamic scripted pages. The scripted page is the page that contains code that is executed by the web servers. That accesses server resources to ultimately build an HTML page.

Server scripting: Business logic on the server is only activated by the execution of scripts inside the pages required by the browser. The basic aim of this server processing is to update the business state of server and prepare an HTML requested.

Client Scripting: The server is not the only component in a web application that executes scripts. Scripts on the client are e appropriate for immediate data validation, or in assisting navigation.

The only major conceptual difference is server side scripts contained in a page are inherently procedural, while client side scripts are inherently event driven.

Forms

Any serious web application accepts more than navigation input from its users. Web applications often-illicit textual, selectable and Boolean information. The most common mechanism for collecting this type of user input is with HTML forms. An HTML form is a collection of input fields that are rendered in a web page. The basic input elements are; a textbox, text area, checkbox, radio button group, and selection list. Name or ID identifies all the input elements on a form. Each form is associated with an action page. This action page represents the name (and location) of the page that is to receive and process the information contained in the completed form

Components

HTML formatted web pages may also specify components for execution on the client machine. The most common of these components are Java Applets, and ActiveX controls. It should be sufficient to say that compiled components executing in the browser and on the client can make up a significant part of a web application’s architecture.

Frames

The user interface capabilities on the client can be enhanced with the use of frames. Frames and the ability to target browsers, enable the user interface designer to have multiple web pages active and open at the same time. The browser divides up its rectangular client window (where web pages are rendered) into distinct frames (or sub rectangles). Any web page can specify a frameset, and it is possible for a frameset to be embedded inside other framesets. Scripts and components in any of these pages can interact with scripts and content in others. In HTML this is all managed by associating a target with each frame in a browser window. Two additional components; Application Dictionary and Session Dictionary were influenced by Microsoft’s implementation of Active Server Pages and offer a convenient mechanism to manage client side state on the server.

Model of Generalized Web Application Architecture.

Fig3.Model of generalized web application architecture

Modeling

Modeling is important. It helps us to manage complexity. This paper focuses on design models for web applications. But how? Using UML we can express a page as an object. Should the scripts inn a page be identified as methods of a page object? The answer comes from the fact that the Scripts, especially server side scripts, do affect the business behavior of the system. Additionally it is not hard to visualize variables in a scripted page as being attributes of a page and the functions in the page as being its methods. These are appropriate for a design model and for a web application designer.

Modeling Extension

The extension mechanisms allow the inclusion of new attributes, different semantics and additional constraints. When collected together ad Tagged Values, Stereotypes and Constraints they form an Extension to UML. This paper presents an extension of UML for web application designs. The problem of web page having different scripts and variables executed on the server or on the client can be solved in one of two ways. The first would be to define the stereotypes; server method and client method. In page object a method that executes on server will be stereotyped as <> and function that run on the client <>.

Page Stereotypes

A better way to model a page is with two separately stereotyped classes; server page and client page. Any given web page in a web application that has functionality on the server as well as, client can be represented in the model as two separate classes, even though their implementation is in the same file (or component).

Figure 4 Server pages build client pages.

There is fundamental relationship between the server and client stereotypes of a web page. A server page ultimately builds the resulting client page (figure 4).


Figure 5 Server pages can delegate.

Another facility of some web application development technologies is the ability to redirect the processing request to another<>.This relationship can be expressed in the model with the <> association stereotype (fig no 5).

Figure 6 A web page components realizes both server and client pages.

A component in an implementation diagram represents an actual file that is request –able by the web server, and which realizes at least one server page or client page (fig no6).


The stereotype:<>is defined for association between client pages and other pages(fig no 7).

Figure 8 Linking with parameters.

A <> association may be a bi-directional association. A <> relationship from a server page does not make sense. If the hyper link includes parameters, they are be modeled as link attributes off the association (fig no8).


Conclusion

The UML gives you standard way to write a system’s blue prints, covering conceptual things ,such as business process and system function, as well as concrete things, such as classes written in a specific programming language ,database schemas ,and reusable software components.

Since UML is fundamentally object oriented ,and web pages are inherently not a disconnect arises. The solution ,as presented here, is to apply some new semantics to special model element, to help bring out their hidden object oriented aspects.

References:

Book Author Publication Date Edition

1. Unified Modeling . Booch Pearson Education 2001 Fifth

Language User Guide J.Rumbaugh Asia Pte.Ltd

I.Jacobson

2. SAMS Teach J.Schmuller SAMS 1999 First

Yourself UML

3. Database Design For R.J.Muller M.Kaufmann 1999

Smarties UML for

Modeling

4. UML In A Nutshell S. S. Albir O’ reilly 1998 First

Web Sites:

www.rational.com

www.omg.org

www.onesmartclick.com

www.software.ibm.com



TO DOWN LOAD REPORT AND PPT

DOWNLOAD