You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 77 Next »

2017-2018 Technical Roadmap

Formalize the core Fedora services Application Programming Interface (API)

This priority is to clearly define the core services that Fedora promises as a standards-based RESTful API, accompany this API with any necessary domain-specific ontologies, and provide a compatibility test suite. Outstanding issues can be found on GitHub.

Align the current Fedora implementation with the API specification

Once the API specification is complete, the current Fedora implementation will need to be updated to fully align with the specification. This work will result in a 5.x Fedora release based on our move to semantic versioning.

Support alternate Fedora implementations

One of the goals of the API specification is to allow the community to experiment with different back-end Fedora implementations to address different use cases. We will support and encourage community members as they experiment along these lines.

2016-2017 Technical Roadmap

  1. Formalize the core Fedora services Application Programming Interface (API)
    This priority is to clearly define the core services that Fedora promises as a standards-based RESTful API, accompany this API with any necessary domain-specific ontologies, and provide a Technology Compatibility Kit (TCK) for each service.

    type key summary assignee reporter priority status resolution created updated due

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.


    The Fedora services are:

    1. Create/Read/Update/Delete on repository resources
      1. Standard: Linked Data Platform
      2. Include Import and Export of RDF, and option for RDF serialization to disk
      3. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    2. Versioning
      1. Standard (partial, only retrieval): Memento
      2. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    3. Atomic Batch Operations
      1. Standard: TBD
      2. key summary type created updated due assignee reporter priority status resolution

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    4. Fixity
      1. Standard (partial, on ingest): http://tools.ietf.org/html/rfc3230#section-4.3.2
      2. key summary type created updated due assignee reporter priority status resolution

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    5. Authorization
      1. Standard: WebAC
      2. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

  2. Formalize the core Fedora Service Provider Interfaces (SPIs)
    1. Messaging SPI
      1. Defining the interface that a Fedora repository implementation should implement to publish repository events
  3. Runtime configurability
    1. Enable the update of configuration settings at runtime, e.g. changing hostname published in repository events
    2. Enable pluggability of extension modules, e.g. adding an OAI-PMH module at runtime
  4. Performance and Scale
    1. Establish metrics for repository limits, including:
      1. number of resources
      2. number of bytes
      3. See: Performance and Scalability Test Plans
      4. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    2. Establish guidelines for storage options based on usage patterns

Note: Items 1 and 2 define priorities related to "Fedora as a specification", whereas Items 3 and 4 relate to "Fedora as an implementation".


2015-2016 Technical Roadmap

  1. Formalize the core Fedora services Application Programming Interface (API)
    This priority is to clearly define the core services that Fedora promises as a standards-based RESTful API, accompany this API with any necessary domain-specific ontologies, and provide a Technology Compatibility Kit (TCK) for each service.

    type key summary assignee reporter priority status resolution created updated due

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.


    The Fedora services are:

    1. Create/Read/Update/Delete on repository resources
      1. Standard: Linked Data Platform
      2. Include Import and Export of RDF, and option for RDF serialization to disk
      3. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    2. Versioning
      1. Standard (partial, only retrieval): Memento
      2. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    3. Transactions
      1. Standard: TBD
    4. Fixity
      1. Standard (partial, on ingest): http://tools.ietf.org/html/rfc3230#section-4.3.2
    5. Authorization
      1. Standard: WebAC
      2. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

  2. Formalize the core Fedora Service Provider Interfaces (SPIs)
    1. Eventing SPI
      1. Defining the interface that a Fedora repository implementation should implement to publish repository events
  3. Runtime configurability
    1. Enable the update of configuration settings at runtime, e.g. changing hostname published in repository events
    2. Enable pluggability of extension modules, e.g. adding an OAI-PMH module at runtime
  4. Performance and Scale
    1. Establish metrics for repository limits, including:
      1. number of resources
      2. number of bytes
      3. See: Performance and Scalability Test Plans
      4. type key summary assignee reporter priority status resolution created updated due

        Unable to locate Jira server for this macro. It may be due to Application Link configuration.

    2. Establish guidelines for storage options based on usage patterns

Note: Items 1 and 2 define priorities related to "Fedora as a specification", whereas Items 3 and 4 relate to "Fedora as a reference implementation".

Previous Technical Roadmap Items

Currently Supported FeaturesDesignCoreNon-core4.0Use Cases
AuthN/Zdesign x(tick)
Backupdesignx (tick)
Clustering x (warning)
  • Consistent deployment
  • REST-API support against master node
Content Modeling - Structural x (warning)

There is no content with the specified labels

Managed External Datastreams  x(tick)
Store/Deliver Large Filesdesignx (tick)

Search

design x(tick)
Transactions x (tick)
Triplestoredesign x(tick)
Versioning x (tick)
Non-Functional: Easy Deployment   (tick) 
Non-Functional: Performance -
Single-node 
   (warning)
      
Post-4.0 Priority 1 FeaturesDesignCoreNon-core4.0Use Cases
3 to 4 Upgradedesign x 

There is no content with the specified labels

Audit Servicedesignx  
Managed External Datastreams - Indexing  x  
Asynchronous storage APIdesignx  
Asynchronous storage Implementation x  
LDP-Paging x   
Web Access Control  x  
API Partitioning x   
      
Post-4.0 Priority 2 FeaturesDesignCoreNon-core4.0 
Batch Operations x  

 

 

CMIS  x  
Content Modeling - Services and Validation    
Disseminator-like Functionality  x 
Human-readable Filesystem Storage  x  
Metrics x  

Multi-tenancy

 x  
OAI-PMHdesign x  
ORCID Support  x  
Policy-driven Storagedesignx  
Relationships API x   
Self-healing Storage  x  
WebDAV  x  
Non-Functional: Performance - Clustered    
      
Previously Un-prioritized FeaturesDesignCoreNon-core4.0Use Cases

Admin UI

  x(tick)
Content API x (tick)
Identifiers x (tick)
Large-Scale Content x (warning)
  • No labels