dynamic graphical user interface

23
8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE http://slidepdf.com/reader/full/dynamic-graphical-user-interface 1/23 DYNAMIC GRAPHICAL USER INTERFACE  AJMAL BEG 

Upload: ajmal-beg

Post on 30-May-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 1/23

DYNAMIC GRAPHICAL USER

INTERFACE

 AJMAL BEG 

Page 2: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 2/23

Author and/or publisher shall not be liable for any kind of direct and/or indirect loss as a result of using

information in this book.

ISBN: 97!"!9"#$%"!&!'

(

Page 3: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 3/23

)edicated to my family

'

Page 4: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 4/23

&

Page 5: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 5/23

Introduction

*any of the enterprise systems used in core business processes in large organi+ations consist of

 persistence layer, business logic layer and the presentation layer. Some of the enterprise systems

completely separate the presentation layer from the business logic and persistence layer, thus allo-ing

usage of multiple ersions of the graphical user interface -ith the same business logic. hese solutions

further proide end!user means at the user client to manually s-itch the ersion of the graphical user

interface at the presentation layer. 0ne of the main merits of proiding functionality of s-itching

 bet-een different is that it allo-s the user to s-itch to lo- hard-are resource consuming graphical user

interface 123I4 ersion if there are not sufficient hard-are resources aailable at the client machine.

his book describes a method, -hich dynamically checks the aailability of the hard-are resources at

the client and dynamically s-itches the graphical user interface -ithout any manual interention of the

user. he merit of the proposed approach is that it help user run multiple resource consuming

applications presentation layers concurrently at optimal performance -hile minimi+ing the risks of

creating 563 or A* bottleneck at the client machine.

#

Page 6: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 6/23

Chapter 1

Need or d!na"ic #raphica$ u%er interace

