software, performance, or engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · software,...

49
(c) 2002 D. A. Menascé. All Rights Reserved. 1 Software, Performance, or Engineering? Daniel A. Menascé Department of Computer Science George Mason University Fairfax, VA, USA www.cs.gmu.edu/faculty/menasce.html

Upload: others

Post on 03-Mar-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 1

Software, Performance, or Engineering?

Daniel A. MenascéDepartment of Computer Science

George Mason UniversityFairfax, VA, USA

www.cs.gmu.edu/faculty/menasce.html

Page 2: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 2

Some Definitions(according to CMU’s SEI)

• Engineering:– Systematic application of scientific knowledge in

creating and building cost-effective solutions to practical problems in the service of mankind

• Software Engineering:– Form of engineering that applies principles of

computer science and mathematics to achieving cost-effective solutions to software problems.

Page 3: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 3

What is (or should be) SE?

Systematic application of principles of computer science and mathematics to the

design, maintenance, and evolution of software systems in such a way that all of

its requirements---functional and non-functional---are met.

Page 4: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 4

A bit of history …

• Software Engineering (SE): around for more than 35 years (1968 NATO conference)– Success in developing methods for

programming in the small and in the large.– Methods for taming the complexity of software

development– Methods and tools to develop and manage

designs, requirements, test cases, configurations, versions, and evolution.

Page 5: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 5

Conventional Engineering

WORKLOAD

ENVIRONMENT

SYSTEM(bridge)

Systems are designed with theworkload and environment inmind

Perfect fit.

Sixty 3-ton vehiclesat 60 mph.

35 mph horizontal winds.

Page 6: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 6

Software Engineering

WORKLOAD

ENVIRONMENT

Design a system and try tofit it into the workload andenvironment.

Does not always fit!

SYSTEM(e-commerce

site)

50 transactions/sec3.5% buys IT Infrastructure

Page 7: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 7

What is (or should be) SE?

Systematic application of principles of computer science and mathematics to the

design, maintenance, and evolution of software systems in such a way that all of

its requirements---functional and non-functional---are met.

Why performance requirements are called non-functional?How can a software system work properly if some of its requirements (e.g.,

performance requirements) are not met?

All requirements should be called functional!Otherwise, they should not be requirements.

Page 8: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 8

More history …

• 21 years ago Connie Smith coined the term Software Performance Engineering(SPE) (CMG’81 paper).

• Claims: – “fix-it” later attitude when it came to

performance.– performance was never a design

consideration.

Page 9: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 9

Some questions …

• Is the term “Performance” in “Software Performance Engineering” redundant?– If SE is Engineering, then it should produce

efficient systems by definition.

• Does it make sense to talk about “Efficient Mechanical Engineering?” – No. Mechanical engineers (and all other CEs)

strive to design efficient mechanisms.

Page 10: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 10

The reality is …

• Performance in SPE is not yet redundant!

• The SPE concepts introduced by Connie Smith over 20 years ago have not yet been incorporated into mainstream software engineering.

Page 11: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 11

Where is the P in SE?

1. Lack of scientific principles and models.• CEs need to rely on principles and models

from mathematics, physics, and computational sciences to design their systems.

• SEs do not need to rely on formal and quantitative models to design and build their systems.

Page 12: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 12

Where is the P in SE?

1. Lack of scientific principles and models.• SE: many advances in terms of formal

models to support the software development life cycle: development, maintenance, and evolution. No universally agreed upon formalisms and quantitative models to support the core of SE.

• SE: Most of the energy devoted to formalisms and methods that support “functional” requirements (over 80% of IEEE TSE papers since 1989).

Page 13: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 13

Where is the P in SE?1. Lack of scientific principles and models.

• PE: mostly addresses issues of system performance from a resource demand point of view.

• PE: most models do not model the application directly, only the demands it places on the physical resources (e.g., QN models).

• PE: layered QN-type models represent the application explicitly. These models are not as widely-known and -adopted as conventional QN models.

Page 14: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 14

Where is the P in SE?2. Education and Curricula Problems.

• The vast majority of undergraduate CS and related curricula do not include any required course in performance evaluation. Exceptions: minimal performance-related hours in OS and networking courses.

• Joint IEEE CS/ACM Task Force on the “Model Curricula for Computing” draft CS curriculum: performance is overlooked!

Page 15: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 15

Joint IEEE CS/ACM Task Force on the “Model Curricula for Computing”

• CS divided into 14 areas:1. Discrete Structures (DS)2. Programming Fundamentals (PF)3. Algorithms and Complexity (AL) 4. Programming Languages (PL) 5. Architecture and Organization (AR) 6. Operating Systems (OS) 7. Net-Centric Computing (NC) 8. Human-Computer Interaction (HC) 9. Graphics and Visual Computing (GV) 10. Intelligent Systems (IS) 11. Information Management (IM) 12. Software Engineering (SE) 13. Social and Professional Issues (SP) 14. Computational Science and Numerical Methods (CN)

