Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/neyapraveen/tp
Browse files Browse the repository at this point in the history
* 'master' of https://github.com/neyapraveen/tp: (46 commits)
  Fix bug in DG
  Remove diagram part
  Change links in DG to go to our repo
  Edit typo in DG
  Update PPP
  Separate pictures from the message
  Edit table of content
  Edit DG bugs
  Add glossary terms
  Standaridise UG and DG
  Fix UG documentation bugs
  Update PPP
  Update PPP
  Remove archiving data from UG
  Update javadocs
  Add page break
  Update glossary
  Add javadocs
  Update screenshots
  Fix typo
  ...
  • Loading branch information
neyapraveen committed Nov 13, 2023
2 parents 646afb3 + a200c33 commit 014becf
Show file tree
Hide file tree
Showing 20 changed files with 691 additions and 358 deletions.
489 changes: 296 additions & 193 deletions docs/DeveloperGuide.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/SettingUp.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ If you plan to use Intellij IDEA (highly recommended):

1. **Learn the design**

When you are ready to start coding, we recommend that you get some sense of the overall design by reading about [AddressBook’s architecture](DeveloperGuide.md#architecture).
When you are ready to start coding, we recommend that you get some sense of the overall design by reading about [StudentConnect’s architecture](DeveloperGuide.md#architecture).

1. **Do the tutorials**
These tutorials will help you get acquainted with the codebase.
Expand Down
2 changes: 1 addition & 1 deletion docs/Testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ This project has three types of tests:
e.g. `seedu.address.commons.StringUtilTest`
1. *Integration tests* that are checking the integration of multiple code units (those code units are assumed to be working).<br>
e.g. `seedu.address.storage.StorageManagerTest`
1. Hybrids of unit and integration tests. These test are checking multiple code units as well as how the are connected together.<br>
1. Hybrids of unit and integration tests. These test are checking multiple code units as well as how they are connected together.<br>
e.g. `seedu.address.logic.LogicManagerTest`
339 changes: 269 additions & 70 deletions docs/UserGuide.md

Large diffs are not rendered by default.

10 changes: 8 additions & 2 deletions docs/diagrams/StorageClassDiagram.puml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,10 @@ Class "<<interface>>\nAddressBookStorage" as AddressBookStorage
Class JsonAddressBookStorage
Class JsonSerializableAddressBook
Class JsonAdaptedPerson
Class JsonAdaptedTag
Class JsonAdaptedGroup
Class JsonAdaptedSocialMedia
Class JsonAdaptedTutorial
Class JsonAdaptedTask
}

}
Expand All @@ -38,6 +41,9 @@ JsonUserPrefsStorage .up.|> UserPrefsStorage
JsonAddressBookStorage .up.|> AddressBookStorage
JsonAddressBookStorage ..> JsonSerializableAddressBook
JsonSerializableAddressBook --> "*" JsonAdaptedPerson
JsonAdaptedPerson --> "*" JsonAdaptedTag
JsonSerializableAddressBook --> "*" JsonAdaptedGroup
JsonAdaptedPerson --> "*" JsonAdaptedSocialMedia
JsonAdaptedPerson --> "*" JsonAdaptedTutorial
JsonAdaptedGroup --> "*" JsonAdaptedTask

@enduml
Binary file added docs/images/StorageClassDiagramNew.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/checkGroup.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/helpMessage.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ title: StudentConnect
![Ui](images/Ui.png)

**StudentConnect is a solution for hassle-free team formation for students to browse profiles and connect with others for the CS2103T and CS2101 group project.**<br>
<div></div>
While it has a GUI, most of the user interactions happen using a CLI (Command Line Interface).

