web engineering ppt

34
An Introduction

Upload: puneetshah15

Post on 07-Mar-2015

1.156 views

Category:

Documents


39 download

TRANSCRIPT

Page 1: Web Engineering PPT

An Introduction

Page 2: Web Engineering PPT

World Wide Web Abbreviated as WWW commonly known as the Web is a system of interlinked hypertext documents

accessed via the Internet The Web is an application that can operate on

global computer networks An indispensable technology

In virtually every aspect of modern living

A transformative technology Changes the way we do things Changes the way we acquire and disseminate information

Page 3: Web Engineering PPT
Page 4: Web Engineering PPT

World Wide Web Properties Unbound in space/time: Information provided on

the Internet is available every day, around the clock, and around the world (pending network operation).

Bound in use context: Web-based hypertext fosters associations among works through links, giving rise to networks of meaning and association among many information sources that may be scattered across the globe and written by many authors

Distributed, non-hierarchical: The Web's technical organization as an application using the Internet for a client/server model influences the disintegration of user focus on a single outlet for experiencing content.

Page 5: Web Engineering PPT

Definitions Web System – an infrastructure or system Web System – an infrastructure or system

enabling the operation of a Web applicationenabling the operation of a Web application

Web Application – a distributed application Web Application – a distributed application that accomplishes a certain business need that accomplishes a certain business need based on the technologies of WWW and that based on the technologies of WWW and that consists of a set of Web-specific resourcesconsists of a set of Web-specific resources

Page 6: Web Engineering PPT

Web-Based Systems In the early days of the Web, we built systems using

informality, urgency, intuition, and art Informality leads to an easy work environment—one in which you can do your own thing.

Urgency leads to action and rapid decision making.

Intuition is an intangible quality that enables you to “feel” your way through complex situations.

Art leads to aesthetic form and function—to something that pleases those who encounter it.

Problem is—this approach can and often does lead to problems

Page 7: Web Engineering PPT

Range of ComplexityRange of Complexity

StaticSite

DataCollector Site

Dynamic DataAccess

Web Application

Service-BasedWeb Applicationand Federations

Dynamically Created

Site

Service

Application CenteredDocument Centered

Com

plex

Sim

ple

Page 8: Web Engineering PPT

But Why? As WebApps become larger and more complex,

Informality remains, but some degree of requirements gathering, planning and design are necessary

Urgency remains, but it must be tempered by a recognition that decisions may have broad consequences

Intuition remains, but it must be augmented by proven management and technical patterns

Art remains, but it must be complemented with solid design

Page 9: Web Engineering PPT

Web Systems: ProblemsWeb Systems: Problems ProblemsProblems

Inability to maintainInability to maintain Unable to meet evolving needs and grow at the rate Unable to meet evolving needs and grow at the rate

needed – scaleabilityneeded – scaleability Unreliable – crashesUnreliable – crashes

Web-dependent organizations cannot afford to haveWeb-dependent organizations cannot afford to have Faulty systems – reliability, security issuesFaulty systems – reliability, security issues Frequent downtime – dependabilityFrequent downtime – dependability Wrong, inconsistent, or stale content/informationWrong, inconsistent, or stale content/information

Web systems problems are not easy to hideWeb systems problems are not easy to hide

Page 10: Web Engineering PPT

Consideration to Consideration to Quality?Quality?

Lack of consideration Lack of consideration to:to:NavigationNavigationAccessibilityAccessibilityScalabilityScalabilityReliabilityReliabilityMaintainabilityMaintainabilityUsabilityUsability

Compatibility and Compatibility and interoperabilityinteroperability

SecuritySecurityReadabilityReadability

Page 11: Web Engineering PPT

Web System Development Web System Development Summary (1/2)Summary (1/2) Less attention is given to development methodologies, Less attention is given to development methodologies,

testing and evaluation, quality assessment and controltesting and evaluation, quality assessment and control Largely relies on individual’s own development practicesLargely relies on individual’s own development practices Lack of realization of its lifecycleLack of realization of its lifecycle

Analysis of needs, redesign, development (including coding), Analysis of needs, redesign, development (including coding), management, metrics, maintenancemanagement, metrics, maintenance

Calls for significant system-level and design decisionsCalls for significant system-level and design decisions It is an exercise – not an eventIt is an exercise – not an event Legitimate concern about the manner in which they are Legitimate concern about the manner in which they are

created and their long-term quality and integritycreated and their long-term quality and integrity

Page 12: Web Engineering PPT

Web System Development Web System Development Summary (2/2)Summary (2/2) In many cases, Web systems In many cases, Web systems

development isdevelopment isChaoticChaoticFailure-proneFailure-proneUnsatisfactoryUnsatisfactory

Page 13: Web Engineering PPT

Why Do You Think That Web Systems are the #1 Target

of Attack?

Page 14: Web Engineering PPT

