Title: Architecture Recovery Of Web Applications
1Architecture Recovery Of Web Applications
Ahmed.Hassan_at_uWaterloo.ca Software Architecture
Group University of Waterloo CANADA
2Traditional Software Visualization
3(No Transcript)
4Visualization of Web Applications
5Example of a Web Application
- Island Hopper News
- A sample web app. from MS
6(No Transcript)
7(No Transcript)
8Web Application as a 3-tiered system
9Web Applications
- Online in 60-90 days, Innovate at Web Speed,
Change on a Dime..Asera Inc. - Zero to Portal _at_ Web Speed..Oracle
10SE Challenges for Web Apps?
- The speed of development
- The speed of evolution
- The different sets of concerns
- The expectations of the user
- The origins of the web
11(No Transcript)
12Introduction to ASP
- Simple html file (foo.html)
- lthtmlgt
- Welcome to CNN.COM
- lt/htmlgt
- ASP file (foo.asp)
- lthtmlgt
- Welcome to lt Write(CNN.COM) gt
- lt/htmlgt
13Introduction to ASP
- Interesting asp file (foo2.asp)
- lthtmlgt
- Welcome to lt Write(Server.name) gt
- lt/htmlgt
14Introduction to ASP
- ASP files are preprocessed by the web server
- ASP files access web server built in objects or
distributed objects (COM/DCOM/COM/CORBA) - ASP files can access databases too
15Introduction to ASP
file.asp
file.html
Web Server Pre-processor
COM/ CORBA Objects
Data Tables
Data Flow
16DEMO
- Visualization of the sample web application
17How to visualize web applications?
18Structure of an ASP Page
ASP Page
Client Scripts
Server Scripts
HTML
JScript
Perl
VBScript
VBScript
JavaScript
19Generating the info to visualize
ASP Page
HTML Extractor
DB Access Extractor
ASP Code
ASP Extractor
HTML Facts
ASP Facts
Data Facts
20First Attempt - Visualization
21Generating Views for Web App.
FACTBASE
HTML Facts
ASP Facts
Data Facts
Source Code Facts
Binary Facts
Contain.
Grok
Layout
Viewer
22Visualization
23Visualization
24Conclusion
- Web Apps developers face different challenges
than Traditional Soft - Visualization of Web Apps using our current tools
is possible - Large Web Apps have been visualized
25Revealing some of the magic --- The hidden track!
26Generating Views for Web App.
FACTBASE
HTML Facts
ASP Facts
Data Facts
Source Code Facts
Binary Facts
Contain.
Grok
Layout
Viewer
27The Web App Domain Model
Component Subsystem
ASP, Database, DLL, COM Object, etc.
Java, JavaScript, VBScript, C, C, etc.
28Entity Level Schema for JavaScript
29Entity Level Schema for VBScript
30Common Entity Level Schema for Object Based
Languages
31Component Level Schema for Web Applications
32Architecture Level Schema
33Conclusion
- A Web App is the legacy application of the future
- A tool is built to visualize Web Apps and gain a
better understanding of them - A scalable framework is presented to study Web
Apps - Dynamic Static views are needed to understand
Web Apps
34Every day it becomes clear that the Net (Web) is
taking its place alongside the other great
transformational technologies that first
challenged, and then fundamentally changed, the
way things are done in the world, Lou Gestner,
CEO of IBM Corp.
35A Taxonomy for Web Applications
36Web App. Vs. Traditional App.
- Technical properties of Web App.
- Concerned with data tables, distributed objects
and multimedia objects instead of variables,
procedures and simple objects - Heavy use of scripting to combine components
together - Implemented using multiple languages
37Web App. Vs. Traditional App.
- Non Technical properties of Web App
- Shorter development time expected
- Lower costs expected too!
- Average employment length just over 1 year!!