Identifying our requirements

The most critical step in our architectural design process is really zooming in on the required features, packages, and technologies that we'll need to implement. For our file management and revision control application, there are a few key points that will stand out:

  • A web interface that allows file uploads, downloads, and revisions.
  • A command-line interface that allows us to roll back changes and modify files directly.
  • A filesystem listener that finds changes made to a shared location.
  • A data store system that has strong Go tie-in and allows us to maintain information about files and users in a mostly consistent manner. This system will also maintain user records.
  • A concurrent log system that maintains and cycles logs ...

Get Go: Building Web Applications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.