Risks to Web-Based Risks to Web-Based BusinessBusiness Long system delivery timeLong system delivery time Low responsiveness to business Low responsiveness to business

changeschanges High project development and ongoing High project development and ongoing

support costssupport costs Questionable system qualityQuestionable system quality

Page 15: Web Engineering PPT

Desires of Web-Based Desires of Web-Based BusinessesBusinesses Project delivery time – Project delivery time – shortershorter System quality – System quality – improvedimproved Technology investment - Technology investment - optimizedoptimized

Page 16: Web Engineering PPT

Need for ProcessNeed for Process Domination of the different requirements calls for a Domination of the different requirements calls for a

systematic approachsystematic approach Producing high-quality applications in a cost-effective Producing high-quality applications in a cost-effective

wayway Goal – application should beGoal – application should be

Maintainable and evolvableMaintainable and evolvable ReliableReliable EfficientEfficient Appropriate for UIAppropriate for UI Delivered on time at predictable cost Delivered on time at predictable cost

Page 17: Web Engineering PPT

Or Simply Software Or Simply Software Engineering?Engineering?

“Fundamental differences [between hypermedia and other disciplines] however, make a pure transposition of techniques both difficult and inadequate. An important part of hypertext design concerns aesthetic and cognitive aspects that software engineering environments do not support.”

--Nanard & Nanard

Page 18: Web Engineering PPT

Web Development vs. Web Development vs. Software DevelopmentSoftware Development They are different due to the nature and They are different due to the nature and

distinct requirements of Web-based distinct requirements of Web-based systemssystems

Even though Web-based systems often Even though Web-based systems often require programming and specialty require programming and specialty software, the development of that software, the development of that software is often uniquesoftware is often unique

Page 19: Web Engineering PPT

Web-Based Systems vs. Web-Based Systems vs. Software (1/3)Software (1/3) Web-based systems:Web-based systems:

Are often document-oriented containing static or Are often document-oriented containing static or dynamic contentdynamic content

More emphasis on “look and feel”More emphasis on “look and feel”Are “content-driven” – process is driven by the Are “content-driven” – process is driven by the

availability of contentavailability of contentNeed to cater to users with diverse skills and Need to cater to users with diverse skills and

capabilitiescapabilitiesAre typically constrained to a short development Are typically constrained to a short development

time making it difficult to apply the same levels time making it difficult to apply the same levels of formal planning and testing used in software of formal planning and testing used in software developmentdevelopment

Page 20: Web Engineering PPT

Web-Based Systems vs. Web-Based Systems vs. Software (2/3)Software (2/3) Web-based systems:Web-based systems:

Differ by means of their access and delivery Differ by means of their access and delivery mediummedium

Have different life spansHave different life spansHave differing development requirementsHave differing development requirements

○ Developers are vastly varied in terms of their Developers are vastly varied in terms of their background, skills, knowledge, and system background, skills, knowledge, and system understandingunderstanding

○ Developers differ in their perception of Web Developers differ in their perception of Web systemssystems

Page 21: Web Engineering PPT

Web-Based Systems vs. Web-Based Systems vs. Software (3/3)Software (3/3) Web-based systems:Web-based systems:

Should be scalableShould be scalableHave varying performance requirements – Have varying performance requirements –

must be able to cope with uncertain, random must be able to cope with uncertain, random heavy demands on servicesheavy demands on services

Must be secureMust be secureAre subject to assorted legal, social, and Are subject to assorted legal, social, and

ethical scrutinyethical scrutiny

Page 22: Web Engineering PPT

Categories of Web-Based Categories of Web-Based SystemsSystems

Category Examples

Informational Online newspapers, manuals

Interactive Registration forms

Transactional Electronic shopping

Workflow-oriented Status monitoring

Collaborative work Distributed authoring

Online communities Discussion groups

Web portals Shopping malls

Web services Enterprise applications

Page 23: Web Engineering PPT

EngineeringEngineering

Discussing the term in the context of Discussing the term in the context of (software) engineering:(software) engineering:

““Engineering is about the systematic Engineering is about the systematic application of scientific knowledge in application of scientific knowledge in creating and building cost-effective creating and building cost-effective solutions to practical problems”, solutions to practical problems”,

Berry [Report No. CMU/SEI-92-TR-34]Berry [Report No. CMU/SEI-92-TR-34]

Page 24: Web Engineering PPT

Why Engineering?Why Engineering?

Engineering is associated with “scale-Engineering is associated with “scale-up”up”

New issues arise when scaling by 2+ New issues arise when scaling by 2+ orders of magnitudeorders of magnitude

Skills of architects and all kinds of Skills of architects and all kinds of engineers are different from those engineers are different from those needed for designing and building needed for designing and building simple structures and simple systemssimple structures and simple systems

Page 25: Web Engineering PPT

What is Web What is Web Engineering?Engineering?

