Project Plan For MoDisco, version 0.11

Introduction

---- DRAFT ---
This document lays out the feature and API set for the next release of the Eclipse MoDisco framework (MDT MoDisco Project), version 0.11.0. This project plan inherits from the Modeling Project Plan, which should be referenced when consulting this individual project plan.

Release Deliverables

The release deliverables have the same form as is found in most Eclipse projects, namely:
  • MDT MoDisco SDK (includes runtime, sources, examples, tests and documentation) (downloadable and update site).

Table of Contents

Release Milestones

Release milestones occur at roughly 6 week intervals and follow the Platform milestone releases by approximately 1 week; that is, until the final 4.3 releases of the Platform, upon which MDT MoDisco and other projects will release simultaneously. As MDT MoDisco depends on other projects, it will deliver its milestones at the +3 schedule in accordance with the schedule below.
M108/22/2012
M210/03/2012
M311/14/2012
M412/19/2012
M502/04/2013
M603/20/2013(API Freeze)
M705/08/2013(Feature Freeze)
RC105/22/2013
RC205/29/2013
RC306/05/2013
RC406/12/2013
Kepler06/27/2013
MDT MoDisco will produce maintenance releases to align with the Juno service releases (SR), that includes the Eclipse Platform 4.2.1 and 4.3.2 releases. MDT MoDisco may produce interim maintenance releases in addition to these in order to satisfy client requests.
  • Friday, September 29, 2012 - MDT MoDisco 0.10.1 maintenance release (Juno Service Release 1)
  • Friday, February 23, 2013 - MDT MoDisco 0.10.2 maintenance release (Juno Service Release 2)

Table of Contents

Target Environments

In order to remain current, each Eclipse release targets reasonably current versions of the underlying operating environments. The Eclipse MDT MoDisco project depends upon on the Platform and other projects, which are mostly "pure" Java. The 4.3 releases of the Eclipse Platform Project are written and compiled against version 5.0 of the Java Platform APIs, and targeted to run on version 5.0 of the Java Runtime Environment, Standard Edition. MDT MoDisco will target the same Java version as EMF, which currently also requires Java 5. Eclipse Platform SDK 4.3 will be tested and validated on a number of reference platforms. MDT MoDisco will be tested and validated against a subset of those listed for the platform.
This year we will try to make MoDisco compatible with Helios, because some potential users use old version of Eclipse.

Internationalization

The Eclipse Platform is designed as the basis for internationalized products. The user interface elements provided by the Eclipse SDK components, including dialogs and error messages, are externalized. The English strings are provided as the default resource bundles. As a result, the MDT MoDisco project will provide English strings in its default bundles and be localized to a subset of those locales offered by the Platform.

Table of Contents

Compatibility with Previous Releases

Compatibility of Release 0.11: The MDT MoDisco project will be developed in parallel, and released simultaneously, with the following Eclipse projects. As stated above, each milestone release of the MDT MoDisco project will be compatible with the corresponding milestones for each of these projects, and delivered the appropriate offset.
  • Platform SDK version 4.3
  • Eclipse Modeling Framework (EMF) version 2.9.0
  • EMF Connected Data Objects (CDO) version 4.2.0
  • EMF Compare version
  • EMF Query version 1.7.0
  • EMF Validation version
  • EMFT EMF Facet version 0.3.0
  • MDT UML2 version
  • MDT OCL version 4.1.0
  • M2M ATL version
  • M2T Acceleo version
  • Technology SWTBot version 2.0.4
  • Eclipse Business Intelligence and Reporting Tools (BIRT) version 4.3.0

Table of Contents

Themes and Priorities

A list of project requirements and agreed upon implementation time frames is found in this document. For the milestones listed in this document, a set of overall themes is used to indicate what major set of functionalities is to be concentrated on for each. These themes are presented below, while the requirements document and associated Bugzilla entries are left to those wanting more detailed information on each.

Restructuring

