Skip to content

Commit

Permalink
Merge pull request #372 from ethanwangkangen/developerGuide3
Browse files Browse the repository at this point in the history
Change image size of UML diagrams in DG
  • Loading branch information
annabellekk authored Nov 12, 2024
2 parents a2190a8 + 74505cd commit 9287559
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions docs/DeveloperGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,15 +64,15 @@ Each of the four main components (also shown in the diagram above),

For example, the `Logic` component defines its API in the `Logic.java` interface and implements its functionality using the `LogicManager.java` class which follows the `Logic` interface. Other components interact with a given component through its interface rather than the concrete class (reason: to prevent outside component's being coupled to the implementation of a component), as illustrated in the (partial) class diagram below.

<img src="images/ComponentManagers.png" width="300" />
<img src="images/ComponentManagers.png" width="400" />

The sections below give more details of each component.

### UI component

The **API** of this component is specified in [`Ui.java`](https://github.com/AY2425S1-CS2103T-W11-3/tp/blob/master/src/main/java/seedu/academyassist/ui/Ui.java).

![Structure of the UI Component](images/UiClassDiagram.png)
<img src="images/UiClassDiagram.png" width="750"/>

The UI consists of a `MainWindow` that is made up of parts e.g.`CommandBox`, `ResultDisplay`, `PersonListPanel`, `StatusBarFooter` etc. All these, including the `MainWindow`, inherit from the abstract `UiPart` class which captures the commonalities between classes that represent parts of the visible GUI.

Expand All @@ -94,7 +94,7 @@ Certain components will require the instance of the `Model` itself. For example,

Here's a (partial) class diagram of the `Logic` component:

<img src="images/LogicClassDiagram.png" width="550"/>
<img src="images/LogicClassDiagram.png" width="750"/>

The sequence diagram below illustrates the interactions within the `Logic` component, taking `execute("delete S00001")` API call as an example.

Expand All @@ -113,7 +113,7 @@ How the `Logic` component works:

Here are the other classes in `Logic` (omitted from the class diagram above) that are used for parsing a user command:

<img src="images/ParserClasses.png" width="600"/>
<img src="images/ParserClasses.png" width="750"/>

How the parsing works:
* When called upon to parse a user command, the `AcademyAssistParser` class creates an `XYZCommandParser` (`XYZ` is a placeholder for the specific command name e.g., `AddCommandParser`) which uses the other classes shown above to parse the user command and create a `XYZCommand` object (e.g., `AddCommand`) which the `AcademyAssistParser` returns back as a `Command` object.
Expand All @@ -130,7 +130,7 @@ Output after parsing:
### Model component
**API** : [`Model.java`](https://github.com/AY2425S1-CS2103T-W11-3/tp/blob/master/src/main/java/seedu/academyassist/model/Model.java)

<img src="images/ModelClassDiagram.png" width="450" />
<img src="images/ModelClassDiagram.png" width="750" />


The `Model` component,
Expand Down

0 comments on commit 9287559

Please sign in to comment.