Quality Assurance for Component-Based Software Development - PowerPoint PPT Presentation

About This Presentation
Title:

Quality Assurance for Component-Based Software Development

Description:

Component Object Model (COM) and Distributed COM (DCOM) from Microsoft. CORBA(1) ... easier modification and maintenance than CORBA or COM/DCOM. JavaBeans/EJB (2) ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 27
Provided by: CSE
Category:

less

Transcript and Presenter's Notes

Title: Quality Assurance for Component-Based Software Development


1
Quality Assurance for Component-Based Software
Development
Presented by Cai Xia Supervised by Prof.
Michael Lyu 11 April, 2000
2
Presentation Outline
? Introduction ? Current component technologies
? Case study ? Quality Assurance for
component-based software systems ? Conclusion
3
Introduction
? Software systems become more and more
large-scale, complex and uneasily controlled ?
The most promising solution now is
component-based software development approach ?
The process of CBSD is totally different from
traditional systems ? Quality Assurance is very
important for component-based software systems
4
What is Component-Based Software Development ?
Component repository
...
5
What is A Component?
? A component is an independent and replaceable
part of a system that fulfills a clear
function ? A component works in the context of a
well-defined architecture ? It communicates with
other components by the interfaces.
6
System Architecture
? Layered ? Modular
7
Current Component Technologies
? Common Object Request Broker Architecture
(CORBA) from Object Management Group (OMG) ?
JavaBeans and Enterprise JavaBeans (EJB)
from Sun Microsystems ?
Component Object Model (COM) and Distributed COM
(DCOM) from Microsoft
8
CORBA(1)
? CORBA is an open standard for application
interoperability ? V1.1 defines IDL, API, ORB
(1991) ? V2.0 defines true interoperability
(1994) ? ORB is a middleware that establishes the
client/server relationships between objects
9
CORBA(2)
? allows heterogeneous environments
operating systems execution environment
programming languages ? allows integration of
existing components ? CORBA is widely used in OO
distributed systems including component-based
software systems
10
COM/DCOM(1)
? COM introduced in 1993 ? platform-dependent
(Windows, WindowsNT) ? language-independent ?
defines how components and their clients interact
directly and dynamically ? enables on-line
software update and cross-language software reuse
11
COM/DCOM(2)
? DCOM introduced in 1996 ? extension of COM ?
a protocol that enables software components to
communicate directly over a network ? in a
reliable, secure, and efficient manner ? across
multiple network transports, including Internet
protocols such as HTTP
12
JavaBeans/EJB (1)
? JavaBeans for client-side component
development ? Enterprise JavaBeans for
server-side component development ?
platform-independent ? language-dependent
(Java) ? enables scalable, secure,
business-critical, multiplatform, reusable
components
13
JavaBeans/EJB (2)
? efficient data access across heterogeneous
server ? faster Java client connections,
transaction state management, caching and
queuing ? connection multiplexing ? transaction
load balancing across servers ? easier
modification and maintenance than CORBA or
COM/DCOM
14
Case Study IBM SanFrancisco
? subjective solving the high cost and low
efficiency problems when modernizing or
maintaining complex specific software systems ?
provides a distributed object infrastructure and
a set of application components ? programming
language Java ? platforms Windows NT, OS/400,
AIX, Solaris, HP_UX and Reliant UNIX
15
SanFrancisco Infrastructure
16
Software Quality Assurance (SQA)
? Process-oriented (Software Quality
Engineering) subjective procedures,
techniques and tools standard ISO9000-3,
CMM ? Product-oriented (Software Quality
Control) subjective software product
delivered method testing tools, metrics
17
QA for Object-Oriented Systems
Key concepts in OO Design ? Object ?
Class ? Polymorphism ? Inheritance
18
Object-Oriented Design
Object-Oriented Design
Method Design
Object Design
Object Definition
Attributes of Objects
Communication Among Objects
19
Metrics for OO Software
Aim at ? Complexity ? Understandability
? Maintainability ? Reusability ?
Testability
20
Testability Factors in OO Systems
21
Example Metrics for OO Software
22
QA for Component-Based Software
? How to qualify a component? ? How to qualify a
component-based software system?
23
Life Cycle of A Component
24
Life Cycle of CBSD
? Requirements analysis ? Software architecture
selection, creation, analysis and evaluation ?
Component evaluation, selection and
customization ? Integration ? Component-based
system testing ? Software maintenance
25
Open Problems About QA for CBSD
? identification of the QA characteristics ?
well-defined Standards ? models ? metrics ?
testing tools
26
Q A Section
Write a Comment
User Comments (0)
About PowerShow.com