did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9783540208648

Component-based Software Testing With Uml

by
  • ISBN13:

    9783540208648

  • ISBN10:

    354020864X

  • Format: Hardcover
  • Copyright: 2004-12-16
  • Publisher: Springer-Verlag New York Inc
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $119.99 Save up to $101.43
  • Digital
    $40.22
    Add to Cart

    DURATION
    PRICE

Supplemental Materials

What is included with this book?

Summary

Component-based software development regards software construction in terms of conventional engineering disciplines where the assembly of systems from readily-available prefabricated parts is the norm. Because both component-based systems themselves and the stakeholders in component-based development projects are different from traditional software systems, component-based testing also needs to deviate from traditional software testing approaches. Gross first describes the specific challenges related to component-based testing like the lack of internal knowledge of a component or the usage of a component in diverse contexts. He argues that only built-in contract testing, a test organization for component-based applications founded on building test artifacts directly into components, can prevent catastrophic failures like the one that caused the now famous ARIANE 5 crash in 1996. Since building testing into components has implications for component development, built-in contract testing is integrated with and made to complement a model-driven development method. Here UML models are used to derive the testing architecture for an application, the testing interfaces and the component testers. The method also provides a process and guidelines for modeling and developing these artifacts. This book is the first comprehensive treatment of the intricacies of testing component-based software systems. With its strong modeling background, it appeals to researchers and graduate students specializing in component-based software engineering. Professionals architecting and developing component-based systems will profit from the UML-based methodology and the implementation hints based on the XUnit and JUnit frameworks.

Author Biography

 Hans-Gerhard Gro+ƒ received his PhD in Software Engineering from the University of Glamorgan, UK, where he worked on timing aspects of real-time systems development and their dynamic verification. Currently, he is employed as project manager, and responsible for building up software testing competence at the Fraunhofer Institute for Experimental Software Engineering, Kaiserslautern, Germany. His current research focus is on model-driven and component-based software development approaches, particularly in the embedded and real-time domain, and on verification and validation techniques for such systems.

Table of Contents

