SlideShare ist ein Scribd-Unternehmen logo
1 von 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

Weitere ähnliche Inhalte

Was ist angesagt?

Component based software development
Component based software developmentComponent based software development
Component based software developmentEmmanuel Fuchs
 
Ch19-Software Engineering 9
Ch19-Software Engineering 9Ch19-Software Engineering 9
Ch19-Software Engineering 9Ian Sommerville
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 MuhammadTalha436
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle modelStephennancy
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation TechniquesSanthi thi
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineeringkirupasuchi1996
 
Software Engineering (Requirements Engineering & Software Maintenance)
Software Engineering (Requirements Engineering  & Software Maintenance)Software Engineering (Requirements Engineering  & Software Maintenance)
Software Engineering (Requirements Engineering & Software Maintenance)ShudipPal
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notesAmmar Shafiq
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-designOliver Cheng
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 

Was ist angesagt? (20)

Component based software development
Component based software developmentComponent based software development
Component based software development
 
Ch19-Software Engineering 9
Ch19-Software Engineering 9Ch19-Software Engineering 9
Ch19-Software Engineering 9
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle model
 
Software design
Software designSoftware design
Software design
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Ch2 sw processes
Ch2 sw processesCh2 sw processes
Ch2 sw processes
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
 
Software Engineering (Requirements Engineering & Software Maintenance)
Software Engineering (Requirements Engineering  & Software Maintenance)Software Engineering (Requirements Engineering  & Software Maintenance)
Software Engineering (Requirements Engineering & Software Maintenance)
 
Ch21 real time software engineering
Ch21 real time software engineeringCh21 real time software engineering
Ch21 real time software engineering
 
Ch18 service oriented software engineering
Ch18 service oriented software engineeringCh18 service oriented software engineering
Ch18 service oriented software engineering
 
Ch15 software reuse
Ch15 software reuseCh15 software reuse
Ch15 software reuse
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notes
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Ch14 resilience engineering
Ch14 resilience engineeringCh14 resilience engineering
Ch14 resilience engineering
 
6.distributed shared memory
6.distributed shared memory6.distributed shared memory
6.distributed shared memory
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
 
Class notes
Class notesClass notes
Class notes
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-design
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 

Ähnlich wie 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
 

Ähnlich wie 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
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 

Kürzlich hochgeladen (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

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