# Component-Based Systems: Estimating Efforts Using Soft Computing Techniques

Component-Based DevelopmentComponentGeneral Component PropertiesComponents as Objects and FrameworksComponent-Based Software EngineeringAdvantages of Component-Based Software EngineeringConventional Software Reuse and CBSECBSE ApproachArchitectureProblems and Pitfalls of CBDFive Problems of Effort EstimationExerciseReferencesEffort Estimation Techniques for Legacy SystemsThe Importance of Precise Effort Estimation TerminologyTraditional Techniques of Effort EstimationRule of ThumbEstimation by AnalogyFunction Point Methods and Their LimitationsEffort Estimation for Object-Oriented SystemsUML-Based ApproachClass PointsThe Constructive Cost Model (COCOMO)Effort Estimation Techniques Available In CBSDParameterized ApproachCOCOMO IICOCOTSFunction Points and Other Size Metrics: Similarities and DifferencesExerciseReferencesSoft Computing TechniquesFour Factors of Soft ComputingFuzzy LogicWhy Use Fuzzy Logic?Adaptive Neuro-Fuzzy Inference System (ANFIS)Fuzzy Logic ToolboxKey Features of the Fuzzy Logic ToolboxEvolutionary AlgorithmsApplicability of Soft Computing Techniques in Software EngineeringFuzzy Logic Concepts Usage in Software EngineeringArtificial Neural Network (ANN) Concepts Usage in Software EngineeringGenetic Algorithm Concepts Usage in Software EngineeringSupport Vector Machine (SVM) Concepts Usage in Software EngineeringExerciseReferencesFuzzy Logic-Based Approaches for Estimating Efforts Invested in Component SelectionFactors Affecting Component Selection EffortsReusabilityPortabilityFunctionalitySecurityPerformanceFuzzy LogicFuzzy NumberFive Inputs Fuzzy ModelFive Inputs MethodologyEmpirical EvaluationWeight Assignment Factors for Component Selection EffortsCorrelation Coefficient DefinitionEmpirical ValidationExerciseReferencesEstimating Component Integration Efforts A Neural Network-Based ApproachFormulationConductReportProblems in Integrating COTS ComponentsTo Find Details of Available ProductsNot a Fixed Product ScopeLate Maintenance of Highly Complex AreasFactors Affecting Component Integration EffortsInteraction ComplexityUnderstandingComponent QualityArtificial Neural Network-Based ApproachNeural Network ArchitectureMATLAB® Neural Network ToolboxExperimental DesignResultsReferencesAppendix A: Data Tables Used for Use CasesAppendix B: Review QuestionsRecent Trends