SlideShare une entreprise Scribd logo
1  sur  22
PRESENTATION ON
COMPONENT BASED SOFTWARE ENGINEERING

       Presented by:
       Chaitanya Pratap Singh
       MCA (4th semester)


       South Asian University, New Delhi, India
OVERVIEW
   Introduction
   What is Component
       Component characteristics
   Fundamental Principals
   Terms & Attributes used in Software Component Model
   Component Based Software Development
   Life Cycle in CBSD
   Metric used in CBSD
   Benefits in CBSD
   Difficulties in CBSD
   CBSE vs. Traditional SE
   Current Component Technologies
   Applications
   Conclusion
INTRODUCTION
 CBSE embodies the “the ‘buy, don’t build’
  philosophy".
 Because of the extensive uses of components, the
  Component- Based Software Engineering (CBSE)
  process is quite different from that of the traditional
  waterfall approach.
 It emphasizes on developing new software from
  pre-built components.
WHAT IS COMPONENT
 A component is an independent software unit that
  can be composed with other components to create
  a software system.
 Council and Heineman define a component as:
       “ A software element that conforms to a component
        model and can be independently deployed and
        composed without modification accordingly to a
        composition standard”
COMPONENT CHARACTERISTICS
 Independent: A component should be independent
 Composable: It means that all external interactions
  must take place through publicly defined interfaces.
 Deployable: A component has to be self-contained
  and must be able to operate as a stand-alone entity
FUNDAMENTAL PRINCIPALS
   Independent Software Development:
     Large software systems are necessarily assembled
      from components developed by different people.
     To facilitate independent development, it is essential to
      decouple developers and users of components.
   Reusability:
       Some parts of a large system will necessarily be
        special-purpose software, it is essential to design and
        assemble pre-existing components in developing new
        components.
   Software quality:
       A component or system needs to be shown to have
        desired behavior, either through logical reasoning,
        tracing or testing.
TERMS & ATTRIBUTES USED IN SOFTWARE
COMPONENT MODEL
 Syntax: It refers to the „grammar‟ or the rules
  followed in the code as per the specific
  programming language.
 Semantics: It refers to the actual meaning and
  view of the components. A component is associated
  with a name, an interface and the body that
  includes the code.
 Composition: This relates to the construction and
  working together of components.
COMPONENT BASED SOFTWARE DEVELOPMENT
 Component-based software development(CBSD)
  approach is based on the idea to develop software
  systems by selecting appropriate off-the-shelf
  components and then to assemble them with a
  well-defined software architecture.
 The term component-based software development
  (CBD) can be referred to as the process for building
  a system using components.
LIFE CYCLE IN COMPONENT-BASED DEVELOPMENT
  Requirements   analysis
  Software architecture selection,
   construction, analysis, and evaluation
  Component identification and customization

  System integration

  System testing

  Software maintenance
PHASES OF COMPONENT DEVELOPMENT
 System requirements
 Design the component

 Develop the component

 Testing
     Functional or Black Box Testing,
     Structural or White Box Testing
METRIC USED IN CBSD
   Software metrics are intended to measure
      software quality and performance
     characteristics quantitatively encountered during the
      planning and execution of software development
      resource
     and effort allocation, scheduling and product evaluation.
   These can serve as measures of software products
    for the purpose of
     comparison,
     cost estimation,
     fault prediction and
     forecasting.
METRIC USED IN CBSD CONT…
 Poulin presented a set of metrics used by IBM to
  estimate the efforts saved by reuse.
 Reuse Percentage measures how much of the product
  can be attributed to reuse and is given as:-
     Product Reuse Percentage = (RSI / (RSI + SSI)) * 100%
     Where
         SSI= Shipped Source Instructions
         RSI= Reused Source Instructions
METRIC USED IN CBSD CONT…
 The second approach is a metric called Component
  Reusability level (CRL) to measure particular
  component‟s reuse level per application in a CBSD.
 This metric is again divided into two sub-metrics.
  First is CRLLOC, which is measured by using lines
  of code, and is expressed as percentage as given
  as:-
       CRL LOC ( C ) = (Reuse ( C ) / Size ( C )) *100%
BENEFITS IN CBSD
 Management of Complexity
 Reduce Development Time

 Increased Productivity

 Improved Quality

 Reliability is increased since the components have
  previously been tested in various contexts
 Maintenance costs are reduced.

 Efficiency and flexibility is improved due to the fact
  that components can easier be added or replaced