There is still no common answerThere is still no common answer““Web Engineering is concerned with establishment and use Web Engineering is concerned with establishment and use of sound scientific, engineering and management principles of sound scientific, engineering and management principles and disciplined and systematic approaches to the successful and disciplined and systematic approaches to the successful development, deployment and maintenance of high quality development, deployment and maintenance of high quality Web-based systems and applications”, SIGWEB NewsletterWeb-based systems and applications”, SIGWEB Newsletter““Web Engineering is a discipline among disciplines, cutting Web Engineering is a discipline among disciplines, cutting across computer science, information systems, and software across computer science, information systems, and software engineering, as well as benefiting from several non-IT engineering, as well as benefiting from several non-IT specializations”, IEEE Multimediaspecializations”, IEEE Multimedia““While Web Engineering adopts and encompasses many While Web Engineering adopts and encompasses many software engineering principles, it incorporates many new software engineering principles, it incorporates many new approaches, methodologies, tools, techniques, and approaches, methodologies, tools, techniques, and guidelines to meet the unique requirements of Web-based guidelines to meet the unique requirements of Web-based systems. Developing Web-based systems is significantly systems. Developing Web-based systems is significantly different from traditional software development and poses different from traditional software development and poses many additional challengesmany additional challenges””, IEEE MultiMedia, IEEE MultiMedia

Page 26: Web Engineering PPT

Web EngineeringWeb Engineering

The application of systematic, disciplined, and quantifiable approaches to the design, production, deployment, operation, maintenance and evolution of Web-based software products.

---Gaedke, 2000

Page 27: Web Engineering PPT

Web Engineering (1/2)Web Engineering (1/2) A holistic and proactive approach to Web systems A holistic and proactive approach to Web systems

developmentdevelopment Offers systematic approaches and disciplined Offers systematic approaches and disciplined

processes for developmentprocesses for development Deals with the management of complexity and diversity Deals with the management of complexity and diversity

of Web developmentof Web development Brings to Web-based system developmentBrings to Web-based system development

ControlControl Risk minimizationRisk minimization Enhanced maintainability and qualityEnhanced maintainability and quality

Page 28: Web Engineering PPT

Web Engineering (2/2)Web Engineering (2/2)

Other factorsOther factorsDocument orientationDocument orientationNavigational designNavigational designChanging technologyChanging technologyBudget and time constraintsBudget and time constraintsPeople and internal politicsPeople and internal politicsDivision between theory and practiceDivision between theory and practiceLack of understanding…Lack of understanding…

Page 29: Web Engineering PPT

Goals of Web Goals of Web EngineeringEngineering Develop high quality Web applicationsDevelop high quality Web applications

EffectiveEffectiveEfficientEfficientAchieve desired applicationAchieve desired application

Maintain and evolveMaintain and evolvePlan for change – solution may change the Plan for change – solution may change the

problemproblem Encourage the use of systematic, Encourage the use of systematic,

disciplined and quantifiable approaches disciplined and quantifiable approaches and process modelsand process models

Page 30: Web Engineering PPT

•Physical Layer•Internet Layer•Transport Layer•Performance

•Process•Design•Implementation•Test•Operation•Maintenance

•Design & StructureInformation Space

•Navigation•Visualization•Usability•Collaboration

•Data Design, ER,...•RDBMS•Query Languages•Strg.Devices: FS,...

Key Knowledge AreasKey Knowledge Areas

Web Engineering

NetworkEngineering

SoftwareEngineering

Hypermedia

InformationSystems

Others...

Page 31: Web Engineering PPT

Web Engineering Activities Web Engineering Activities (1/3)(1/3) Requirements specification and analysisRequirements specification and analysis Web-based system analysis and designWeb-based system analysis and design Web development methodologies and techniquesWeb development methodologies and techniques Migration of legacy systems to Web environmentsMigration of legacy systems to Web environments Web-based real-time applications developmentWeb-based real-time applications development Web-based multimedia application developmentWeb-based multimedia application development Testing, verification and validation techniques and toolsTesting, verification and validation techniques and tools Quality assessment, control and assuranceQuality assessment, control and assurance

Page 32: Web Engineering PPT

Web Engineering Activities Web Engineering Activities (2/3)(2/3) Management of access to applications and privilegesManagement of access to applications and privileges Configuration and project managementConfiguration and project management ““Web metrics” – metrics for estimation of development effortWeb metrics” – metrics for estimation of development effort Performance specification and evaluationPerformance specification and evaluation Update and maintenanceUpdate and maintenance Development models, teams, and staffingDevelopment models, teams, and staffing Human and cultural aspectsHuman and cultural aspects User-centric developmentUser-centric development

Page 33: Web Engineering PPT

Web Engineering Activities Web Engineering Activities (3/3)(3/3) Graphics, animation, and streamingGraphics, animation, and streaming Copyright, legal and social aspectsCopyright, legal and social aspects

Page 34: Web Engineering PPT