diff options
author | Gunther6070 <haydenhartman10@yahoo.com> | 2025-04-14 21:29:00 -0400 |
---|---|---|
committer | Gunther6070 <haydenhartman10@yahoo.com> | 2025-04-14 21:29:00 -0400 |
commit | eee866dfd320716ed48bcd39215ebdd2be03cc95 (patch) | |
tree | 92954eae9be27f282d1f94283c7dd33a022efca0 | |
parent | 49250e60cf168ae9c5aab0e589a68b4c6c2bf800 (diff) | |
download | JellySolutions-eee866dfd320716ed48bcd39215ebdd2be03cc95.tar.gz JellySolutions-eee866dfd320716ed48bcd39215ebdd2be03cc95.tar.bz2 JellySolutions-eee866dfd320716ed48bcd39215ebdd2be03cc95.zip |
Updated UI and view tier sections
-rw-r--r-- | docs/DesignDoc.md | 20 | ||||
-rw-r--r-- | docs/addNeedsToFundingBasket.png | bin | 0 -> 151640 bytes | |||
-rw-r--r-- | docs/checkoutNeeds.png | bin | 0 -> 73509 bytes |
3 files changed, 18 insertions, 2 deletions
diff --git a/docs/DesignDoc.md b/docs/DesignDoc.md index 41f519a..2c2ad2e 100644 --- a/docs/DesignDoc.md +++ b/docs/DesignDoc.md @@ -126,8 +126,6 @@ Sort filters This section describes the application domain. - - > _**[Sprint 2 & 4]** Provide a high-level overview of the domain for this application. You > can discuss the more important domain entities and their relationship > to each other._ @@ -139,6 +137,7 @@ Each user views 1 cupboard which can contain 0 or more needs. They can take 1 or This section describes the application architecture. The application is seperated into three tiers. These include the view, viewmodel, and model tiers. The view tier has many angular components, including the cupboard, dashboard, funding basket, homepage, login, mini-cupboard, need-edit, need-list, and toast. These are all used through angular to serve a UI application through the browser. This browser connects through the Viewmodel tier using a REST API. The API is instantiated through springboot. The API uses controllers and services to perform opertaions on the data and return values back to the view tier. The model tier contains the structure of objects, such as needs or users and the persistence of the system. The persistence uses DAO's, or data access objects. These are abstracted classes that can be further defined to interact with databases, files, or other objects. Currently, all the persistence is handled through JSON files through file DAOs. + ### Summary The following Tiers/Layers model shows a high-level view of the webapp's architecture. @@ -163,6 +162,8 @@ This section describes the web interface flow; this is how the user views and in > _Provide a summary of the application's user interface. Describe, from the user's perspective, the flow of the pages/navigation in the web application. > (Add low-fidelity mockups prior to initiating your **[Sprint 2]** work so you have a good idea of the user interactions.) Eventually replace with representative screen shots of your high-fidelity results as these become available and finally include future recommendations improvement recommendations for your **[Sprint 4]** )_ +When a user first visits the website they will arrive at our home page. This gives some info about us and leads them to the cupboard where they can views needs. When viewing a need a user will be prompted to login, or they can click on login at the top right at any time. Once at the login page they can either login or click signup to go to the signup page and create an account. Either page will log the user into the website and bring them to the page they were previously on. Once logged in as a helper a user can view and add needs to their funding basket, letting them checkout and contribute to funding. Otherwise, a user can login as a manager, where they have access to the cupboard and dashboard. In the dashboard they can view information about the website. On the cupboard a manager has the option to control needs, such as adding news ones or editing/deleting existing news. + Home Page:  @@ -192,6 +193,8 @@ Need page: Funding basket:  +Our improvements would be to make the website mobile accessible, allowing anyone to access it easily from their phone. + ### View Tier > _**[Sprint 4]** Provide a summary of the View Tier UI of your architecture. @@ -199,12 +202,20 @@ Funding basket: > responsibilities. This should be a narrative description, i.e. it has > a flow or "story line" that the reader can follow._ +As following our UI description, our view tier has a similar flow. There is a component for the home page when first visiting the page, having basic html to showcase the website. From there, users can go to the login and signup pages which are individual components. They contain the logic to log users in and create an account. Additionaly, signup contains logic to check password strength and make sure a user creates an account with a strong password. Next, a user can visit the cupboard component. The cupboard component uses the need list component which shows a lists a needs. Similar, the funding basket uses the need list component to display needs. When a need is clicked on a user can view the need page component, which displays more info about a need. As a manager, a user can view the dashboard. The dashboard contains info about money raised and users, as well as uses the mini-need-list which can be populated with a list of needs, in this case it's used to display top needs. Additionally, the toast and modal components are used across pages, to display error/info messages and allow managers to edit/create needs. + > _**[Sprint 4]** You must provide at least **2 sequence diagrams** as is relevant to a particular aspects > of the design that you are describing. (**For example**, in a shopping experience application you might create a > sequence diagram of a customer searching for an item and adding to their cart.) > As these can span multiple tiers, be sure to include an relevant HTTP requests from the client-side to the server-side > to help illustrate the end-to-end flow._ +Sequence for checking out a need: + + +Sequence for adding needs to the funding basket: + + > _**[Sprint 4]** To adequately show your system, you will need to present the **class diagrams** where relevant in your design. Some additional tips:_ > > - _Class diagrams only apply to the **ViewModel** and **Model** Tier_ @@ -246,6 +257,11 @@ Models - User: A user represents a single account on our website, containing info like a username and a hashed password as well as other fields for specifics - UserAuth: A user auth is created whenever a user logs into the website, associating a username to a key. UserAuths are used to verify if a user has access to a CRUD operation +Persistence: + - CupboardDAO: Stores needs, allowing CRUD and other basic operations on needs + - UserDAO: Stores users, allowing CRUD and other basic operations on users + - UserAuthDAO: Stores UserAuths, allowing CRUD operations and basic operations on userAuths + > _**[Sprint 2, 3 & 4]** Provide a summary of this tier of your architecture. This > section will follow the same instructions that are given for the View > Tier above._ diff --git a/docs/addNeedsToFundingBasket.png b/docs/addNeedsToFundingBasket.png Binary files differnew file mode 100644 index 0000000..b8b00ab --- /dev/null +++ b/docs/addNeedsToFundingBasket.png diff --git a/docs/checkoutNeeds.png b/docs/checkoutNeeds.png Binary files differnew file mode 100644 index 0000000..b20d6c0 --- /dev/null +++ b/docs/checkoutNeeds.png |