Please enable JavaScript.
Coggle requires JavaScript to display documents.
W1 - Introduction (not include framework/pattern desc) (Characteristics of…
W1 - Introduction (not include framework/pattern desc)
Web System: an
infrastructure
or system enabling
operation of
Web Application.
.
Web Application: a
distributed
application that accomplishes a certain
business need
based on
technologies of the WWW
and that consists of a
set of web-specific resources
2 tier-Architecture
Web server provide resource to client
Web browser displays returned content from server
3 tier-architecture
C -> N -> W (Request for dynamic page)
W -> N -> D (Data Query)
D -> N -> W (Retrieved Data)
W-> N -> C (Dynamic Web Page HTML File)
Managing Complexity
Web developers often end up
addressing
complexity via
one-off
fixes and tweaks as app reaches
various breaking points
Solution:
Good Design
Modularisation
divide large
app into
more manageable
and
well-defined
pieces that
can build with
specific focus
and
reused
Modularisation Achieved through
Encapsulation
process o
bundling
everything
a module requires
within a
single, cohesive unit
(class/function)
.
Once big complex
modularised
into
solvable sub-problems
,
encapsulation
way of taking
small abstractions
and
compartmentalizing
them
Abstraction
Process of
hiding details
that should not be
observable
when working with module
outside its implementation
reduces
complexity
, avoid
duplication of code
and increase
efficiency
Maintaining as much of a
loose coupling
as possible among app modules
means one
depends
on other
as little
as possible and only in
clearly defined ways
Benefits of Modularisation
Reusability
When reusable:
clear how to make it operate and do new things
can move it
place to place
in application with
confidence
that
everything it needs
to work properly will comes with it
Won't face
unexpected consequences
Maintainability
It's
clear
which
area of app
needs to be changed in order to
affect certain feature
More
reliable
as
reduce risk of side effects
when changes take place
Characteristics of large Web Applications
Continuous Availability
must run
24/7
response time
have to be fast
even at
peak load
Large User Base
large no. of users
management
of no. of simultaneous connection
or
layers of caching
Piece-by-piece Delivery
Many type of s/w
distributed
as complete units
web apps have
many parts
delivered pg by pg
or con by con
Longevity
web apps today even those around many years at
beginning of lifetime
write code under
assumption
years of
changes and maintenance
Multiple environments
environments with
varying screen sizes
older
devices and browsers
write code handle
numerous characteristics
resulting from this
Web Application Development Risk
Low Responsiveness
to business changes
High project development and
ongoing support costs
Completed system
not what user wanted
Unable to meet
evolving needs
and
grow at rate
required (Scalability)
Unreliable
System not
developed on time