16
RITA demonstration Juha Taina, Antti Tevanlinna

RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Embed Size (px)

Citation preview

Page 1: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

RITA demonstration

Juha Taina,

Antti Tevanlinna

Page 2: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Rita prototype status

• Following the preliminary specifications we started Rita prototype implementation in February 2003.

• As the basis of the prototype we used the previous prototype version, which turned out to be quite valuable for our use.

• We expect to finish the first relatively complete Rita prototype in May.

Page 3: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

RITA

Partial code

Template andhook classes

Test cases

Drivers &Stubs

Test results

Statistics

New testcases

Drivers &Stubs

Defined RITA inputs and outputs (according to the specification)

Page 4: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

• Partial code– Code created from the used framework, framelets and

application code.

• Template and hook classes– Class candidates are identified and correct classes are

chosen by the end users.

• Test material– Either manual or RITA-generated material.

• Drivers and Stubs– Either manual or RITA-generated drivers and stubs.

Defined RITA inputs

Page 5: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

• Test results– Passed and failed tests.

• Statistics– Hot-spot, code, and data coverage.– Test results.– New test cases.– Automatically generated test cases based on template

and hook class interfaces.

• Generated drivers and stubs– Automatic driver and stub generation based on

frameworks and framelets.

Defined RITA outputs

Page 6: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Reality (Current status)

• During the prototype design and implementation phase we have created a few shortcuts and implemented some interesting new features.

• The inputs to Rita are generally unchanged. However, the outputs have lived a few evolution phases.

• The current prototype inputs and outputs are in the next few slides.

Page 7: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Inputs

• Partial code

• Test case code

• Structure presentation of the framework components and their relationships.

Page 8: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Outputs - method

• Code coverage, branch coverage.

• Flowchart presentation of methods and test executions.

• Code.

Page 9: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Outputs - class

• Reference coverage (soon).

• Visit coverage.

• Excellent algorithm for expressing method references within a class.

• Code.

• Coverage visualizations (soon).

Page 10: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Outputs - template

• Dynamic relationships within a package (or a framework component) in UML-style.– (Currently uses packages as subsystems.)

• Raine’s template view coverages (soon).

• Template and hook visualization (soon).

Page 11: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Outputs -framework

• Components of the framework.

• Relationships between components.

• Connected and unconnected hot spots (hooks).

Page 12: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Work so far

• General tested project structure:– Project->Framework component -> Class -> Method

• Dynamic component extractor and relationship resolver (currently outside RITA but easily included in the source code).

• Complete java language parser.

Page 13: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Work so far (cont.)

• Internal language-independent method-level graph presentation.

• Framework for executing tests, defining coverages, and analysing test results.

• Well-defined hooks for adding new tests on the fly.

Page 14: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Work so far (cont 2.)

• Generic graph visualization algorithm that dynamically adjusts node positions and minimizes edge collisions.

• Generic, flexible, fully scalable, and relocatable shape presentation.

• Dynamic flow charts from source code.

• Windowed user interface.

Page 15: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Summary

• Rita prototypes has proved to be useful even in our own development.

• Although we are satisfied with our work, nevertheless this is a prototype. It is likely that in the future this version must be discarded and a new one implemented from scratch. We leave this work to Rain… the future Rita project members.

Page 16: RITA demonstration Juha Taina, Antti Tevanlinna. Rita prototype status Following the preliminary specifications we started Rita prototype implementation

Thanks for your attention

• Questions?

• Comments?

• And mostly, suggestions, please?