86 systems are -idely used in organi+ations of different si+es 1laus et. al. (""" 3mar (""&4. *any

critical business applications such as 86 systems consist of follo-ing three computing layers 1;rank

(""& 5han %999 Schneider (""$4:

• 6ersistence layer -hich resides on single or multiple database systems.

Business logic layer -hich is stored and e<ecuted on the application serers.

• 6resentation logic -hich is e<ecuted on -eb or -indo-s clients of the users.

8ach of the aboe computing layers consumes hard-are resources such as 563 and memory.

)ifferent approaches are used to optimi+e the utili+ation of the hard-are resources on each of the

aboe computing layers. ;or e<ample, the hard-are resources at the persistence layer are generally

optimi+ed by the database tuning e<perts using approaches such as:

• 0ptimi+ing of application serer technical enironment such as tuning of database data buffer

and cursor caches 1Schneider (""$4.

• 3sing fast data storages 1Seamons et. al. %99#4.

• 0ptimal distribution of data files on disk storages 16athak %99"4.

• 5reating of appropriate inde<es on different database tables 1=ifschit+ (""#4.

• *aintaining of database statistics to help database make right decision about access path

selection 1uberg (""'4.

• eorgani+ation of the database inde<es and files.

• Archiing of tables to reduce the si+e of ery large database tables.

$

Page 7: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 7/23

• =oad balancing -ith multiple databases 1Bouganim, %99$4.

• 0ptimi+ing of batch >obs scheduling to flatten the peak load 1;eitelson, %9974.

• echnical optimi+ing of operating system enironment on -hich database runs 1*usumeci et.

al. (""(4.

ypical approaches used by the technical and functional e<perts to optimi+e the hard-are resource

utili+ation at the application serer are:

• 0ptimi+ing of database technical enironment such as tuning of data buffers, memory paging

areas and processes handling the data 1*illsap, (""'4.

• echnical optimi+ing of operating system on -hich application serers run 1*usumeci et. al.

(""(4.

• uning of the e<pensie S?= statements -hich are issued by the business logic and puts e<tra

load on the database resources 1Burleson (""% @enderson (""% 2ulut+an (""(4.

• 6rogram optimi+ing to reduce the olume of the data -hich is brought from database and saed

in the internal tables at the application serer 15ra-ford, ("""4.

• Simplifying of business logic to reduce the resource reuirements of the program.

3ser Interface is -ell e<plored area. Significant number of user interface tools, 23I design languages

and methods has been inestigated 1*yers %99# Bederson et. al. (""" *yers et. al (""" Abrams et.

al %9994. @o-eer, optimi+ation of presentation layer for large business applications such as 86 is

not an e<tensie research focus area. he only approaches aailable to optimi+e the hard-are

utili+ation at the presentation layer in large scale business applications are:

7

Page 8: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 8/23

• S-itching to non!graphical ersion of the presentation layer. Such as accessing contents

-ithout rich graphical images.

• S-itching to light ersion of the 23I controls -here the presentation layer proides

multiple 23I controls ersions -ith capability to s-itch among them.

he first option is only aailable for those business applications -hich proide t-o ersions of

contents to be presented at the application layer. 0ne ersion is less graphical than the other

aailable ersion and consumes less hard-are resources at the presentation layer. he demerits of

adopting the first approach are:

• 8<tra -orkload and the deelopment cost for the soft-are manufacturer and the content

deeloper as there is needs to prepare t-o ersions of the contents.

•  Non graphical ersion of the contents may be more difficult to comprehend compared to

graphical ersion of the contents.

•  Not all information can be presented in a non!graphical -ay. Such graphical contents

are generally less informatie compared to the graphical ersion of the contents

he second approach completely separates the presentation and the business logic layer and,

 proides at least one set of light 23I controls and another set of heay 23I controls. he light 23I

consumes less hard-are resources and the end user can s-itch bet-een heay and the light 23I

through easy to use interface to reduce the hard-are resource consumption. 86 solutions from

SA6 proide the functionality at the presentation leel to s-itch bet-een t-o ersions of 23I

controls 1Schneider (""$4. @eay ersion of 23I controls uses more resources compared to light

ersion of 23I controls. he functionality allo-s s-itching among the t-o ersions, thus allo-ing

the client to be run on client machines -hich are not ery po-erful. he second approach is

superior to the first approach as it does not hae the aboe mentioned demerits of the first

approach. @o-eer, the issues -ith adopting the second approaches from the point of non!technical

end users are:

• he hard-are of end user -hich runs the presentation layer has number of soft-are

Page 9: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 9/23

Page 10: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 10/23

Chapter &

Architecture

;igure % sho-s the oerall architecture -hich allo-s the dynamic s-itching of the graphical user

interface at the presentation layer -hile considering dynamic hard-are resource consumptions at

the client machine. he business application consists of three layers. he persistence layer e<ists at

the database. he business logic layer e<ists at the middle-are. he presentation layer is e<ecuted

at the client machines of the business application serer. he presentation layer can be a

functionality installed on the client or it can be a program -hich runs in the bro-ser at the client

machine. At the end users machine a est 6rogram is scheduled, -hich runs periodically and

determines follo-ing t-o aspects:

• Impact on performance -hen presentation layer s-itches from heay 23I to a light 23I.

•Impact on performance -hen presentation layer s-itches from light 23I to heay 23I.

23I 6erformance *onitor Serer plays a central role in the dynamic s-itching of the graphical user

interface at the presentation layer. 23I 6erformance *onitor Serer performs follo-ing functions:

• It receies reuest from client machines for generation of est 6rograms.

• It installs the est 6rograms on the client machines.

It schedules the est 6rograms.

he architecture sho-n in ;igure % is a simplified ersion of corporate systems. he corporate

system landscape may consist of multiple databases. Similarly, the clients may be accessing the

 business logic -hich is spread oer multiple application serers. *ultiple 23I 6erformance

*onitor Serers using load balancing techniues may e<ist in the case of ery large corporate

net-ork. In the case of a small system landscape, machine hosting application serer or the

database serer may also proide the functionality of the 23I 6erformance *onitor.

Page 11: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 11/23

  Fi# 1' Architecture o d!na"ic #raphica$ u%er interace approach

Page 12: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 12/23

Page 13: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 13/23

  ;ig (: 2enerating and installing est 6rogram

Page 14: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 14/23

3.1 Identifying programs with performance issues

here are t-o scenarios for using the dynamic graphical user interface:

• he dynamic graphical user interface can be enabled for all type of soft-are or

functionalities that run on the client machine.

• he dynamic graphical user interface can be enabled only for those programs or

functionalities for -hich the end user complains about the performance

he step % in the flo- sho-n in ;igure ( refers to the second scenario, in -hich the dynamic user

interface is enabled only for the screens, programs or -eb pages -hich hae the potential of

consuming higher hard-are resources. he end user or the administrator can determines such

 programs.

3.2 Generating performance test description

;igure ' illustrates the user interface -hich can be used to generate D*= describing the

6erformance est )escription at the second step in the aboe flo- diagram. he end user may select

all the elements in a screen to be ealuated for performance testing or >ust one of the elements

contained in the program -hich consumes the most computing resources. he user interface allo-s

selecting the controls -ithin the program that can be tested for performance gains by s-itching to

the 23I controls -hich consumes less computing resources. =etEs assume a scenario, -here a user

of a business application generally displays large number of data in a table and e<periences slo-er

response. By s-itching from a table component -hich proides full spreadsheet capabilities to a

simple table -hich does not proide calculation capability and only displays the table contents, may

help the user meet the reuirement of better performance for displaying data. he user -ants to

dynamically s-itch to a table component -hich consumes less computing resources at the time the

client machine is e<periences the resource crunch. he user selects the table as the component for

-hich better performance is desired using the interface sho-n in ;igure '.

;or an application, -hich proides capability to s-itch among t-o types of tables, one -hich is

Page 15: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 15/23

Page 16: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 16/23

Page 17: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 17/23

 

;ig ': 3ser interface for creating description of the performance test

3.3 chedu!ing 

;igure & sho-s a graphical user interface that can be used to schedule the est 6rogram on the end

user machine. It can be used to select a test from number of different tests already created. It can be

used to select the application and the serer on -hich it is running. he presentation layer of the

selected application -ill be monitored for dynamic s-itching of graphical user interface according

to aailability of the resources at the client machine. he graphical user interface can be used to

describe the period of time during -hich the dynamic s-itching of the graphical user interface -ill

 be alid. he same interface can include the @H resource consumption thresholds at -hich the

dynamic graphical user interface s-itching -ill be actiated. he field -ith label *onitoring

triggering 23I ime1O4Kin ;igure # configures the est 6rogram to actiate the dynamic s-itching

of the graphical user interface, if time spent on generating the screens at the client is more than #"O

Page 18: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 18/23

of the total time of processing at the presentation layer.

;igure # sho-s ho- the est 6rograms run on the client machine. est 6rograms generates dummy

screens based on the est )escription and fills it -ith dummy data -hile measuring the time spent

on generating the screen in background. In case, light 23I controls are in use, it looks for

opportunity to s-itch back to heay 23I controls as soon as the hard-are resources are aailable

on the client machine layer. At time -hen heay 23I controls are in use, it runs tests to see if there

is a hard-are resource problem at the presentation layer and s-itching to light ersion of 23I

control -ill help. If s-itching to alternatie 23I control helps, it s-itches to alternatie ersion of

23I controls.

In case, the presentation layer runs in the -eb client, -here the html code is sent from a serer, the

s-itching bet-een the light and heay 23I at the presentation layer can be reali+ed using different

methods such as:

• 5hanging the contents of the CaaScript or html that is sent from the application serer to

the -eb client.

• )isabling script usage on the -eb client.

• Sending different graphical contents from the application serer to the -eb client.

• 5hanging the plug!in being used

Page 19: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 19/23

 

;igure &: 3ser interface for scheduling est 6rogram

Page 20: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 20/23

  ;igure #: ;unctionality of est 6rogram running at the presentation layer 

Page 21: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 21/23

Chapter *

Su""ar!

5omputing systems consisting of persistence layer, business logic layer and the presentation layer

are e<tensiely used in corporations. 6ersistence layer and the business logic layer are generally the

focus for performance optimi+ation. he presentation layer runs on the client machines and

generally reuires uite e<tensie computing resources for smooth running of presentation layer.

;or a company -ith large number of client machines, the cost of purchasing ne- client machines

can be significant as graphical user interface at the presentation layer becomes more and more

resource consuming due to arrial of more functional and graphical 23I controls. his book

 presents a method that can be used to dynamically change the user interface according to the

aailability of the hard-are resources at the client machine -ithout any manual interention. It

allo-s the user run concurrently presentation layer of multiple applications -ithout creating

resource crunch at the client 65. he described techniue can be used also in case of -eb

applications.

Page 22: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 22/23

Reerence%

P%Q A. 3mar, hird 2eneration )istributed 5omputing 8nironment. Nge Solution Inc, (""&.

P(Q B. A. *yers, 3ser interface soft-are tools, A5* ransactions on 5omputer!@uman

Interaction (!% 1%99#4 $&!%"'.

P'Q B. B. Bederson, C. *eyer, =. 2ood, An 8<tensible Moomable 3ser Interface 2raphics oolkit in

Caa, 6roceedings of A5* Symposium on 3ser Interface and Soft-are echnology 1("""4 %7%!

%".

P&Q B. *yers, S. 8. @udson, . 6ausch, 6ast, present and future of user interface soft-are tools,

A5* ransactions of 5omputer!@uman Interaction 7!% 1("""4 '!(.

P#Q 5. *illsap, 0ptimi+ing 0racle 6erformance, 0Eeilly, (""'.

P$Q ).. Burleson, 0racle @igh!6erformance S?= uning, *c2ra-!@ill, (""%.

P7Q ). 2. ;eitelson , =. udolph , 3. Sch-iegelshohn , . 5. Secik , 6. Hong, 6roceedings of the

Cob Scheduling Strategies for 6arallel 6rocessing 1%9974 %!'&.

PQ 2ian!6aolo ). *usumeci, *. =oukides, System 6erformance uning, (nd 8dition, 0Reilly,

(""(.

P9Q @. laus, *. osemann, 2. 2. 2able, Hhat is 86 Information Systems ;rontiers, (!( 1("""4

%&%!%$(.

P%"Q I. 5ra-ford, . . Hadleigh, Soft-are 0ptimi+ation for @igh!6erformance 5omputers:

5reating ;aster Applications, 6rentice @all 6, (""".

P%%Q. 8. Seamons, J. 5hen, *. Hinslett, J. 5ho, S. uo, 6. Cones, C. Co+-iak, and *.

Subramanian, ;ast and easy I/0 for arrays in large!scale applications, Seenth I888 Symposium on

6arallel and )istributed Systems, Horkshop on *odeling and Specification of I/0. 1%99#4.

P%(Q . @enderson, he 2uruEs 2uide to S?= Serer Stored 6rocedures, Dml, and @tml, Addison!

Hesley 6rofessional, (""%.

P%'Q =. Bouganim, ). ;lorescu, 6. aldurie+, )ynamic =oad Balancing in @ierarchical 6arallel)atabase Systems, =)B 1%99$4 &'$!&&7.

P%&Q =. ;rank, Architecture for integration of distributed 86 systems, %"&!# 1(""&4 &%T&(9.

P%#Q *. Abrams, 5. 6hanourious, A. =. Batongbacal, S. *. Hilliams, C. 8. Shuster, An Appliance!

Independent D*= 3ser Interface =anguage, 5omputer Net-orks %%!%$ %999 %$9#!%7".

P%$Q N. uberg, 2. uberg and *. *attoso, )igging database statistics and costs parameters for

distributed uery processing, =ecture Notes in 5omputer Science, ( 1(""'4 '"%!'%.

P%7Q 6. 2ulut+an, . 6el+er, S?= 6erformance uning, Addison!Hesley 6rofessional, (""(.

P%Q . * 6athak, A. umar, J. 6. 2upta, eliability 0riented Allocation of files on )istributed

Page 23: DYNAMIC GRAPHICAL USER INTERFACE

8/14/2019 DYNAMIC GRAPHICAL USER INTERFACE

http://slidepdf.com/reader/full/dynamic-graphical-user-interface 23/23

Systems, 6roceedings of I888 Symposium on 6arallel and )istributed Systems. 1%99"4 $!9'.

P%9Q S. 5han, Architecture 5hoices for 86 Systems, 6roceedings #th. Americas 5onference on

Information Systems. 1%9994 (%"!(%(.

P("Q S. =ifschit+, *. A. . Salles, Autonomic Inde< *anagement, Second International 5onference

on Autonomic 5omputing. 1(""#4 '"&!'"#.

P(%Q . Schneider, SA6 6erformance 0ptimi+ation 2uide, SA6 6ress, (""$.

P((Q . Schneider, Note ("'9(&: 6erformance &.$ T collectie note, SA6 Serice *arketplace,

(""$.