This project proposal template ushers originators, designers, implementers, testers of a project through community and TSC approval. The proposal should evolve organically as the EdgeX Project moves through the stages of conception, design, approval, implementation and deployment. The project and hence the proposal may also need several iterations. In its terminal forms it can also serve as a short manual to the features of the project for users.
This proposal template is descriptive and not normative, a guide rather than the law.
The seed of a new project has to be vetted in a public forum like edgex-tsc-device-services before creating a project proposal. It is best if the project has technical champions who believe in the project and are the maintainers of the project. The technical champions can change in the middle of the project.
Please note that readability is very important. The language of the proposal should be English if possible as that is the lingua franca of the community. The Chicago Manual Of Style should be followed for explanation of abbreviations, references etc. This is extremely important as a clear statement of the problem and its technical details are helpful to coalesce the community around a solution and prompt volunteers. The outline of a project is given below with comments on the sections.
Please leverage the Presentation Template available here for your responses to the below. Once completed, please send Proposal to edgex-tsc@lists.edgexfoundry.org – Thank you
Solution to the problem addressed in the motivation section. Try to make this as detailed as possible. The topics given below are suggestions for Technical Projects, address only if they are relevant to your problem, add other topics as you see relevant. The use of diagrams is encouraged to elucidate concepts.
Alignment with EdgeX tenets and overall architecture
Backward compatibility (hard fork or updates by EdgeX users needed?)
Rough design and scenarios on the probable effects, if any
Address any possible objections and also support that came up during seed proposal from technical community on the lists.
Traceability, testing criteria to gauge effects on installed base.
License of codebase (including dependencies)
Any trademarks used in the project name or codebase?
The above leverages process utilized by the Hyperledger Project.