Page 16: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 16

Joint IEEE CS/ACM Task Force on the “Model Curricula for Computing”

• SE is divided into 12 areas:SE1. Software design [core] SE2. Using APIs [core] SE3. Software tools and environments [core]SE4. Software processes [core] SE5. Software requirements and specifications [core]SE6. Software validation [core] SE7. Software evolution [core] SE8. Software project management [core]SE9. Component-based computing [elective] SE10. Formal methods [elective] SE11. Software reliability [elective] SE12. Specialized systems development [elective]

Page 17: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 17

Where is the P in SE?2. Education and Curricula Problems.

• Why isn’t computer performance part of the curriculum?1. Lack of training in performance by faculty who

teach SE.2. Lack of universally agreed upon methods and

models to be used by SEs to address performance issues.

3. Faculty resistance to change.4. Limits on total number of hours in the curriculum.

Page 18: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 18

Where is the P in SE?2. Education and Curricula Problems.

• How do students view the importance of software issues in the performance of computer systems?§ 5-question test answered by 59 grad and

undergrad students:ü 19 seniors in the BS in CS program.ü 39 graduates in MS in CS and MS in SE programs.

Page 19: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 19

Test Questions

1. Define response time (RTDef)2. What units are used to indicate response time?

(RTU)3. Define throughput. (XDef)4. What units are used to indicate throughput?

(XU)5. Identify possible factors that contribute to the

time taken by a Web search engine to return a reply to a browser. (RTFactors)

Page 20: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 20

RTDef RTU Xdef XU RTFactorsSoftware Factors

Senior in BS 19 100 84 100 74 58 63 84 21Graduate 39 95 44 87 82 74 54 87 5

Percent Answered CorrectlyLevel

No. Students

% took system courses

% took SE

courses

A very low percentage included softwareissues as factors that impact response time.

A very high percentage of students was able to correctly identifyfactors that impact response time.

Most students did well on basic performance questions.

Page 21: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 21

Where is the P in SE?3. IT Workforce Issues.

• 2.5 million core IT workers (computer engineers, computer system analysts and scientists, programmers, and computer science teachers) in 1999 in the US (source: National Research Council).

• IT workforce needs to grow by 175,000 a year (source: US Bureau of Labor and Statistics).

• 42,000 bachelor degrees in CS and engineering awarded in 2000 in the US and Canada.

Page 22: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 22

Where is the P in SE?3. IT Workforce Issues.

• Computer scientists, computer engineers, system analysts, and programmers in 1998*:• 67% held a BS or higher degree.• 33% (mostly programmers) had a 2-yr college

degree or HS diploma.• < 50% had a bachelors or other degree with a

major or minor in CS or CS-related discipline!

Many individuals without formal training are employed in IT and learn on the job!

* source: US BLS

Page 23: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 23

Where is the P in SE?4. Single-user mindset.

• Concurrency overlooked by people who write code.• Concurrency for physical resources.• Concurrency for software resources (database

locks, critical sections, and software threads)

Page 24: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 24

Where is the P in SE?4. Single-user mindset.

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0 10 20 30 40 50 60

Multithreading Level

% S

oft

war

e C

on

ten

tio

n T

ime

More than 90% of the timespent waiting to enter CS.

Page 25: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 25

Where is the P in SE?5. Small database mindset.

• Most programmers write database access code without taking into account the size of the database.

• Most tests are done in small development databases used to test functionality.

• The performance of an SQL call on a DB with 1,000 rows may be significantly different than that on a DB with one million rows.

Page 26: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 26

Where is the P in SE?

1. Lack of scientific principles and models.2. Education and curricula issues.3. IT workforce problems.4. Single-user mindset.5. Small database mindset.

Page 27: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 27

What Can We Do?• In education and training

– Seamless integration of performance concepts into software engineering courses and degree programs at all levels.

• In research– Development of universal models and methods that

can be easily used by software developers.– Development of QoS-aware software architectures

and components.• In industry

– Development and adoption of integrated tools that facilitate integration of performance management and instrumentation in the software development life cycle.

Page 28: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 28

More on Research Issues• At software design time:

– Seamless integration of performance modeling with architecture and software design methods (e.g., performance annotation of UML designs)

• OMG’s Response to the OMG RFP for Schedulability, Performance, and Time, June’01.

• OMG’s RFP: UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms, February’02.

– Automatic generation of performance models from design specifications.

Page 29: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 29

More on Research Issues• At software design time:

– Seamless integration of performance modeling with architecture and software design methods (e.g., performance annotation of UML designs)

• OMG’s Response to the OMG RFP for Schedulability, Performance, and Time, June’01.

• OMG’s RFP: UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms, February’02.

How general? How easy to use? Is it universal?How do you get the parameters?

Page 30: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 30

More on Research Issues

• At run-time:– QoS-aware software components: local and global

configuration and admission control.

Service 1Service 1

ServiceDispatcher

Service kService k

. . .

Architecture of a component

ServiceRegistration

Service 1Service 1

