CrossDoc
Team: Octo-Docs
Team Members Garrison Smith Peter Huettl Kristopher Moore Brian Saganey
CrossDoc Team: Octo-Docs Team Members Garrison Smith Peter Huettl - - PowerPoint PPT Presentation
CrossDoc Team: Octo-Docs Team Members Garrison Smith Peter Huettl Kristopher Moore Brian Saganey Client/Mentor Dr. James Palmer Associate Professor at NAU - SICCS Dr. John Georgas Associate Professor at NAU - SICCS
Team: Octo-Docs
Team Members Garrison Smith Peter Huettl Kristopher Moore Brian Saganey
○ Associate Professor at NAU - SICCS
○ Associate Professor at NAU - SICCS
○ Lecturer at NAU
2
3
○ Culturally diverse developers ○ Language barrier
○ Misunderstood documentation ○ Comments tightly coupled with the codebase
4
○ Easily accessible for all users ○ Editable in code or in comment store
○ Expands independently from code
○ Easily store and reference comments in different languages
5
buried and coupled with the codebase
comments with jumbled information
6
commenting method with CrossDoc
storage, and enhanced functionalities
7
8
○ Atom ○ Emacs ○ Sublime ○ Vim
9
○ Model: CrossDoc Repository ○ View: Text Editor Plugin Content ○ Controller: Command Line Program
○ Python setuptools ○ Text editor APIs ○ MediaWiki API
10
○ Create comments ○ Read comments ○ Delete comments ○ Etc..
11
○ Reads input ○ Delegates to commands
○ Implements CrossDoc functionality
○ Provides concise output ○ Outputs help text where necessary
12
○ Atom ○ Emacs ○ Sublime ○ Vim
13
file (cdoc-config.json)
comment stores
data storage
14
○ Directory of anchors ○ Local and remote
○ Comment identifier
○ Distinct categories ○ Stores comment text
15
16
17
18
Atom Sublime Vim Emacs
19
20
○ Managing limitations of text editor APIs ○ Developing a consistent user experience
○ Remote and local storage ○ Internal platform validation
○ Removing redundancy from commits ○ Encapsulation of comment text
21
○ Provided unified API through command line program ○ Integrated commands directly into each editor’s command API
○ Implementation of Wiki storage ○ Seamless integration with command line tool
○ Git Hooks (pre and post commit)
22
23
24
Completed In Progress
Now
Command-Line Program Text-Editor Plugins Remote Storage Git-Hooks
25
○ 124 Equivalence Partitions ○ Command Coverage: 100% ○ Branch Coverage: 100% ○ Python’s unittest library
○ Ensure functionality of the Text Editor Plugins to Command Line Program chain ○ Atom, Emacs, Sublime, and Vim will utilize testing classes in the CL Program
26
○ Main goal: Devs find it easy to create, push, and pull comments with CrossDoc ○ Should also feel like normal commenting with our extended systems
○ Main goal: Non-programmers able to modify comment-base from Wiki location ○ Testing the consistency of remote stores and ease-of-use for writers
27
line program performance
such as Doxygen and Javadoc
28
29
30
Without CrossDoc With CrossDoc
In Conclusion
○ MVC style architecture ○ Modular components
○ Robust command tool ○ Text editor plugins
○ Decouple comments/code ○ Remote comment editing ○ Comment categories
31
Questions/Comments
Poster Presentation 2-4pm Walkup Skydome