Skip to content
This repository has been archived by the owner on Mar 15, 2020. It is now read-only.

Latest commit

 

History

History
91 lines (74 loc) · 4.28 KB

irene-lly.adoc

File metadata and controls

91 lines (74 loc) · 4.28 KB

Irene Lee (irene-lly) - Project Portfolio for NUStudy

About the project

This portfolio documents my contributions to NUStudy, a learning application. Our team of 5 software engineering students from the National University of Singapore (NUS) were asked to enhance an Addressbook application with Command Line Interface (CLI) as the primary mode of input as part of our Software Engineering project in CS2103T. We had to conceptualize and implement enhancements to the existing Addressbook application and do it in a manner such that future developers can continue working on it. After some deliberation, we decided to morph it into an application to facilitate learning for students. The morphed application, NUStudy, enables students to add and manage notes; test their knowledge with questions that they have added; get statistics of how well they have answered these questions; and set tasks to plan their revision schedule.

I contributed to this project by implementing the statistics feature as documented below. In particular, I have implemented the stats, question, report and overview commands. The following sections will elaborate more on these enhancements and showcase some documentations that I have added to the user and developer guides in relation to these enhancements.

Key to symbols and formatting used:
stats: A grey highlight indicates that this is a command that can be inputted into the command line and executed by the application.
(#1): A hash followed by a number indicates a pull request or an issue.

Summary of contributions

This section shows the enhancements I have added to the project as well as my other contributions.

Enhancement added: I added the ability to get statistics of the questions done in the quizzes.

  • What it does: The different commands allow users to filter the quiz results and return an overview of how well they have done the questions.

  • Justification: The question and report commands help users to get an idea of what subjects they are weaker in and see the common mistakes that they have made. The stats and overview commands gives users an idea of which questions they should attempt more of and what subjects they have been neglecting. Overall, the statistics feature helps to provide users with a rough outline of their progress in mastering the subject.

  • Highlights: This enhancement affects existing commands and commands to be added in future. An in-depth analysis of design alternatives is required in the future. The implementation was also challenging as it required many changes to existing models, logic classes and the UI.

Code contributed: Please click this link to see a sample of my code: here

Other Contributions:

  • Role:

    • I was in charge of code quality. My job was to make sure that the code follows a consistent style, is easy to understand and is well-documented.

  • Community:

    • Reviewed pull requests: #53, #97

    • Contributed to forum discussions: #71

    • Reported bugs found from other team’s applications: #1 #2

  • Enhancements to existing features:

    • Updated the GUI so that different panels can be stacked: #56

User guide contributions

We have modified the existing Addressbook User Guide to include commands for the enhancements that we have added as well as remove the old commands that were not relevant to our project. Given below shows my additions to the NUStudy User Guide for the statistics feature.


Developer guide contributions

We have also modified the existing AddressBook Developer Guide to include implementation of our features as well as remove the old documentation of the AddressBook features. Given below shows my additions to the NUStudy Developer Guide for the statistics feature.