Problem Statement
OpenAMP is a relatively small open-source project in a complex problem space.
The software that uses OpenAMP runs on multiple different CPU architectures within
a single System-on-a-Chip (SoC) and provides processor life-cycle management and
inter-processor communications.
The project is to improve the organization of OpenAMP's online documentation.
There is also not a clear
delineation of the different types of documentation, meaning that things like
tutorials, API documentation, and user guides are sometimes intermixed. This
is further complicated because there is information that is relevant to the
project as a whole, and then there is information that is specific to the SoC
or operating system vendors.
Project Scope
The project will consist of developing and implementing a new organization for
the OpenAMP documentation, as well as developing any guides or processes
necessary to ensure the documentation stays organized in the future. This
could include recommending a new documentations system.
The first stage of the project will be to do an audit of the existing OpenAMP
documentation, so we can have a better idea of what is there. This will
include looking for documentation that is in the "wrong place", such as
documentation that is currently in API documentation that may not
belong there. It should also include taking stock of documentation that is not
yet written but may be written in the future, so that the organization plan
can include those when they are written.
The next stage will be to develop a plan for how the documentation will be
organized. This will include developing some method(s) on getting user
feedback, so that we can be sure that the organization plan is able to help
users best find what they are looking for. The documentation organization plan should
also include a style guide with a section about the
organization, so that contributors of new documentation can properly maintain
the organization.
The final stage will be to adopt the new organization and make the OpenAMP
documentation follow the new organization. TDepending on how different the new organization plan is from the
existing documentation, this may need to be implemented in several stages, to
minimize the disruption to the rest of the OpenAMP development.
Work that is out-of-scope for this project:
It will be out of scope for this project to write new documentation
that is found to be missing. New documentation requires technical
knowledge of the underlying hardware and operating systems and generally must be done by an existing
OpenAMP developer with the proper domain knowledge. Instead, the technical
writer should make note of any gaps in documentation, which the team can
then use when writing documentation in the future.