Code Snippet Manager

This article concerns a software development project conducted as part of my Honours degree at the University of Surrey. The purpose of the project was to gain exposure to the complete software engineering process, including design and implementation. This project was split into two parts. The first part is a detailed design process in which UML, GUI, Use Case, Database Schema and EER diagrams were drawn and documents detailing the design process, class diagrams, use case modelling and software requirement specification were developed. The second part of the project involved implementing the designed solution and documenting the testing of the solution, evolution of the requirements, critical reflection and finally an auto-generated UML diagram showing how the implemented solution deviated from the original designs.

The software developed in this project was a Java-based Code Snipper Manager, allowing developers to store, organise and retreive code snippets.

Part 1

Design Documentation: https://www.jbm.fyi/static/code_snippet_design.pdf

Software Requirements Specification: https://www.jbm.fyi/static/code_snippet_SRS.pdf

UML Class Diagram:

UML Class Diagram Documentation: https://www.jbm.fyi/static/code_snippet_UML_doc.pdf

Use Case Diagram:

Use Case Modelling Documentation: https://www.jbm.fyi/static/code_snippet_use_case.pdf

EER Diagram:

Database Schema Design:

GUI Mock Up:

Part 2

Implemented Code Snippet Manager: https://www.jbm.fyi/static/code_snippet.jar

Code Base (including implementation and unit tests): https://www.jbm.fyi/static/code_snippet.zip

Critical Reflection: https://www.jbm.fyi/static/code_snippet_reflection.pdf

Requirements Specification: https://www.jbm.fyi/static/code_snippet_reqspec.pdf

Test Plan: https://www.jbm.fyi/static/code_snippet_test_plan.pdf

Auto-generated UML Diagram: