Eduardo Santana de Almeida, Alexandre Alvaro, Daniel Lucrédio, Antonio Francisco do Prado, Luis Carlos Trevelin Federal University of Pernambuco, Federal University of São Carlos, Brazil Distributed Component- Based Software Development: An Incremental Approach
Introduction Motivation –Lack of patterns, approaches….processes Development for reuse, Development with reuse Non-functional requirements –Distribution –Persistence –A question: What is necessary? Full support for CBD {specification, design, implementation….} The Ingredients (soup of techniques…) –CBSE, frameworks, patterns, distribution The Proposal –Incremental approach –Development for and with reuse But, Is It useful? –Experimental Study
Ingredients
Catalysis –CBD Method Middleware –Component {distribution, search} Frameworks, Patterns –Reuse –NFR Distribution Persistence MVCASE Tool
Incremental Approach
First stage – Development for reuse
Putting the pieces together
Specify Components
Design Components
Design Components (NFR) Distribution, Fault Tolerance, Caching Persistence
Implement Components
Experimental Study Steps –Definition –Planning –Instantiation –Execution – Analysis Definition – Goal Question Metric Paradigm (GQM) Analyse the use of the incremental approach in the distributed component- based software development. for the purpose of characterizing the viability of its use and the development continuity. with respect to the gain and difficulties of its use. from the point of view of the researcher. in the context of the distributed component-based software development.
Planning – 2 months and 18 days – Three versions of experimental plan Instantiation and Execution – Selection of the Subjects BSc (2), MSc (6) Software Development – Analysis Mechanisms Mean – Execution 1 month
Analysis of the Results Quantitative Evaluation Qualitative Evaluation Approach: Useful Instrumentation
Conclusions Incremental Approach –Development with and for reuse –Non-functional requirements –MVCASE Tool –Experimental Study Future works –Robust framework for software reuse Technical aspects {process: reuse, reengineering, adaptation, certification, software reuse environment, repository system} Non-technical aspects –Academia and Industry
Financial support