DIFFICULTIES IN CBSD
 Development of Components
 Quality of Components is questionable
 Lack of effective software matrix
 Component Maintenance Costs
 Reliability and Sensitivity to changes
 Unsatisfied Requirements
CBSE VS. TRADITIONAL SE
 CBSE views the system as a set of off-the-shelf
  components integrated within an appropriate
  architecture.
 SE seeks to create a system from scratch(building
  something without tools).
 CBSE does not have any standard development
  models like UML for SE.
 CBSE is young, therefore long term maintainability
  is largely unknown.
 SE can fulfill requirements more easily.

 CBSE fulfillment of requirements is based on the
  available components.
CBSE VS. TRADITIONAL SE-CONT..

 CBSE  Life Cycle is   CBSE      Waterfall
  shorter.              Find      Requirements
                        Select    Analysis
 CBSE is less
                                  Design
  expensive
                        Adapt     Implementation
                        Test      Test
                        Deploy    Release
                        Replace   Maintenance
                                                 [3]
CURRENT COMPONENT TECHNOLOGIES
 CORBA: Common Object Request Broker
  Architecture
 COM: Component Object Model

 IDL: Interface Description Language

 EJB: Enterprise JavaBeans (Java APIs)
APPLICATIONS
   This emerging component development approach
    is being widely used in various distinct domains .
CONCLUSION
 CBSD is an inevitable next wave solution that has
  potential to improve time-to-market and man
  power/cost trends that have been ongoing.
 CBSD is best implemented using more modern
  software technologies like:
       COM
       JAVA
       EJB
       CORBA
       ActiveX
THANK YOU

Contenu connexe

Tendances

Scenario based methods
Scenario based methodsScenario based methods
Scenario based methodsJoshuaU1
 
Implementation issues software engineering
Implementation issues software engineeringImplementation issues software engineering
Implementation issues software engineeringrishi ram khanal
 
10 software maintenance
10 software maintenance10 software maintenance
10 software maintenanceakiara
 
User interface (UI) for mobile applications
User interface (UI) for mobile applicationsUser interface (UI) for mobile applications
User interface (UI) for mobile applicationsAashish Uppal
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented DesignSharath g
 
Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software EngineeringDrishti Bhalla
 
Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software EngineeringSalman Khan
 
Software Engineering - Ch1
Software Engineering - Ch1Software Engineering - Ch1
Software Engineering - Ch1Siddharth Ayer
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design Saqib Raza
 

Tendances (20)

Scenario based methods
Scenario based methodsScenario based methods
Scenario based methods
 
Software design
Software designSoftware design
Software design
 
Implementation issues software engineering
Implementation issues software engineeringImplementation issues software engineering
Implementation issues software engineering
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
10 software maintenance
10 software maintenance10 software maintenance
10 software maintenance
 
Design notation
Design notationDesign notation
Design notation
 
Software resuse
Software  resuseSoftware  resuse
Software resuse
 
User interface (UI) for mobile applications
User interface (UI) for mobile applicationsUser interface (UI) for mobile applications
User interface (UI) for mobile applications
 
User interface design
User interface designUser interface design
User interface design
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design
 
Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software Engineering
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software Engineering
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Software Engineering - Ch1
Software Engineering - Ch1Software Engineering - Ch1
Software Engineering - Ch1
 
CBAM
 CBAM CBAM
CBAM
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design
 
Incremental Model
Incremental ModelIncremental Model
Incremental Model
 

Similaire à Presentation on component based software engineering(cbse)

‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Process‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Processijceronline
 
Component based-software-engineering
Component based-software-engineeringComponent based-software-engineering
Component based-software-engineeringWasim Raza
 
Component based-software-engineering
Component based-software-engineeringComponent based-software-engineering
Component based-software-engineeringWasim Raza
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd modelsSukhdeep Singh
 
A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...Kiogyf
 
component based development model
component based development modelcomponent based development model
component based development modelMuneeba Qamar
 
Bridge Process Model
Bridge Process ModelBridge Process Model
Bridge Process ModelStephen Raj
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component Saransh Garg
 
Design concepts
Design conceptsDesign concepts
Design conceptsJoshuaU1
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9Ian Sommerville
 
Software engineering
Software engineeringSoftware engineering
Software engineeringStella526835
 
A Review on Quality Assurance of Component- Based Software System
A Review on Quality Assurance of Component- Based Software SystemA Review on Quality Assurance of Component- Based Software System
A Review on Quality Assurance of Component- Based Software Systemiosrjce
 
Software engineering fundamentals
Software engineering fundamentalsSoftware engineering fundamentals
Software engineering fundamentalsJigyasaAgrawal7
 
