• Tidak ada hasil yang ditemukan

Developing a Web--based system is no longer an event, it is

N/A
N/A
Protected

Academic year: 2018

Membagikan "Developing a Web--based system is no longer an event, it is"

Copied!
49
0
0

Teks penuh

(1)

Pendahuluan

Pendahuluan dalam

dalam

Perekayasaan

Perekayasaan

Aplikasi

Aplikasi Web

Web

Aplikasi

Aplikasi Web

Web

Dr. Mohammad

Dr. Mohammad IqbalIqbal Thanks to

(2)

Premis

Premis dasar

dasar

Developing a WebDeveloping a Web--based system is no longer an event, it is based system is no longer an event, it is

a process a process

WebWeb--based systems are growing systemsbased systems are growing systems

WebWeb--based systems are growing systemsbased systems are growing systems

WebWeb--based applications are adding a whole new based applications are adding a whole new

(3)

Terminologi

Terminologi

Web System Web System –– an infrastructure or system enabling the an infrastructure or system enabling the

operation of a Web application operation of a Web application

Web Application Web Application –– a distributed application that a distributed application that

Web Application Web Application –– a distributed application that a distributed application that

accomplishes a certain business need based on the accomplishes a certain business need based on the

technologies of WWW and that consists of a set of Web technologies of WWW and that consists of a set of Web--specific resources

(4)

Awalnya

Awalnya Web

Web itu

itu Sederhana

Sederhana

“Even simple rules lead to complex behavior” “Even simple rules lead to complex behavior” –– Wolfram, Wolfram, New Science

New Science, 2002, 2002

“It is now technically possible and feasible to put the “It is now technically possible and feasible to put the

“It is now technically possible and feasible to put the “It is now technically possible and feasible to put the

entire creative works of man online”

entire creative works of man online” –– KahleKahle, The Internet , The Internet Archives

Archives

EE--commerce (Web/Internet) accounted for 2% of US retail commerce (Web/Internet) accounted for 2% of US retail

sales in 4Q, 2004

(5)

Laju

Laju Kegagalan

Kegagalan Proyek

Proyek Software

Software

(1/2)

(1/2)

IEEE Software March/April 2005

(6)

Laju

Laju Kegagalan

Kegagalan Proyek

Proyek Software

Software

(2/2)

(2/2)

IEEE Software March/April 2005

(7)

Problems

Problems pada

pada Proyek

Proyek Berbasiskan

Berbasiskan

Web

Web berskala

berskala besar

besar

(8)

Bagaimana untuk sistem Web

Yang kompleks ?

(9)

Tingkat Kompleksitas

Tingkat Kompleksitas

Web Application Service-Based Web Application and Federations Dynamically Created Site Comp lex Static Site Data Collector Site Dynamic Data Access and Federations Service Application Centered Document Centered Simp le
(10)

Karakteristik

Karakteristik

Today’s focus

Today’s focus on largeon large--scale scale and ubiquitously useable Web Applicationsand ubiquitously useable Web Applications Many Users

Many Users –– many languages many languages –– many culturesmany cultures Different access mechanisms

Different access mechanisms Many User Agents

Many User Agents Presents

Presents large volume of interrelated informationlarge volume of interrelated information (including different media) (including different media) and processes and processes Appropriate presentation Appropriate presentation Appropriate presentation Appropriate presentation

Progression through activities

Progression through activities –– finish one thing before starting anotherfinish one thing before starting another Often guides user

Often guides user

Growing and increasing

Growing and increasing complexity complexity

Many product iterations/versions/refinements (calls for

Many product iterations/versions/refinements (calls for Reuse)Reuse)

Many developers and operators, complex handling of temporal media (e.g. Many developers and operators, complex handling of temporal media (e.g. publishing of company news)

publishing of company news)

Customization, Personalization, Security issues Customization, Personalization, Security issues and a lot more...

and a lot more... E.g. “Up

(11)

Generasi ke

Generasi ke--4 Sistem Web?

4 Sistem Web?

Identification Provider / Security Token Service

IP/STS IP/STS Security Context Presence / Location Server P/LS P/LS Presence/Location Context Cluster: Classification Classification Classification

Classification ClassificationClassification

Discovery Discovery

SOA Functionality

 Composition Engine  Federation, Security  Transaction, etc.

Configuration/Context

 Components, End Points  Semantic Web

 Policy, Permissions, etc.

Model

Model--drivendriven support systems support systems

Communication

Web Services Universe

HTTP/SOAP

SOAP =

(12)

Pengembangan

Pengembangan Aplikasi

Aplikasi Web

Web

Still Ad

Still Ad--Hoc instead of a disciplined procedureHoc instead of a disciplined procedure

Still AdStill Ad--Hoc instead of a disciplined procedureHoc instead of a disciplined procedure

CopyCopy--andand--Paste ParadigmPaste Paradigm

Lack between Design Model and Implementation ModelLack between Design Model and Implementation Model

Design concepts get lost in the underlying modelDesign concepts get lost in the underlying model

Short lifecycle of a Web Application Short lifecycle of a Web Application --> Maintenance and Evolution > Maintenance and Evolution

issues

issues --> Reuse issues> Reuse issues

(13)

Pengembangan

Pengembangan Aplikasi

Aplikasi Web

Web Saat

Saat Ini

Ini

Lacks rigor, systematic approachLacks rigor, systematic approach

The completed system is not what the user wantsThe completed system is not what the user wants

System not developed on time, cost overrunsSystem not developed on time, cost overruns

Lacks scaleability and maintainability, hence limited useful Lacks scaleability and maintainability, hence limited useful

Lacks scaleability and maintainability, hence limited useful Lacks scaleability and maintainability, hence limited useful

life life

Does not meet performance requirementsDoes not meet performance requirements

(14)

Sistem

Sistem Web : Problem

Web : Problem

ProblemsProblems

Inability to maintainInability to maintain

Unable to meet evolving needs and grow at the rate needed Unable to meet evolving needs and grow at the rate needed ––

scaleability scaleability

Unreliable Unreliable –– crashescrashes

Unreliable Unreliable –– crashescrashes

WebWeb--dependent organizations cannot afford to havedependent organizations cannot afford to have

Faulty systems Faulty systems –– reliability, security issuesreliability, security issues

Frequent downtime Frequent downtime –– dependabilitydependability

Wrong, inconsistent, or stale content/informationWrong, inconsistent, or stale content/information

(15)

Isu

Isu Pengembangan

Pengembangan Web

Web

Many developers think that Web application development is just Many developers think that Web application development is just

accomplished using “off the shelf” tools accomplished using “off the shelf” tools

They have been taught to think this wayThey have been taught to think this way

Certain classes of applications do fit this simple generalizationCertain classes of applications do fit this simple generalization

Certain classes of applications do fit this simple generalizationCertain classes of applications do fit this simple generalization

Many other Web applications do notMany other Web applications do not

“There is more to Web application development than visual design and “There is more to Web application development than visual design and

user interface” user interface”

Planning, system design, testing, continual maintenance, quality Planning, system design, testing, continual maintenance, quality

(16)

Pertimbangan

Pertimbangan Kualitas

Kualitas ??

Lack of consideration to:Lack of consideration to:

NavigationNavigation

AccessibilityAccessibility

ScalabilityScalability

Compatibility and Compatibility and

interoperability interoperability

SecuritySecurity

ReadabilityReadability

ReliabilityReliability

MaintainabilityMaintainability

(17)

Pengembangan

Pengembangan Web

Web –– Tantangan

Tantangan

Politis

Politis (Non

(Non teknis

teknis))

(18)

Ringkasan

Ringkasan Pengembangan

Pengembangan Sistem

Sistem

Web

Web kini

kini (1/2)