Introduction
1(20)
Component-Based Software Development
2(9)
Component Definition
2(2)
Core Principles of Component-Based Development
4(3)
Component Meta-model
7(2)
Component Engineering vs. Application Engineering
9(2)
Component-Based Software Testing
11(5)
Challenges in Component-Based Software Testing
12(2)
The ARIANE 5 Failure
14(1)
The Lessons Learned
15(1)
Model-Based Development and Testing
16(2)
UML and Testing
16(2)
Model-Based Testing
18(1)
Test Modeling
18(1)
Summary and Outline of This Book
18(3)
Component-Based and Model-Driven Development with UML
21(52)
Principles of the KobrA Method
22(7)
Decomposition
24(2)
Embodiment
26(1)
Composition
27(1)
Validation
27(1)
Spiral Model vs. Waterfall Model
27(2)
Context Realization
29(9)
Usage Model
30(3)
Enterprise or Business Process Model
33(1)
Structural Model
33(2)
Activity and Interaction Model
35(3)
Component Specification
38(6)
Structural Specification
39(2)
Functional Specification
41(1)
Behavioral Specification
42(2)
Component Realization
44(6)
Realization Structural Specification
46(2)
Realization Algorithmic Specification
48(1)
Realization Interaction Specification
48(2)
Component Embodiment
50(11)
Refinement and Translation
53(2)
The Normal Object Form
55(1)
Component Reuse
56(2)
COTS Component Integration
58(2)
System Construction and Deployment
60(1)
Product Family Concepts
61(8)
Decision Models
62(2)
Framework Engineering
64(4)
Application Engineering
68(1)
Documentation and Quality Assurance Plan
69(1)
Summary
70(3)
Model-Based Testing with UML
73(48)
Model-Based vs. Traditional Software Testing
74(6)
White Box Testing Criteria
75(2)
Black Box Testing Criteria
77(3)
Model-Based Testing
80(32)
Usage Modeling
80(1)
Use Case Diagram-Based Testing
81(3)
Use Case and Operation Specification-Based Testing
84(4)
Structural Modeling
88(7)
Structural Diagram-Based Testing
95(3)
Behavioral Modeling with Statecharts
98(1)
Statechart Diagram-Based Testing
99(3)
Behavioral Modeling with Activity Diagrams
102(2)
Activity Diagram-Based Testing
104(2)
Interaction Modeling
106(3)
Interaction Diagram-Based Testing
109(3)
Test Modeling
112(7)
Structural Aspects of Testing
112(1)
Behavioral Aspects of Testing
113(2)
UML Testing Profile Mapping
115(3)
Extension of the Testing Profile
118(1)
Summary
119(2)
Built-in Contract Testing
121(58)
Concepts of Built-in Testing
123(4)
Assertions
123(1)
Built-in Testing
124(3)
Motivation for Built-in Contract Testing
127(3)
Objective of Built-in Contract Testing
127(2)
Component Contracts
129(1)
Model and Architecture of Built-in Contract Testing
130(27)
Explicit vs. Implicit Servers
133(1)
The Testing Interface
134(6)
Optimal Design of the Testing Interface
140(6)
Tester Components
146(2)
Optimal Design of a Tester Component
148(4)
Component Associations in Built-in Contract Testing
152(5)
Development Process for Built-in Contract Testing
157(20)
Identification of Tested Interactions
163(1)
Definition and Modeling of the Testing Architecture
164(3)
Specification and Realization of the Testing Interfaces
167(2)
Specification and Realization of the Tester Components
169(5)
Integration of the Components
174(3)
Summary
177(2)
Built-in Contract Testing and Implementation Technologies
179(50)
Instantiation and Embodiment of Built-in Contract Testing
183(4)
Built-in Contract Testing with Programming Languages
187(13)
Procedural Embodiment Under C
188(3)
Object-Oriented Embodiment Under C++ and Java
191(9)
Component Technologies
200(9)
JavaBeans and Enterprise JavaBeans
201(2)
COM, DCOM, ActiveX, COM+, and NET
203(1)
CORBA, OMA and CCM
204(2)
Component Technologies and Built-in Contract Testing
206(3)
Built-in Contract Testing and Web Services
209(5)
Checking Web Services Through Contract Testing
210(2)
Testing of Readily Initialized Server Components
212(2)
Implementation Technologies for Built-in Contract Testing
214(12)
The XUnit Testing Framework
215(1)
JUnit and Built-in Contract Testing
216(3)
The Testing and Test Control Notation - TTCN-3
219(4)
TTCN-3 and Built-in Contract Testing
223(3)
Summary
226(3)
Reuse and Related Technologies
229(26)
Use and Reuse of Contract Testing Artifacts
231(7)
Development-Time Reuse
232(3)
Runtime Reuse
235(3)
Component Certification and Procurement
238(4)
The CLARiFi Component Broker Platform
239(1)
Customer Self-certification
240(2)
Product Families and Testing
242(12)
Testing of Product Families
244(9)
Testing as a Product Family Development
253(1)
Summary
254(1)
Assessing Quality-of-Service Contracts
255(30)
Quality-of-Service Contracts in Component-Based Development
256(4)
Timing Analysis and Assessment with Components
260(5)
Typical Timing Problems
261(2)
Timing Analysis Approaches
263(2)
Extended Model of Built-in Contract Testing
265(14)
Testing Interface for the Extended Model
267(1)
Tester Component for the Extended Model
268(4)
Optimization-Based Timing Analysis
272(2)
Application to the RIN System
274(5)
QoS Contract Testing for Dynamic Updates
279(1)
Built-in Quality-of-Service Runtime Monitoring
280(3)
Summary
283(2)
Glossary 285(12)
References 297(10)
Index 307

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program