I am working on a draft proposal for developing a SDK. Would like to hear feedback on what you think is the minimum required to include in an SDK.
Required Pre-requisites
- Specifications like OSLC, J2EE, etc
- Pre-requisite libraries like LYO (which includes open source like JAX-RS(Apache Wink) etc)
- Built and supported on OS platforms
- Key supported integration Use Cases
API Documentation
- Easily understood Object vocabulary
- Tutorials for each use case
- Sample code
- Working sample application and implementation
Licensing
- Terms and conditions
- License key enforcement
Test Suite
- Compliance verification tool or scenario.
Installation
- Method for packaging and installing adapters
- Installation guide ( How to configure OAuth, LQE, etc )
- Installation verification test tool
Productivity Tools and Extensions
- IDE / Eclipse views or perspectives to speed development
Also how does or should an SDK complement a community for:
- Getting support
- Offering a market place to market adapters or solutions build with the SDK
Carlos, what is the target audience and solution space for the proposed SDK? I agree with your points on documentation. Those are critical as well as a license that will pass legal scrutiny for an COO. I work daily with many SDKs and API and the good ones go almost unnoticed but the bad ones are painful.
Another idea would be to offer both Java and Python as implementation languages. I am seeing a steady trend in this space of rapid prototyping in Python.
Hi Bryan, Thanks for the feedback you can see the draft here:
http://wiki.eclipse.org/Lyo/TRSSDK