Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Component Technology and Component Tracing CSC532 Presentation Developed & Presented by Feifei Xu.

Similar presentations


Presentation on theme: "Software Component Technology and Component Tracing CSC532 Presentation Developed & Presented by Feifei Xu."— Presentation transcript:

1 Software Component Technology and Component Tracing CSC532 Presentation Developed & Presented by Feifei Xu

2 Introduction The software industry is facing both economical and technical challenges. As the rapid increase of software programs in the size and complexity, it is very important to reduce high software cost and complexity while increasing reliability and modifiability. Software component technology attracts more people in the software engineering community because it can reduce developmental costs and realize the improvement of the entire system’s reliability.

3 What is the software component? A software component is a unit of composition with a contractually specified interface and explicit context dependences only. A software component can be deployed independently and is subject to composition by third parties.

4 Component-based development technology is based on building complex software systems from reusable simpler components.

5 Drivers for component-based development Requirement changes Software grow larger and more complex Fast cycle time for the market reasons Development of the www and internet Rapid pace of technological change Economic necessity of reuse

6 Two major elements of Component- based development The component architecture Component-based development process

7 Main elements of component architecture Component framework Component Component contracts Coordination service Glue code

8

9 Component-based development process Requirement gathering Analysis Design Implementation Testing Component brokerage

10 Component-based development process puts the reuse of components on the center of entire development process

11 Component Technology – Industry Initiatives Microsoft’s COM OMG’s CORBA SUN’s Java Beans SUN’s Enterprise Java Beans

12 Monitoring Software Components When more and more third-party software components are available in the market,software workshops begin to develop component-based programs by using the component engineering. Many people emphasize the issues in building component-based programs, very few people address the challenges in maintenance and testing problems of software components

13 Issues in testing and maintenance of component-based software Hard to understand component behaviors in a system Difficulty on component error isolation, tracking and debugging High costs on performance testing and tuning for components Lack in system resource validation for components

14 Two major challenges in developing component-based software Design software components with consistent mechanisms and interfaces to support the tracking and monitoring of component behaviors, functions, performance, and resources. Develop a systematic method and environment to monitor and analyze component behaviors and system performance

15 What does “tracking” mean? According to IEEE standard: “tracking” refers to the process of following a moving object or a variable input quantity, using a servomechanism. A trace routine refers to a program routine that provides a historical record of specified events in the execution of a program

16 Traceability of a component Behavior traceability --- It is the degree to which a component facilitates the tracking of its internal and external behaviors. · track internal behaviors of components · track external behaviors of components Trace controllability --- It refers to the extent of the control capability in a component to facilitate the customization of its tracking function.

17 Five types of component traces: Operational trace Performance trace State trace Event trace Error trace

18 State Trace Performance Trace Event Trace Error TraceOperational Trace

19 Operational trace: · Internal operation trace · external operation trace It records the interactions of component operations, such as function invocation.

20 Performance trace It records the performance data and benchmarks for each function of a component in a given platform and environment

21 State trace It tracks the object states or data or data states in a component. In component black box testing it is very useful for testers to track the public visible objects of components

22 Event trace It records the events and sequences occurred in a component. Error trace It records the error messages generated by a component.

23 Three different systematic tracking mechanisms Framework-based tracking Automatic code insertion Automatic component wrapping

24 Frame-based tracking A well-defined tracking framework is provided for component engineers to add program tracking code according to the provided programming reference manual

25 Automatic Code Insertion We can insert tracking code into component source code to track the values of its input data and output data

26 Automatic Component Wrapping We adds tracking code to monitor the external interface and behaviors of components by wrapping them as black boxes.

27 Conclusion Component-based technology is trend High quality of component is most important Tracing technology of the software How to provide well-defined tracking framework effective tracking mechanisms with minimum programming

28 Thank You October. 2003


Download ppt "Software Component Technology and Component Tracing CSC532 Presentation Developed & Presented by Feifei Xu."

Similar presentations


Ads by Google