(1/2)

Less attention is given to development methodologies, testing and Less attention is given to development methodologies, testing and

evaluation, quality assessment and control 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

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, maintenance management, metrics, maintenance

Calls for significant systemCalls for significant system--level and design decisionslevel and design decisions

It is an exercise It is an exercise –– not an eventnot an event

Legitimate concern about the manner in which they are created and Legitimate concern about the manner in which they are created and

their long

(19)

Ringkasan

Ringkasan Pengembangan

Pengembangan Sistem

Sistem

Web

Web kini

kini (2/2)

(2/2)

In many cases, Web systems development isIn many cases, Web systems development is

Chaotic Chaotic -- semrawutsemrawut

FailureFailure--prone prone –– rawanrawan kegagalankegagalan

Unsatisfactory Unsatisfactory –– tidaktidak nyamannyaman

(20)

Fakta bahwa Sistem Web

Adalah Target #1

(21)

Resiko

Resiko Bisnis

Bisnis berbasiskan

berbasiskan Web

Web

Long system delivery timeLong system delivery time

Low responsiveness to business changesLow responsiveness to business changes

High project development and ongoing support costsHigh project development and ongoing support costs

High project development and ongoing support costsHigh project development and ongoing support costs

(22)

Harapan

Harapan pada

pada Bisnis

Bisnis yang

yang

berbasiskan

berbasiskan Web

Web

Project delivery time Project delivery time –– shortershorter

System quality System quality –– improvedimproved

Technology investment Technology investment -- optimizedoptimized

(23)

Membutuhkan

Membutuhkan Proses

Proses

Domination of the different requirements calls for a systematic Domination of the different requirements calls for a systematic

approach approach

Producing highProducing high--quality applications in a costquality applications in a cost--effective wayeffective way

Goal Goal –– application should beapplication should be

Maintainable and evolvableMaintainable and evolvable

ReliableReliable

EfficientEfficient

Appropriate for UIAppropriate for UI

(24)

Atau

Atau sekedar

sekedar Perekayasaan

Perekayasaan

Perangkat

Perangkat Lunak

Lunak sederhana

sederhana saja

saja??

“Fundamental differences [between hypermedia and other disciplines] however, make a pure transposition of

techniques both difficult and inadequate. An important techniques both difficult and inadequate. An important part of hypertext design concerns aesthetic and cognitive aspects that software engineering environments do

not support.”

(25)

Web Development vs. Software

Web Development vs. Software

Development

Development

They are different due to the nature and distinct They are different due to the nature and distinct

requirements of Web

requirements of Web--based systemsbased systems

Even though WebEven though Web--based systems often require based systems often require

Even though WebEven though Web--based systems often require based systems often require

programming and specialty software, the development of programming and specialty software, the development of that software is often unique

(26)

Web

Web--Based Systems vs. Software

Based Systems vs. Software

(1/3)

(1/3)

WebWeb--based systems:based systems:

Are often documentAre often document--oriented containing static or dynamic oriented containing static or dynamic

content content

More emphasis on “look and feel”More emphasis on “look and feel”

More emphasis on “look and feel”More emphasis on “look and feel”

Are “contentAre “content--driven” driven” –– process is driven by the availability of process is driven by the availability of

content content

Need to cater to users with diverse skills and capabilitiesNeed to cater to users with diverse skills and capabilities

Are typically constrained to a short development time Are typically constrained to a short development time

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

(27)

Web

Web--Based Systems vs. Software

Based Systems vs. Software

(2/3)

(2/3)

WebWeb--based systems:based systems:

Differ by means of their access and delivery mediumDiffer by means of their access and delivery medium

Have different life spansHave different life spans

Have differing development requirementsHave differing development requirements

Have differing development requirementsHave differing development requirements

Developers are vastly varied in terms of their background, skills, Developers are vastly varied in terms of their background, skills,

knowledge, and system understanding knowledge, and system understanding

