Mariani-COTS-IEEES-2007 - focus 2 software composition...

Info icon This preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
7 6 I E E E S O F T WA R E P u b l i s h e d b y t h e I E E E C o m p u t e r S o c i e t y 0 7 4 0 - 7 4 5 9 / 0 7 / $ 2 5 . 0 0 © 2 0 0 7 I E E E components took 10 person-years (rather than the one planned person-year), mainly because of integration problems. 1 According to Barry Boehm and Chris Abts, three of the four main problems with reusing COTS products are ab- sence of control over their functionality, ab- sence of control over their evolution, and lack of design for interoperability. 2 Traditional integration testing techniques incrementally validate the integration of the modules that compose the system being tested. Test designers can derive test cases from both the source code and the specifications. 3,4 Un- fortunately, COTS components are often dis- tributed without the source code and with in- complete specifications. Moreover, developers can use them in ways that the original design didn’t predict. So, testers must test them in the contexts in which they’re used. Our proposed technique, called behavior capture and test , detects COTS component incompatibilities by dynamically analyzing component behavior. BCT incrementally builds behavioral models of components and compares them with the behavior the components display when reused in new contexts. This lets us iden- tify incompatibilities, unexpected interactions, untested behaviors, and dangerous side effects. How BCT works BCT builds two kinds of models for each service the components offer. I/O models are Boolean expressions describing the relations between the values that components exchange. Interaction models are finite-state automata (FSA) representing the sequences of interac- tions triggered by invoking the services. The models are built automatically and describe the components’ behavior in different contexts. For example, we can build behavioral models during testing (unit, integration, and system testing) or while using the components in the field under different operative conditions. When components are reused in new con- texts—for example, for building new systems or updating obsolete components—we auto- focus 2 Dynamic Detection of COTS Component Incompatibility T he development of COTS-based systems shifts the focus of testing and verification from single components to component integration. Independent teams and organizations develop COTS components without referring to specific systems or interaction patterns. Devel- oping systems that reuse COTS components (even high-quality ones) therefore presents new compatibility problems. David Garlan, Robert Allen, and John Ockerbloom reported that in their experience, integrating four COTS software composition Leonardo Mariani and Mauro Pezzè, University of Milan Bicocca Developing component- based systems introduces new compatibility problems, which an analysis technique can reveal by automatically deriving and dynamically checking behavioral models.
Image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
matically compare their interactions in the new contexts with the behavioral models built into former executions to identify new behaviors.
Image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern