@startuml class Execution{ String launchBy Date launchDate } class GwtTestCase{ String label } class GwtTestStep{ String transactionLabel } class GwtTestStepResult{ String status String timeTaken String encoding TransactionInstance transaction } class GwtTestSuite{ String label } class Parameter{ String label String defaultValue } class ParameterUsed{ String value } class SoapuiProject{ String label String xmlFilePath String version boolean active String owner Date creationDate } class TestComponent{ String label } class TestInstanceResult{ int testInstance; String lastStatus; String testKeyword; String testName; } Execution "1" -up- "*" GwtTestStepResult Execution "1" -up- "*" ParameterUsed Execution "1" -up- "1" TestInstanceResult GwtTestCase "*" -right- "1" GwtTestSuite GwtTestCase "1" -left- "*" GwtTestStep GwtTestStep "1" -- "*" GwtTestStepResult GwtTestSuite "*" -down- "1" SoapuiProject GwtTestSuite "1" -- "*" TestInstanceResult Parameter "*" -- "1" TestComponent Parameter "*" -- "1" SoapuiProject Parameter "1" -- "*" ParameterUsed TestComponent --|> GwtTestCase TestComponent --|> GwtTestStep TestComponent --|> GwtTestSuite note "Used when executing test suite with a test instance number (connectathon)" as n2 TestInstanceResult -- n2 note "when charging a soapui project soapuiProject, testSuite, testCase, testStep and customProperty are filled up" as n1 note "New version are uploaded and the old one is deactivated" as n3 SoapuiProject -- n3 @enduml