The MDT MoDisco project will be subject to some internal restructuring (already in progress) for several of its components to be finally migrated to the EMFT EMF Facet project. This migration will notably concern the Query Manager and Facet Manager components, parts of the Infrastructure layer. This theme is a priority to provide a stable release to all MoDisco users. That is why non critical bugs (e.g., some bugs concerning the other themes) will be fixed afterwards. Note also that the "deferred" bugs listed here will be then treated within the context of the EMFT EMF Facet project, once the migration of the corresponding components from MoDisco will be fully performed.
  • Deferred

    • [Move to EMF Facet] Add a search field in the view "EPackage registry" [305881] (target milestone: )
    • [Move to EMF Facet] A location column in the EPackage view. [305882] (target milestone: )
    • [Move to EMF Facet] Wizard page to initialize the FacetSet [307616] (target milestone: )
    • [Move to EMF Facet] handle refactoring for Java queries [308982] (target milestone: )
    • [Move to EMF Facet] NsURI column in the Facet Set view [309106] (target milestone: )
    • [Move to EMF Facet] Cannot reference a class from a different project in a Java query [309491] (target milestone: )
    • [Move to EMF Facet] Facet Shortcuts validation: type [309670] (target milestone: )
    • [Move to EMF Facet] Facet Shortcuts validation: first element's type [309672] (target milestone: )
    • [Move to EMF Facet] Facet Shortcuts validation: path well-typedness [309675] (target milestone: )
    • [Move to EMF Facet] Facet Shortcuts validation: upper bound [309677] (target milestone: )
    • [Move to EMF Facet] Unit tests to validate Shortcuts behaviors [309916] (target milestone: )
    • [Move to EMF Facet] Add meta-model choice in the QuerySet creation wizard [309918] (target milestone: )
    • [Move to EMF Facet] Add the OCL queries in the "Query creation" wizard [310068] (target milestone: )
    • [Move to EMF Facet] Separate creation tools and execution tools for org.eclipse.gmt.modisco.infra.query.ui [310102] (target milestone: )
    • [Move to EMF Facet][Table Viewer] UICustomization in Table Viewer [311673] (target milestone: )
    • [Move to EMF Facet] When to initialize catalog dependencies [311683] (target milestone: )
    • [Move to EMF Facet] Selection Windows for query Implementation Class Name [311693] (target milestone: )
    • [Move to EMF Facet] Fails to load catalog elements because metamodel is overwritten by AcceleoBuilder [312050] (target milestone: )
    • [Move to EMF Facet] FacetEditor not updated when adding query [312898] (target milestone: )
    • [Move to EMF Facet] IOException: Unable to resolve plug-in "platform:/plugin/..." [313101] (target milestone: )
    • [Move to EMF Facet] EPackage Registry view not refreshed when EPackage.Registry changes [313342] (target milestone: )
    • [Move to EMF Facet][Facet Editor] Focus on properties view [315370] (target milestone: )
    • [Move to EMF Facet] customization to provide tooltips [318324] (target milestone: )
    • [Move to EMF Facet] deadlock with ModelQuerySetCatalog (between JavaValidationQueryBuilder and ValidationJob) [318735] (target milestone: )
    • [Move to EMF Facet] ModelQueryResult should have a link to the ModelQuery [323376] (target milestone: )
    • [Move to EMF Facet] refactoring features when renaming queries [327081] (target milestone: )
    • [Move to EMF Facet] catalog elements in same plug-in as Ecore model [327758] (target milestone: )
    • [Move to EMF Facet] ConcurrentModificationException in catalog [328263] (target milestone: )
    • [Move to EMF Facet] default Facets [328319] (target milestone: )
    • [Move to EMF Facet][Query] Error with projects with white space in their name [329800] (target milestone: )
    • [Move to EMF Facet] cannot create query in query set with errors [333427] (target milestone: )
    • [Move to EMF Facet] Access to QueryUtils [333752] (target milestone: )
    • [Move to EMF Facet] Support for Javascript-queries [339183] (target milestone: )
    • [Move to EMF Facet] QuerySet & FacetSets opened with MoDisco browser by default [340282] (target milestone: )
    • [Unit Test Failure][Move to EMF Facet] intermittent failure on java.browser.customization.test [341507] (target milestone: )
    • [Browser][Move to EMF Facet] model disappears when adding query [352313] (target milestone: )
    • [Move to EMF Facet] FacetTests regression : noclassDefFound WorkspaceModifyOperation [333362] (target milestone: )
    • [Move to EMF Facet][MoDisco project wizard] should be singleton [326533] (target milestone: )

