 1. Introduction  2. Development Life-Cycle  3. Current Component Technologies  4. Component Quality Assurance  5. Advantages and Disadvantages.

Slides:



Advertisements
Similar presentations
P SATel Institute for Information Processing University of Pisa SantAnna school Pisa Today trends in Software Engineering 1. Distributed Objects 2. Component.
Advertisements

High level QA strategy for SQL Server enforcer
COM vs. CORBA.
Chapter 13 Review Questions
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Distributed Systems Architectures Slide 1 1 Chapter 9 Distributed Systems Architectures.
Component-Based Software Development: Technologies, Quality Assurance Schemes, and Risk Analysis Tools Cai Xia Supervisor: Prof. Michael R. Lyu Markers:
P RESENTATION ON C OMPONENT B ASED S OFTWARE E NGINEERING Presented by: Richard Akono Burak Çamdereli Yousef Al Sharma Volkan Ozdamar Eastern Mediterranean.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Distributed Systems Architectures
CBSD – Component Based Software Development - Introduction -
Introduction to Enterprise JavaBeans. Integrating Software Development Server-side Component Model Distributed Object Architecture –CORBA –DCOM –Java.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
- 1 - Component Based Development R&D SDM Theo Schouten.
Component-Based Software Development Jacob Fetner.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Component-Based Software Engineering (CBSE) Speaker: Jerry Gao Ph.D. San Jose State University URL:
UNIT-V The MVC architecture and Struts Framework.
COMPONENT-BASED SOFTWARE ENGINEERING
Quality of Information systems. Quality Quality is the degree on which a product satifies the requirements Quality management requires that : that requirements.
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program.
Quality Assurance for Component- Based Software Development Cai Xia (Mphil Term1) Supervisor: Prof. Michael R. Lyu 5 May, 2000.
L6 - March 1, 2006copyright Thomas Pole , all rights reserved 1 Lecture 6: Software Packaging: Dynamically Integrable Components and Text Ch.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 19 Slide 1 Component-based software engineering 1.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
COM vs. CORBA Computer Science at Azusa Pacific University September 19, 2015 Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department.
CSE 303 – Software Design and Architecture
Software Models (Cont.) 9/22/2015ICS 413 – Software Engineering1 -Component-based software engineering -Formal Development Model.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
02/10/2015 Page 1 R. Theeuws Siemens Atea Filename: CBD_ervaring Werkgroep Component Based Developments Ervaring CBD.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Basic of Software Testing Presented by The Smartpath Information System An ISO 9001:2008 Certified Organization
Introduction into component programming based on Java beans Dušan Tošić
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
21-22 May 2004IMPROQ 2004 / Impact of SW Processes on Quality Workshop 1 Quality for Components: Component and Component- Based Software Quality Issues.
By Garrett Kelly. 3 types or reasons for distributed applications Data Data used by the application is distributed Computation Computation is distributed.
SWE 316: Software Design and Architecture Objectives Lecture # 18 Introduction to Components SWE 316: Software Design and Architecture To learn:  benefits.
Software Engineering Principles. SE Principles Principles are statements describing desirable properties of the product and process.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Presented By:- Sudipta Dhara Roll Table of Content Table of Content 1.Introduction 2.How it evolved 3.Need of Middleware 4.Middleware Basic 5.Categories.
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
CSPC 464 Fall 2014 Son Nguyen.  Attendance/Roster  Introduction ◦ Instructor ◦ Students  Syllabus  Q & A.
Chapter 1: Introduction Omar Meqdadi SE 3860 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Lecture 21: Component-Based Software Engineering
Creating competitive advantage Copyright © 2003 Enterprise Java Beans Presenter: Wickramanayake HMKSK Version:0.1 Last Updated:
CS223: Software Engineering Lecture 14: Architectural Patterns.
EJB. Introduction Enterprise Java Beans is a specification for creating server- side scalable, transactional, multi-user secure enterprise-level applications.
A service Oriented Architecture & Web Service Technology.
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
N-Tier Architecture.
Self Healing and Dynamic Construction Framework:
Software Design and Architecture
Component Based Software Engineering
Component-Based Software Engineering: Technologies, Development Frameworks, and Quality Assurance Schemes X. Cai, M. R. Lyu, K.F. Wong, R. Ko.
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Component--based development
Quality Assurance for Component-Based Software Development
Chapter 17 - Component-based software engineering
Presentation transcript:

 1. Introduction  2. Development Life-Cycle  3. Current Component Technologies  4. Component Quality Assurance  5. Advantages and Disadvantages

 What is component based software engineering (CBSE)? › Components › Component Model › Component Framework

 An abstract implementation of functionality that conforms to a component model.  Small systems for small pieces of functionality.  Designed by third party developers.

 Specify rules that must be obeyed by the components  Standardized Assumptions › Control Flow › Synchronization  Needed to remove sources of interface mismatches.

 Software services to support and enforce a component model.  Usually designed by the developer using the component model.  Can be viewed as a mini operating system

 1. Requirements Analysis  2. Software Architecture Selection  3. Component Identification and Customization  4. System Integration  5. System Testing  6. Software Maintenance

 Determine what functionality is required by client.  Look at requirements with possible components in mind.

 Choosing a component model to be used in your solution.  Determines what components will be available to you.  Different software architectures can be more appropriate than others based on the application.

 Most important phase of CBSE  Two main parts of this phase › 1. Evaluation of each component canidate › 2. Customization of the chosen components  Need to look at included functionality and customization options of each component.

 Bring all the chosen components together  Components are built on top of chosen architecture framework.  Other Tasks › Testing › Change and Reintegration

 Tests are needed for each individual component  Tests for the system framework  Testing of the components is limited  Less testing required for software components

 Correcting faults, improving system performance, and adapting the system.  Most controllable maintenance is done on the component architecture/framework  Maintenance of components handled primarily by developer of the component.

 Visual Basic Controls (VBX)  ActiveX controls  Class Libraries  JavaBeans  CORBA  COM

 Common object request broker architecture  Allows for communication between applications developed separately.  A server object call ORB controls things.  ORB locates the objects that clients call to use.

 Model consists of two parts › The clients side component development › Server side component development  Uses portable Java bytecodes and java applets trust security.  Offers a portable, secure, and reliable environment for developing robust components.

 Component object model  Defines how clients and components will interact  Provides a binary standard that components and clients must follow.  Extension of COM known as DCOM or distributed COM.

 Quality Characteristics of Components › Size › Complexity › Reuse Frequency › Reliability

 Components cannot be too large  Large components are costly and may not be cost effective until used multiple times.

 Makes the components difficult to use.  Overly simple components may not be beneficial for reuse.  Quality is more difficult to ensure with a complex system.

 The number of times that a component is used is a very valuable indicator of how useful a component is.  Offer financial saving, which can allow resources to be used elsewhere to improve quality.

 Probability of failure free operations.  Failing components can be easily replaced.

 How to certify quality of a component?  How to certify quality of software systems based on components?

 Independent extensions  Component Market  Component models lessen unanticipated interactions between components  Reduced time to market  Reduced Costs

 Time to develop software components takes a big effort.  Components can be pricey.  Requirements in component technologies lacking  Conflict between usability and reusability of components.  Maintenance cost for components increased.

 Component-Based Development  Components  Look at the quality of the components  Independent Extensions  Reduced Time-to-Market  Conflict between reusability and usability