(28)

Web

Web--Based Systems vs. Software

Based Systems vs. Software

(3/3)

(3/3)

WebWeb--based systems:based systems:

Should be scalableShould be scalable

Have varying performance requirements Have varying performance requirements –– must be able to must be able to

cope with uncertain, random heavy demands on services cope with uncertain, random heavy demands on services cope with uncertain, random heavy demands on services cope with uncertain, random heavy demands on services

Must be secureMust be secure

(29)

Categories of Web

Categories of Web--Based Systems

Based Systems

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

(30)

Engineering

Engineering

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

engineering:

“Engineering is about the systematic application of scientific “Engineering is about the systematic application of scientific

knowledge in creating and building cost

knowledge in creating and building cost--effective effective solutions to practical problems”,

solutions to practical problems”, Berry [Report No. CMU/SEI

(31)

Why Engineering?

Why Engineering?

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

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

Skills of architects and all kinds of engineers are different Skills of architects and all kinds of engineers are different

Skills of architects and all kinds of engineers are different Skills of architects and all kinds of engineers are different

from those needed for designing and building simple from those needed for designing and building simple structures and simple systems

(32)

What is Web Engineering?

What is Web Engineering?

There is still no common answer There is still no common answer

“Web Engineering is concerned with establishment and use of sound “Web Engineering is concerned with establishment and use of sound scientific, engineering and management principles and disciplined and scientific, engineering and management principles and disciplined and systematic approaches to the successful development, deployment systematic approaches to the successful development, deployment and maintenance of high quality Web

and maintenance of high quality Web--based systems and based systems and applications”, SIGWEB Newsletter

applications”, SIGWEB Newsletter

“Web Engineering is a discipline among disciplines, cutting across “Web Engineering is a discipline among disciplines, cutting across applications”, SIGWEB Newsletter

applications”, SIGWEB Newsletter

“Web Engineering is a discipline among disciplines, cutting across “Web Engineering is a discipline among disciplines, cutting across

computer science, information systems, and software engineering, as computer science, information systems, and software engineering, as well as benefiting from several non

well as benefiting from several non--IT specializations”, IEEE IT specializations”, IEEE Multimedia

Multimedia

““While Web Engineering adopts and encompasses many software While Web Engineering adopts and encompasses many software engineering principles, it incorporates many new approaches, engineering principles, it incorporates many new approaches,

methodologies, tools, techniques, and guidelines to meet the unique methodologies, tools, techniques, and guidelines to meet the unique requirements of Web

requirements of Web--based systems. Developing Webbased systems. Developing Web--based systems based systems is significantly different from traditional software development and is significantly different from traditional software development and poses many additional challenges

(33)

Web Engineering

Web Engineering

The application of systematic, disciplined, and quantifiable

approaches to the design, production, deployment,

operation, maintenance and evolution of Web-based

operation, maintenance and evolution of Web-based

software products.

(34)

Web Engineering (1/2)

Web Engineering (1/2)

A holistic and proactive approach to Web systems developmentA holistic and proactive approach to Web systems development

Offers systematic approaches and disciplined processes for Offers systematic approaches and disciplined processes for

development development

Deals with the management of complexity and diversity of Web Deals with the management of complexity and diversity of Web

development development

Brings to WebBrings to Web--based system developmentbased system development

ControlControl

Risk minimizationRisk minimization

(35)

Web Engineering (2/2)

Web Engineering (2/2)

Other factorsOther factors

Document orientationDocument orientation

Navigational designNavigational design

Changing technologyChanging technology

Changing technologyChanging technology

Budget and time constraintsBudget and time constraints

People and internal politicsPeople and internal politics

Division between theory and practiceDivision between theory and practice

(36)

Goals of Web Engineering

Goals of Web Engineering

Develop high quality Web applicationsDevelop high quality Web applications

EffectiveEffective

EfficientEfficient

Achieve desired applicationAchieve desired application

Achieve desired applicationAchieve desired application

Maintain and evolveMaintain and evolve

Plan for change Plan for change –– solution may change the problemsolution may change the problem

Encourage the use of systematic, disciplined and Encourage the use of systematic, disciplined and

(37)

•Process •Design

•Implementation •Test

•Design & Structure Information Space •Navigation

•Visualization

Key Knowledge Areas

Key Knowledge Areas

Web Engineering Software Engineering Hypermedia •Physical Layer •Internet Layer •Transport Layer •Performance •Test •Operation •Maintenance •Visualization •Usability •Collaboration

•Data Design, ER,... •RDBMS

•Query Languages •Strg.Devices: FS,...

Engineering

Network

Engineering InformationSystems

(38)

Web Engineering Activities (1/3)

Web Engineering Activities (1/3)

Requirements specification and analysisRequirements specification and analysis

WebWeb--based system analysis and designbased 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

WebWeb--based realbased real--time applications developmenttime applications development

WebWeb--based multimedia application developmentbased multimedia application development

Testing, verification and validation techniques and toolsTesting, verification and validation techniques and tools

(39)

Web Engineering Activities (2/3)

Web Engineering Activities (2/3)

Management of access to applications and privilegesManagement of access to applications and privileges

Configuration and project managementConfiguration and project management

“Web metrics” “Web metrics” –– metrics for estimation of development effortmetrics 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

(40)

Web Engineering Activities (3/3)

Web Engineering Activities (3/3)

Graphics, animation, and streamingGraphics, animation, and streaming

(41)
(42)
(43)

Process Models and Web Engineering (1/2)

Process Models and Web Engineering (1/2)

Code

Code--andand--fix model (ad hoc development)fix model (ad hoc development) The Waterfall model

The Waterfall model Prototyping model Prototyping model

Evolutionary Development model Evolutionary Development model Evolutionary Development model Evolutionary Development model Spiral model

Spiral model

(44)

Process Models and Web Engineering (2/2)

Process Models and Web Engineering (2/2)

MSFv3 Process model MSFv3 Process model Agile Processes

Agile Processes Reuse

Reuse--Oriented ApproachesOriented Approaches

WebComposition Process model WebComposition Process model WebComposition Process model WebComposition Process model Agile Processes, XP, Scrum

(45)

Approaches to Managing a Project (1/2)

Approaches to Managing a Project (1/2)

(46)

Approaches to Managing a Project (2/2)

Approaches to Managing a Project (2/2)

(47)
(48)
(49)

Referensi

Dokumen terkait

Adapun kelebihan pembelajaran kooperatif tipe snowball throwing : (1) meningkatkan efesiensi guru dalam mengelola kelas yang kreatif, dan menyenangkan sehingga

2016, maka Pokja Jasa Konstruksi 1 (satu) - ULP Tanjung Jabung Timur mengundang Saudara Direktur/yang mewakili dengan membawa Surat Kuasa yang ditandatangani oleh Direktur

Demografi adalah ilmu yang mempelajari persoalan dan keadaan perubahan-perubahan penduduk atau dengan perkataan lain segala ihwal yang berhubungan

Penelitian ini menggunakan data sekunder selama 15 tahun sejak tahun 1997- 2011 dengan menggunakan perhitungan analisis regresi linier berganda untuk mengetahui hubungan

Informasi tersebut dapat berupa karya peserta didik dari proses pembelajaran yang dianggap terbaik, hasil tes (bukan nilai), atau informasi lain yang relevan

[r]

1) Perbuatan melawan hukum dilakukan untuk memperkaya diri sendiri, atau orang lain atau suatu koorporasi atau kelompok yang dapat merugikan keungan Negara.. Ancaman hukuman

Sebagai bahasa ilmu pula, khususnya melalui peranannya sebagai bahasa penghantar utama sistem pendidikan negara, bahasa Melayu mengisi erti pendemokrasian pendidikan,