QoSRequestHandler

QoSEvaluator

PerformanceModelSolver

ServiceDispatcher

Service kService k

. . .

PerformanceMonitor

Workload Monitor

Architecture of a QoS-aware component

ServiceRegistration

Page 31: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 31

More on Research Issues• At run-time:

– QoS-aware software components: local and global configuration and admission control.

– Use of performance models to build dynamically controlled and self configurable software systems.

• Example: Dynamically controlled E-commerce site (see next few slides), ACM E-commerce Conference, 2001, Menascé, Barbara, and Dodge.

Page 32: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 32

Dynamic QoS Control for E-commerce

• Definition of a combined QoS metric.

Page 33: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 33

QoS Deviation• Relative difference between the observed QoS value and the QoS goal.

max

max

RRR

QoS measuredR

−=∆

min

min

XXX

QoS measuredX

−=∆

MAXrej

measuredrej

MAXrej

P P

PPQoS

rej

−=∆

Response time deviation:

Throughput deviation:

Probability of rejectiondeviation:

A negative deviation means that theQoS level for the metric has not been met.

Page 34: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 34

QoS Metric• The QoS metric is defined as a linear combination of QoS deviations.• The weights are determined by management based on the relative importance of each metric.

( ) ( ) ( )XXRRv WQoSWQoSWQoSQoS ×∆+×∆+×∆= PrejPrej

determined by management

Page 35: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 35

Dynamic QoS Control for E-commerce

• Definition of a combined QoS metric.• Use of hill-climbing techniques combined

with predictive queuing models.

Page 36: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 36

Heuristic Optimization Approach

0

1

2

3

QoS0

QoS1

QoS2

QoS3

QoS0: observed QoS value for current

configuration

QoS1, QoS2, and QoS3 are determined

by a predictive queuing model of

the site.

),...,,,( 21 mcccWfQoSr

=

Page 37: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 37

E-commerce Site Queuing Model

Page 38: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 38

Heuristic Optimization Approach

Server Parameter 1

ServerParameter 2

• Parameters for the queuing model are collected dynamically from the site.

• The QoS values for surrounding points are calculated

• The path with the greatest QoS gain is chosen. If no configuration improves the QoS or a limit is reached, the search ends

Page 39: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 39

Dynamic QoS Control for E-commerce

• Definition of a combined QoS metric.• Use of hill-climbing techniques combined

with predictive queuing models.• Implemented a TPC-W site in a multi-tier

architecture.

Page 40: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 40

Prototype Configuration

Workstation

100 Mbps Hub

WebServer

ApplicationServer

DatabaseServer

QoSController

WorkloadGenerator

TPC-Wsite

Page 41: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 41

Dynamic QoS Control for E-commerce

• Definition of a combined QoS metric.• Use of hill-climbing techniques combined with

predictive queuing models.• Implemented a TPC-W site in a multi-tier

architecture.• Implemented a QoS Controller on a dedicated

machine and evaluated the approach.

Page 42: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 42

Dynamic QoS Controller

Controller

E-commerce SystemArriving Request Completed Request

Arrival ProcessData

QoS MetricData

SystemPerformance Data

ConfigurationInstructions

Desired QoSLevels

Page 43: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 43

Experiment Results

Arrival rate

0

10

20

30

40

50

60

70

80

90

100

0 5 10 15 20 25 30 35

Time (Controller Intervals)

Arr

ival

Rat

e (r

equ

ests

/sec

)

Page 44: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 44

Results of QoS Controller

-0.8

-0.6

-0.4

-0.2

0.0

0.2

0.4

0.6

0.8

14.4

14.0

14.4

41.3

38.1

36.6

62.2

61.5

63.5

77.3

80.4

78.5

83.8

85.7

85.9

88.2

88.3

89.2

90.0

90.3

89.5

85.7

81.4

83.7

79.0

75.9

73.5

66.2

64.1

64.4

Arrival Rate (req/sec)

Qo

S

Controlled QoS Uncontrolled QoS

Page 45: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 45

Experiment Results

Arrival rate

0

10

20

30

40

50

60

70

80

90

100

0 5 10 15 20 25 30 35

Time (Controller Intervals)

Arr

ival

Rat

e (r

equ

ests

/sec

)

QoS is not met!

Page 46: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 46

Future Directions• At run-time:

– QoS-aware software components: local and global configuration and admission control.

– Dynamically controlled and reconfigurable software systems.

Must deal with components discovered at run time (see Web services).

Page 47: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 47

Our goal should be …

SPE

Page 48: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 48

Our goal should be …

SE… to make SE incorporate SPE

by definition.

Page 49: Software, Performance, or Engineering?menasce/papers/wosp02-keynote.pdf · 2002-07-22 · Software, Performance, or Engineering? ... time taken by a Web search engine to return a

(c) 2002 D. A. Menascé. All Rights Reserved. 49

slides will be atwww.cs.gmu.edu/~menasce/papers/wosp02-keynote.pdf

Questions?