Scalability

The MDT MoDisco project will be subject to several upgrades directly related to the improvement of scalability for its different components. This will include the increase of global performances (in terms of CPU time, memory footprint, etc), but also the more advanced support for (very) big EMF models.
  • Deferred

    • [CDO][Scalability][Java][Benchmark] Java discoverer Benchmark : mix of trace with CDO server trace [310141] (target milestone: )
    • [Scalability][Java][Benchmark] don't visit the project for each pass [344428] (target milestone: )
    • [Scalability][Java-KDM] Fix long execution time [352985] (target milestone: )

Service, Support and Maintenance (general project and Infrastructure layer)

The MDT MoDisco project has a proven track record of quality and reliability. After restructuring, service and support will take priority over new development work; commitments and schedules are subject to arbitrary change, slippage, or even deferral. Note also that the bugs tagged [Move to EMF Facet] will be then treated within the context of the EMFT EMF Facet project, once the migration of the corresponding components from MoDisco will be fully performed.
  • Committed

    • [Unit Test Failure] org.eclipse.modisco.infra.browser.tests.TestMetaclasses [359257] (target milestone: ---)
    • [Unit Test Failure] org.eclipse.modisco.infra.browser.tests.TestOpenModel [359258] (target milestone: ---)
    • [Unit Test Failure] org.eclipse.modisco.infra.browser.tests.TestSearch [359260] (target milestone: ---)
    • [Unit Test Failure] org.eclipse.modisco.infra.browser.tests.TestURIDialog [359261] (target milestone: ---)
    • [Unit Test Failure] org.eclipse.modisco.infra.discovery.tests.BooleanCellEditorTest.testBooleanCellEditor [359262] (target milestone: ---)
    • Birt disabled [359374] (target milestone: ---)
    • Disabled junit test java.discoverer.cdo.tests [363302] (target milestone: ---)
    • SWTBot tests disabled for juno build [363325] (target milestone: ---)
    • [Unit Test Failure] org.eclipse.modisco.infra.browser.custom.examples.java.jdk.tests.Tests.bug308991 [367497] (target milestone: ---)
    • [Unit Test Failure] org.eclipse.modisco.java.browser.customization.test.Tests.bug308991 [367498] (target milestone: ---)
    • [Unit Test Failure] browser tests failed to start [368655] (target milestone: ---)
    • removal of the documentation moved to the help center [376049] (target milestone: ---)
    • Tests disabled due to EMF Compare API change [378965] (target milestone: ---)
    • "MoDisco Architecture Guide" in help.eclipse.org [389109] (target milestone: ---)
    • Export Package org.eclipse.modisco.kdm.source.extension.util [396051] (target milestone: ---)
    • [4.2] The MoDisco browser always keeps loading when reopening Eclipse 4.2 [376184] (target milestone: ---)
    • org.junit4 is gone from M6 [402723] (target milestone: ---)
    • [Unit Test Failure] KdmToUml2ConverterTest [363319] (target milestone: ---)
    • Compatibility with Helios [382359] (target milestone: ---)
    • [documentation] Documentation for 0.8 in Indigo help center [352312] (target milestone: ---)
    • [Releng] Use tycho to build MoDisco [386235] (target milestone: 0.10.1 RC1)
    • [Doc] Only one documentation entry point [386694] (target milestone: 0.10.2 RC1)
    • [Dev] Switch trunk to 0.11.0 [401066] (target milestone: 0.11.0 M1)
    • Move documentation to mediawiki files in documentation plug-ins [356051] (target milestone: ---)
  • Proposed

    • [4.2] accessibility, uicustom and facets buttons disappear from the main toolbar in Eclipse 4.2 [376196] (target milestone: ---)
  • Deferred

    • [Deprecated] AbstractMoDiscoCatalog.updateWSFile(IFile) [309327] (target milestone: ---)
    • [Deprecated] AbstractMoDiscoCatalog.addWSFile(IFile) [309337] (target milestone: ---)
    • [Deprecated] AbstractMoDiscoCatalog.addWSFile(IFile,boolean) [309340] (target milestone: ---)
    • [Deprecated] AbstractMoDiscoCatalog.removeWSFile(IFile) [309341] (target milestone: ---)
    • [Move to EMF Facet] Cannot reference a class from a different project in a Java query [309491] (target milestone: ---)
    • [Move to EMF Facet] Unit tests to validate Shortcuts behaviors [309916] (target milestone: ---)
    • [Move to EMF Facet] Separate creation tools and execution tools for org.eclipse.gmt.modisco.infra.query.ui [310102] (target milestone: ---)
    • [Move to EMF Facet] When to initialize catalog dependencies [311683] (target milestone: ---)
    • [Move to EMF Facet] Fails to load catalog elements because metamodel is overwritten by AcceleoBuilder [312050] (target milestone: ---)
    • [Move to EMF Facet] FacetEditor not updated when adding query [312898] (target milestone: ---)
    • [Move to EMF Facet] IOException: Unable to resolve plug-in "platform:/plugin/..." [313101] (target milestone: ---)
    • Eclipse-SourceReference [313140] (target milestone: ---)
    • [Move to EMF Facet] EPackage Registry view not refreshed when EPackage.Registry changes [313342] (target milestone: ---)
    • [Move to EMF Facet] deadlock with ModelQuerySetCatalog (between JavaValidationQueryBuilder and ValidationJob) [318735] (target milestone: ---)
    • [Workflow] Multiple selection in tasks panel [326664] (target milestone: ---)
    • [Workflow] many broken externalized strings [327741] (target milestone: ---)
    • [Move to EMF Facet] catalog elements in same plug-in as Ecore model [327758] (target milestone: ---)
    • [Move to EMF Facet] ConcurrentModificationException in catalog [328263] (target milestone: ---)
    • [Browser] Facet "sticker" icons don't keep their aspect ratio [328446] (target milestone: ---)
    • [Move to EMF Facet][Query] Error with projects with white space in their name [329800] (target milestone: ---)
    • [CDO] Compilation regression on Infra & Java Discoverer based on CDO [329887] (target milestone: ---)
    • [Browser] Invalid thread access [330774] (target milestone: ---)
    • Cache for lists by EClass (MetaclassInstancesAdapter) : wrong computing [333398] (target milestone: ---)
    • [Browser] navigation history doesn't remember multi selection of metaclasses [333413] (target milestone: ---)
    • [Move to EMF Facet] cannot create query in query set with errors [333427] (target milestone: ---)
    • [Move to EMF Facet] Access to QueryUtils [333752] (target milestone: ---)
    • fix warnings [334614] (target milestone: ---)
    • duplicated code to create plug-in project [334616] (target milestone: ---)
    • [Browser] shortcut icon depending on Resource passed [337094] (target milestone: ---)
    • [Workflow] ExportInfosImpl#getAllUnitsOfWork not implemented [337940] (target milestone: ---)
    • [Deprecated] org.eclipse.gmt.modisco.workflow [337942] (target milestone: ---)
    • [Deprecated] org.eclipse.gmt.modisco.workflow.mwe [337969] (target milestone: ---)
    • tests musn't be internationalized [339988] (target milestone: ---)
    • Bundle-Localization: plugin [340135] (target milestone: ---)
    • [Discovery] Add warning if default target file already exists [340170] (target milestone: ---)
    • [Move to EMF Facet] QuerySet & FacetSets opened with MoDisco browser by default [340282] (target milestone: ---)
    • [Dev] ant emtlCopy runs in a loop (Acceleo) [343238] (target milestone: ---)
    • [Deprecated] oegm.infra.discoverymanager.Discoverer API [343840] (target milestone: ---)
    • "Browse Code in Text Editor" is always enabled [344256] (target milestone: ---)
    • [Browser] "Synchronize with source code" [344679] (target milestone: ---)
    • Put javadoc in a separate feature [346426] (target milestone: ---)
    • FolderUtils: management of folders hierarchy [346633] (target milestone: ---)
    • [Browser][Move to EMF Facet] model disappears when adding query [352313] (target milestone: ---)
    • Menu items appear where they shouldn't with Eclipse 4.2 [354962] (target milestone: ---)
    • externalize strings that have not been externalized in 0.9 [355237] (target milestone: ---)
    • deadlock between MetaclassInstancesAdapterWithFacet and InstancesForMetaclass [356808] (target milestone: ---)
    • ConcurrentModificationException in EMFUtil#findAllClasses [356811] (target milestone: ---)
    • Generation of KDM model from Java: Missing parameter entry [361915] (target milestone: ---)
    • installation in Eclipse 4.2 using Eclipse modeling Components Discovery UI doesn't work [376079] (target milestone: ---)
    • ModelBrowser automatically closed when restarting Eclipse [376188] (target milestone: ---)
    • missing Ejbjar and WebApp metamodels documentation [376691] (target milestone: ---)
    • missing Instance Icon and Sticker Icon documentation in the section "what can be customized ?" [376692] (target milestone: ---)
    • Collapse Link customisation feature appears only in documentation [376693] (target milestone: ---)
    • Error creating Modisco Example project [392835] (target milestone: ---)
    • [Java-KDM] Attributes of BindsTo not conform KDM specification [406004] (target milestone: ---)
    • [Move to EMF Facet] FacetTests regression : noclassDefFound WorkspaceModifyOperation [333362] (target milestone: 0.9.0 M5)
    • [Move to EMF Facet][MoDisco project wizard] should be singleton [326533] (target milestone: ---)