* If you are interested in using StudentConnect, head over to the [_Quick Start_ section of the **User Guide**](https://ay2324s1-cs2103t-f12-2.github.io/tp/UserGuide.html#quick-start).
Expand All @@ -17,4 +18,4 @@ While it has a GUI, most of the user interactions happen using a CLI (Command Li
**Acknowledgements**

* This project is based on the AddressBook-Level3 project created by the [**SE-EDU initiative**](https://se-education.org).
* Libraries used: [**JavaFX**](https://openjfx.io/), [**Jackson**](https://github.com/FasterXML/jackson), [**JUnit5**](https://github.com/junit-team/junit5)
* Libraries used: [**JavaFX**](https://openjfx.io/), [**Jackson**](https://github.com/FasterXML/jackson), [**JUnit5**](https://github.com/junit-team/junit5).
46 changes: 0 additions & 46 deletions docs/team/johndoe.md

This file was deleted.

28 changes: 21 additions & 7 deletions docs/team/maj0-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,26 +8,38 @@ title: Majedah's Project Portfolio Page
StudentConnect is the solution for hassle-free team formation for CS2103T students to browse profiles and connect with others for group projects.

# Summary of Contributions
Given below are my contributions to the project.
Given below are my contributions to StudentConnect.

## Code contributed
* Link to [RepoSense report](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=maj0-0&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos)
* Link to my [RepoSense report](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=maj0-0&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos).

## Enhancements implemented
* **New Feature**: Tasks Command
* What it does: Lists out the set of tasks for each group.
* Highlights: Since StudentConnect is catered towards CS2103T and CS2101, the tasks are pre-set and are automatically assigned to each group.
* Challenges: Our team had initially planned to have a separate UI list for tasks, but due to time constraints, the tasks now show up in the feedback panel instead.
* **Enhancement**: Added Tutorial, Gender and Nationality fields
* Included the tutorial, nationality and gender fields to the person model, and modified the UI to reflect these changes.
* Included the tutorial, nationality and gender fields to the person model.
* **Enhancement**: Updated UI for nationality and gender fields.
* **Enhancement**: List Command
* Updated the list students feature's success message to match StudentConnect context
* Updated the list students feature's success message to match StudentConnect context.

## Contributions to testing
* Implemented test cases for the `Tutorial` class.
* Updated test cases that involve the Person model to include tutorial.
* Implemented test cases for the `Nationality` and `Gender` classes.
* Updated test cases that involve the Person model to include nationality and gender.
* Added gender and nationality to `TypicalPersons`.
* Implemented test cases for tasks command and parser.
* Included `TypicalTasks` to be used for testing


## Contributions to the UG
* Under student commands and command summary, the 'list' portion.
* Under group commands and command summary, the 'tasks' portion.
* Added the "How to Use This Guide" section.
* Added the "Glossary" section.
* Updated the "Appendix" section to include requirements for all Persons' fields.
* Updated hyperlink format based on peer-review.
* Added dividers throughout UG.
* Made sure screenshots were up-to-date when features are added or updated.
Expand All @@ -40,9 +52,11 @@ Given below are my contributions to the project.

## Contributions to team-based tasks
* Did equal share of tasks assigned.
* Ensured JAR releases were ready when needed.

## Review/ mentoring contributions
* to be added soon
## Review / mentoring contributions
* Reviewed teammates' PRs and gave suggestions when appropriate.

## Contributions beyond the project team
* to be added soon
* Brainstormed and suggested new features during each milestone.
* Ensured all team deliverables were met in time.
53 changes: 36 additions & 17 deletions docs/team/neyapraveen.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,25 @@ StudentConnect is the solution for hassle-free team formation for CS2103T studen
Given below are my contributions to the project.

## Code contributed
* [RepoSense link]()
* Link to my [Reposense Report](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=neya&sort=groupTitle&sortWithin=title&timeframe=commit&mergegroup=&groupSelect=groupByRepos&breakdown=true&checkedFileTypes=docs~functional-code~test-code&since=2023-09-22)

## Enhancements implemented
* Changed `delete` feature to delete by email rather than by index.
* Changed test cases pertaining to `delete` feature
* Redid the UI, making styling decisions such as colour scheme, fonts.
* Added hyperlinks to the social media field, so users can open the urls in a browser by clicking on them
* Implemented the deleteGroup command
* Added test cases pertaining to the deleteGroup command
* Implemented the leave command
* Added test cases for the leave command
* Added basic task classes for Todo, Deadlines and TaskList before implementation of the task related functions
* Implemented and styled a confirmation pop-up for clear command
* Updated clear test cases
* Edited UI for GroupListPanel, so it would resemble PersonListPanel
* **Enhancement**: Changed `delete` feature to delete by email rather than by index.
* **Enhancement**: Redid the UI, making styling decisions such as colour scheme, fonts.
* **Enhancement**: Edited UI for GroupListPanel, so it would resemble PersonListPanel.
* **New Feature**: Added hyperlinks to the social media field, so users can open the urls in a browser by clicking on them.
* **New Feature**: Implemented the `deleteGroup` command.
* **New Feature**: Implemented the `leave` command.
* **New Feature**: Added basic task classes for `Todo`, `Deadlines` and `Tasklist` before implementation of the task related functions.
* **New Feature**: Implemented and styled a confirmation pop-up for clear command (including css).

## Contributions to testing
* Changed test cases pertaining to `delete` feature.
* Created a `JavaFXInitialiser` to be used for fx and ui related tests.
* Implemented `PersonCardTest`.
* Added test cases pertaining to the `deleteGroup` command.
* Added test cases for the `leave` command.
* Updated `clear` test cases.

## Contributions to the UG
* Added documentation for the feature `delete`
Expand All @@ -34,6 +38,13 @@ Given below are my contributions to the project.
* Reformatted UG according to general commands, person commands and group commands
* Added documentation for the feature `leave`
* Added documentation for the feature `deleteGroup`
* Created the Appendix section.
* Wrote introduction section.
* Added page breaks for formatting.
* Added back to table of contents hyperlink at the end of pages.
* Added relevant hyperlinks like download link for java 11.
* Added relevant warning messages on things to look out for.
* Added hyperlinks of glossary terms.

## Contributions to the DG
* Updated initial contents in DG after discussion(target user profile, value proposition, user stories, use cases, NFRs, Glossary )
Expand All @@ -42,13 +53,21 @@ Given below are my contributions to the project.
* Under Use-cases, `Clearing all data`
* Under Use-cases, `Delete a group`
* Under Use-cases, `Leave a group`
* Add relevant user stories for clear, delete group, leave group, social media links, delete
* Add relevant user stories for clear, delete group, leave group, social media links, delete.
* Rearranged all use cases.
* Numbered all use cases for easy reference.
* Added sequence diagram using PlantUML.

## Contributions to team-based tasks
* Did equal share of tasks assigned
* Did equal share of tasks assigned.

## Review/ mentoring contributions
* to be added soon
* Reviewed teammates' PRs and gave suggestions when appropriate.
* Helped with teammates' UI.
* Helped in debugging.
* Ensured code quality, helped in adding javadocs.

## Contributions beyond the project team
* to be added soon
* Brainstormed ideas for features and further iterations.
* Participated in load testing.
* Helped in finding other group's bugs during PED.
44 changes: 36 additions & 8 deletions docs/team/pearlynnt.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,22 @@ layout: page
title: Pearlynn Toh's Project Portfolio Page
---

### Project: StudentConnect
# Project: StudentConnect

StudentConnect is a desktop application that stores and organises students’ contact details, and project group. Students can easily search for the profiles of other students and connect with potential teammates. This streamlines the process of forming project teams. It also offers tools for tracking project progress/deadlines, ensuring that the group stays on task.
# Overview
StudentConnect is the solution for hassle-free team formation for CS2103T students to browse profiles and connect with others for group work.

# Summary of Contributions
Given below are my contributions to the project.

## Code contributed
* Link to my [RepoSense report](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=pearlynnt&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos)

## Enhancements implemented
* **Edit Student Feature**: Added the ability to edit a student's personal details
* What it does: This feature allows the user to edit a student's personal details in the system.
* Justification: This feature helps users to keep their personal details up-to-date. Details such as social media links or their preferred tutorial slots may change over time. This is important in ensuring that users remain contactable. This feature also allows users to correct any errors in their personal details. This is important in ensuring that users' personal details are accurate and complete.
* Highlights: Modified the code to allow the new student fields to be editable.
* **Find Students Feature**: Added the ability to find student(s) by name
* What it does: This feature allows the user to find student(s) by name with any combination of partial keyword(s).
* Justification: This feature helps users to find other students more quickly and easily. Without this feature, users would need to know the exact spelling of a student's name in order to find them. With this feature, users can enter any combination of partial keywords, such as the first few letters of the student's name, their middle name, or their last name. This can be especially helpful for users who are not sure of the exact spelling of a student's name, or for users who are trying to find a student who has a common name.
Expand All @@ -31,14 +40,33 @@ Given below are my contributions to the project.
* Justification: This feature helps users to check if a group fulfils the diversity group formation requirements of the course with a single command. Without this feature, users would need to manually find the details of each member in the group to check if the group meets the diversity requirements. With this feature, users can enter a group number to easily check the composition of the group members. This helps to ensure that users have the opportunity to work with and learn from others from different backgrounds.
* Highlights: Different warning messages were written to inform users of what the group may fall short of in terms of group formation so that the user can ensure that the members are from diverse backgrounds. Extensive test cases and test data were written to rigorously test the different possible composition of the group members.

* **Code Contributed**: [RepoSense link](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=pearlynnt&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos)
## Contributions to the UG
* Added the 'Edit Command' section.
* Added the 'Find Command' section.
* Added the 'Filter Command' section.
* Added the 'Find Group Command' section.
* Added the 'Filter Group Command' section.
* Added the 'Check Command' section.
* Ensured consistent formatting of the content in the User Guide.

## Contributions to the DG
* Added the 'Edit a Student' use case.
* Added the 'Find a student' use case.
* Added the 'Filter students' use case.
* Added the 'Find a group' use case.
* Added the 'Filter groups' use case.
* Added the 'Check a group' use case.
* Updated the Storage Class Diagram using PlantUML.

## Contributions to team-based tasks
* **Project management**:
* Set up the team's Github Repository, and project documentation.
* Reviewed the team's Github pull requests.
* Managed the milestones on Github.
* Led the team's project meetings

## Review/mentoring contributions
* Reviewed the team's Github pull requests and gave comments where appropriate. (e.g., [#106](https://github.com/AY2324S1-CS2103T-F12-2/tp/pull/106), [#177](https://github.com/AY2324S1-CS2103T-F12-2/tp/pull/177), [#190](https://github.com/AY2324S1-CS2103T-F12-2/tp/pull/190))

* **Documentation**:
* User Guide:
* Added the 'Find Command', 'Filter Command', 'Find Group Command', 'Filter Group Command', and 'Check Command' sections
* Developer Guide:
## Contributions beyond the project team
* Tested another team's product and reported bugs during PE-D. ([list of issues](https://github.com/PearlynnT/ped/issues))
* Participated in load testing.
1 change: 1 addition & 0 deletions docs/team/wnchan.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ Given below are my contributions to the project.
* Under Use-cases, the `mark` feature.
* Under Use-cases, the `unmark` feature.
* Updated the sequence diagram under `Logic Component` section.
* Updated `Appendix: Instructions for manual testing` to include all the commands for StudentConnect.

## Contributions to team-based tasks
* Did equal share of tasks assigned.
Expand Down
14 changes: 13 additions & 1 deletion src/main/java/seedu/address/model/Model.java
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,20 @@ public interface Model {
*/
void updateFilteredGroupList(Predicate<Group> predicate);

/**
* Retrieves a {@code Person} with the specified email.
*
* @param email The email associated with the person.
* @return An {@code Optional} containing the {@code Person} if found, or empty otherwise.
*/
Optional<Person> getPersonWithEmail(Email email);

/**
* Retrieves a {@code Group} with the specified group number.
*
* @param number The number associated with the group.
* @return An {@code Optional} containing the {@code Group} if found, or empty otherwise.
*/
Optional<Group> getGroupWithNumber(int number);

/**
Expand Down Expand Up @@ -144,7 +156,7 @@ public interface Model {
* Adds the given {@code TaskList} to the give {@code Group}.
*
* @param taskList The taskList to be added.
* @param group The group that the person will be added to.
* @param group The group that the task will be added to.
*/
void addTasksToGroup(TaskList taskList, Group group);

Expand Down
Loading

0 comments on commit 014becf

Please sign in to comment.