Lecture - 7-10.pptx
Lecture - 7-10.pptxLecture - 7-10.pptx
Lecture - 7-10.pptxFarHana74914
 
Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14koolkampus
 

Similaire à Presentation on component based software engineering(cbse) (20)

M046056672
M046056672M046056672
M046056672
 
‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Process‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Process
 
Ijsea04021003
Ijsea04021003Ijsea04021003
Ijsea04021003
 
Component based-software-engineering
Component based-software-engineeringComponent based-software-engineering
Component based-software-engineering
 
Component based-software-engineering
Component based-software-engineeringComponent based-software-engineering
Component based-software-engineering
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd models
 
Ch17
Ch17Ch17
Ch17
 
A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...
 
component based development model
component based development modelcomponent based development model
component based development model
 
Bridge Process Model
Bridge Process ModelBridge Process Model
Bridge Process Model
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component
 
Design concepts
Design conceptsDesign concepts
Design concepts
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
I017345357
I017345357I017345357
I017345357
 
A Review on Quality Assurance of Component- Based Software System
A Review on Quality Assurance of Component- Based Software SystemA Review on Quality Assurance of Component- Based Software System
A Review on Quality Assurance of Component- Based Software System
 
Software engineering fundamentals
Software engineering fundamentalsSoftware engineering fundamentals
Software engineering fundamentals
 
Lecture - 7-10.pptx
Lecture - 7-10.pptxLecture - 7-10.pptx
Lecture - 7-10.pptx
 
Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14
 

Plus de Chandan Thakur

Quality improvement paradigm (QIP)
Quality improvement paradigm (QIP)Quality improvement paradigm (QIP)
Quality improvement paradigm (QIP)Chandan Thakur
 
Chord- A Scalable Peer-to-Peer Lookup Service for Internet Applications
Chord- A Scalable Peer-to-Peer Lookup Service for Internet ApplicationsChord- A Scalable Peer-to-Peer Lookup Service for Internet Applications
Chord- A Scalable Peer-to-Peer Lookup Service for Internet ApplicationsChandan Thakur
 
A maximum residual multicast protocol for large scale mobile ad hoc networks
A maximum residual multicast protocol for large scale mobile ad hoc networksA maximum residual multicast protocol for large scale mobile ad hoc networks
A maximum residual multicast protocol for large scale mobile ad hoc networksChandan Thakur
 

Plus de Chandan Thakur (7)

Libsys 7 to koha
Libsys 7 to kohaLibsys 7 to koha
Libsys 7 to koha
 
Quality improvement paradigm (QIP)
Quality improvement paradigm (QIP)Quality improvement paradigm (QIP)
Quality improvement paradigm (QIP)
 
Chord Node Join
Chord Node JoinChord Node Join
Chord Node Join
 
Chord- A Scalable Peer-to-Peer Lookup Service for Internet Applications
Chord- A Scalable Peer-to-Peer Lookup Service for Internet ApplicationsChord- A Scalable Peer-to-Peer Lookup Service for Internet Applications
Chord- A Scalable Peer-to-Peer Lookup Service for Internet Applications
 
A maximum residual multicast protocol for large scale mobile ad hoc networks
A maximum residual multicast protocol for large scale mobile ad hoc networksA maximum residual multicast protocol for large scale mobile ad hoc networks
A maximum residual multicast protocol for large scale mobile ad hoc networks
 
Shayri
ShayriShayri
Shayri
 
Nirmal baba
Nirmal babaNirmal baba
Nirmal baba
 