Service, Support and Maintenance (Technologies and Use Cases layers)

The MDT MoDisco project has a proven track record of quality and reliability. After restructuring, service and support will take priority over new development work; commitments and schedules are subject to arbitrary change, slippage, or even deferral.
  • Committed

    • [Unit Test Failure] o.e.m.jee.webapp.discoverer.tests.TestNoUri.test001 stays stuck [354468] (target milestone: ---)
    • [Unit Test Failure] testKdmToUmlConverter [359247] (target milestone: ---)
    • [Unit Test Failure] testKdmToUmlConverter_bug318638 [359248] (target milestone: ---)
    • [4.2] NullPointerException when using UML discoverers in Eclipse 4.2 [376144] (target milestone: 0.11.0 M3)
  • Proposed

    • [Java-KDM] missing code elements while transforming from java code model to KDM model [338874] (target milestone: ---)
    • [Java] Sequences of '*' in javadoc are lost [340962] (target milestone: ---)
    • [Java] NPE due to method parameter of kind C1<X>.C2 [354532] (target milestone: ---)
    • KDMEntity attributes should be EOperations instead [362784] (target milestone: ---)
    • Export Package org.eclipse.modisco.java.composition.util [396031] (target milestone: ---)
  • Deferred

    • [Deprecated] KDMtoUML2Converter attributes [306520] (target milestone: ---)
    • [Java][CDO] ArrayIndexOutOfBoundsException in using Java CDO discoverer [310138] (target milestone: ---)
    • [CDO][Scalability][Java][Benchmark] Java discoverer Benchmark : mix of trace with CDO server trace [310141] (target milestone: ---)
    • [Java] metamodel : reduce PackageAccess memory usage [310145] (target milestone: ---)
    • [Java] metamodel : missing annotations on Package [310148] (target milestone: ---)
    • [Java] metamodel : PrimitiveType is not Abstract [311157] (target milestone: ---)
    • [Deprecated] Java DiscoveryParametersBean attribute [320653] (target milestone: ---)
    • [Java] Class in Default Package are not well managed [329536] (target milestone: ---)
    • [Java][CDO] unnecessarily long tests in JavaJunitCDO [331509] (target milestone: ---)
    • [JSP] Java Heap Space while discovering a small JSP [332455] (target milestone: ---)
    • [Deprecated] Generate_JavaStructures class [332777] (target milestone: ---)
    • [Java] Management of super expression [333401] (target milestone: ---)
    • The EclipsePlugin metamodel has been generated with Java6 [334004] (target milestone: ---)
    • [Composition] all result models are not really in the same ResourceSet [334375] (target milestone: ---)
    • [Java] VariableDeclarationFragmentImpl cannot be cast to Type [338787] (target milestone: ---)
    • [Discovery] The XML discoverer has an indirect dependency on JDT [338829] (target milestone: ---)
    • [Java] JavaJdtBridge fails to return elements from the default package [341132] (target milestone: ---)
    • [Unit Test Failure][Move to EMF Facet] intermittent failure on java.browser.customization.test [341507] (target milestone: ---)
    • [Java] query error on java.CastExpression [341516] (target milestone: ---)
    • [Java] improve progress reporting [341881] (target milestone: ---)
    • [Java] NPE in CommentsManager#jdtLocationSearch [343244] (target milestone: ---)
    • some discovery menu actions appear even though the selection is empty [343537] (target milestone: ---)
    • [Java] Exception when discovering java model from java project with annotations [344259] (target milestone: ---)
    • [Java] Error running Java discoverer benchmark on org.eclipse.ui.workbench [344423] (target milestone: ---)
    • [Scalability][Java][Benchmark] don't visit the project for each pass [344428] (target milestone: ---)
    • [Java][Java-KDM] An invalid XML character (Unicode: 0x2) was found in the element content [350529] (target milestone: ---)
    • [Java-KDM] Error discovering KDM model : Feature type does not exist on java!EnumConstantDeclaration [351069] (target milestone: ---)
    • [Java] AnnotationTypeMemberDeclarationImpl cannot be cast to AbstractMethodDeclaration [351070] (target milestone: ---)
    • [Java] NPE in AnnotationImpl.toString [351183] (target milestone: ---)
    • [Java-KDM] transformation fails on org.eclipse.ui.ide [351837] (target milestone: ---)
    • [Scalability][Java-KDM] Fix long execution time [352985] (target milestone: ---)
    • KDMEntity.groupedElement does not return all union children [362489] (target milestone: ---)
    • KDMEntity.group does not return all union parents [362491] (target milestone: ---)
    • Re-export dependencies to simplify the use of GenerateJavaExtended [368318] (target milestone: ---)
    • Memory leak in the java discoverer. [374522] (target milestone: ---)
    • NullPointerException when using UML UICustom Example [376239] (target milestone: ---)
    • JSP discoverer : java heap space with special character encoding with ISO-8859-1 [378167] (target milestone: ---)
    • AbstractDeploymentDescriptorDiscoverer.getDescXmlVersion don't work properly with file where dtd url isn't "http://java.sun.com" [384408] (target milestone: ---)
    • [Java-Kdm] IllegalArgumentException when discovering from multiple projects in "ELEMENTS_TO_ANALYZE" [386579] (target milestone: ---)
    • org.eclipse.gmt.modisco.java.generation specifies invalid extension point [393037] (target milestone: ---)
    • Nullpointer Exception in AbstractDiscoverKDMSourceAndJavaModel [397384] (target milestone: ---)
    • [Java] JavaUtil.getQualifiedName doesn't handle FieldDeclarationImpl [305662] (target milestone: ---)
    • [Java] ClassCastException while discovering Apache math commons [351590] (target milestone: ---)
    • [KDM-UML] New test : org.eclipse.modisco.kdm.uml2converter.tests [344097] (target milestone: 0.9.0 M7)

Table of Contents

Appendix Legal Notices

  • Java is a trademark or a registered trademark of Oracle and Sun, Inc.
  • UML is trademark or registered trademark of the Object Management Group, Inc.
  • JEE is trademark or registered trademark of Oracle and Sun, Inc.
  • All other products or company names are mentioned for identification purposes only, and may be trademarks or service marks of their respective owners.

Table of Contents

view raw xml of project plan
from project meta-data key "projectplanurl"