Dernier

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Dernier (20)

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Presentation on component based software engineering(cbse)

  • 1. PRESENTATION ON COMPONENT BASED SOFTWARE ENGINEERING Presented by: Chaitanya Pratap Singh MCA (4th semester) South Asian University, New Delhi, India
  • 2. OVERVIEW  Introduction  What is Component  Component characteristics  Fundamental Principals  Terms & Attributes used in Software Component Model  Component Based Software Development  Life Cycle in CBSD  Metric used in CBSD  Benefits in CBSD  Difficulties in CBSD  CBSE vs. Traditional SE  Current Component Technologies  Applications  Conclusion
  • 3. INTRODUCTION  CBSE embodies the “the ‘buy, don’t build’ philosophy".  Because of the extensive uses of components, the Component- Based Software Engineering (CBSE) process is quite different from that of the traditional waterfall approach.  It emphasizes on developing new software from pre-built components.
  • 4. WHAT IS COMPONENT  A component is an independent software unit that can be composed with other components to create a software system.  Council and Heineman define a component as:  “ A software element that conforms to a component model and can be independently deployed and composed without modification accordingly to a composition standard”
  • 5. COMPONENT CHARACTERISTICS  Independent: A component should be independent  Composable: It means that all external interactions must take place through publicly defined interfaces.  Deployable: A component has to be self-contained and must be able to operate as a stand-alone entity
  • 6. FUNDAMENTAL PRINCIPALS  Independent Software Development:  Large software systems are necessarily assembled from components developed by different people.  To facilitate independent development, it is essential to decouple developers and users of components.  Reusability:  Some parts of a large system will necessarily be special-purpose software, it is essential to design and assemble pre-existing components in developing new components.  Software quality:  A component or system needs to be shown to have desired behavior, either through logical reasoning, tracing or testing.
  • 7. TERMS & ATTRIBUTES USED IN SOFTWARE COMPONENT MODEL  Syntax: It refers to the „grammar‟ or the rules followed in the code as per the specific programming language.  Semantics: It refers to the actual meaning and view of the components. A component is associated with a name, an interface and the body that includes the code.  Composition: This relates to the construction and working together of components.
  • 8. COMPONENT BASED SOFTWARE DEVELOPMENT  Component-based software development(CBSD) approach is based on the idea to develop software systems by selecting appropriate off-the-shelf components and then to assemble them with a well-defined software architecture.  The term component-based software development (CBD) can be referred to as the process for building a system using components.
  • 9. LIFE CYCLE IN COMPONENT-BASED DEVELOPMENT  Requirements analysis  Software architecture selection, construction, analysis, and evaluation  Component identification and customization  System integration  System testing  Software maintenance
  • 10. PHASES OF COMPONENT DEVELOPMENT  System requirements  Design the component  Develop the component  Testing  Functional or Black Box Testing,  Structural or White Box Testing
  • 11. METRIC USED IN CBSD  Software metrics are intended to measure  software quality and performance  characteristics quantitatively encountered during the planning and execution of software development resource  and effort allocation, scheduling and product evaluation.  These can serve as measures of software products for the purpose of  comparison,  cost estimation,  fault prediction and  forecasting.
  • 12. METRIC USED IN CBSD CONT…  Poulin presented a set of metrics used by IBM to estimate the efforts saved by reuse.  Reuse Percentage measures how much of the product can be attributed to reuse and is given as:-  Product Reuse Percentage = (RSI / (RSI + SSI)) * 100%  Where  SSI= Shipped Source Instructions  RSI= Reused Source Instructions
  • 13. METRIC USED IN CBSD CONT…  The second approach is a metric called Component Reusability level (CRL) to measure particular component‟s reuse level per application in a CBSD.  This metric is again divided into two sub-metrics. First is CRLLOC, which is measured by using lines of code, and is expressed as percentage as given as:-  CRL LOC ( C ) = (Reuse ( C ) / Size ( C )) *100%
  • 14. BENEFITS IN CBSD  Management of Complexity  Reduce Development Time  Increased Productivity  Improved Quality  Reliability is increased since the components have previously been tested in various contexts  Maintenance costs are reduced.  Efficiency and flexibility is improved due to the fact that components can easier be added or replaced
  • 15. DIFFICULTIES IN CBSD  Development of Components  Quality of Components is questionable  Lack of effective software matrix  Component Maintenance Costs  Reliability and Sensitivity to changes  Unsatisfied Requirements
  • 16. CBSE VS. TRADITIONAL SE  CBSE views the system as a set of off-the-shelf components integrated within an appropriate architecture.  SE seeks to create a system from scratch(building something without tools).  CBSE does not have any standard development models like UML for SE.  CBSE is young, therefore long term maintainability is largely unknown.  SE can fulfill requirements more easily.  CBSE fulfillment of requirements is based on the available components.
  • 17. CBSE VS. TRADITIONAL SE-CONT..  CBSE Life Cycle is CBSE Waterfall shorter. Find Requirements Select Analysis  CBSE is less Design expensive Adapt Implementation Test Test Deploy Release Replace Maintenance [3]
  • 19.  CORBA: Common Object Request Broker Architecture  COM: Component Object Model  IDL: Interface Description Language  EJB: Enterprise JavaBeans (Java APIs)
  • 20. APPLICATIONS  This emerging component development approach is being widely used in various distinct domains .
  • 21. CONCLUSION  CBSD is an inevitable next wave solution that has potential to improve time-to-market and man power/cost trends that have been ongoing.  CBSD is best implemented using more modern software technologies like:  COM  JAVA  EJB  CORBA  ActiveX