-
Notifications
You must be signed in to change notification settings - Fork 0
Milestone 2 plan
-
We need to complete backend end points until Thursday midnight. After that we will organize a meeting to be ensure that all the endpoints is clear and understandable by mobile and web teams.
-
In mobile part, nearly all the screens have been implemented on milestone 1. That's why, we only need to complete the connections between backend endpoints and mobile screens' related part.
-
In web part, web team will create some pages such as acount page, user page etc. Also, they revise ui components such as post, comment, feed etc. Web team also need to complete the connections between backend endpoints and web pages' related part.
- Gülşen Sabak
- Mesut Melih Akpınar
- Hüseyin Karataş
- Authentication and Account Management: Fundamental to system access.
- Post and Comment Interactions: Core feature of user engagement.
- Portfolio Privacy Settings: High sensitivity due to personal financial data.
- Financial Asset Integration: Essential for real-time relevance.
- Search and Navigation: Key for usability.
- Kutay hoca said that all of us should write at least one unit test. That's why we separate the unit tests. Unit testing is essential for software development because it ensures the quality, reliability, and maintainability of our codebase. We need to write unit tests for all sensitive areas in our code.
Unit testing ensures that individual components function correctly. The following areas are high-priority for unit testing:
- Test account creation:
- Validate unique email, username, and password inputs (
1.1.1.1
).
- Validate unique email, username, and password inputs (
- Test login functionality:
- Ensure correct credentials grant access (
1.1.1.1.1.1
). - Ensure users can log back in if logged out (
1.1.1.3
).
- Ensure correct credentials grant access (
- Validate email and username uniqueness checks.
- Test post-creation logic:
- Ensure proper storage of photos, descriptions, and tags (
1.1.2.1
).
- Ensure proper storage of photos, descriptions, and tags (
- Test comment functionality:
- Validate association of comments with posts (
1.1.2.6
).
- Validate association of comments with posts (
- Test post interactions:
- Likes, dislikes, and counts (
1.1.2.2
,1.1.2.4
).
- Likes, dislikes, and counts (
- Test basic search functionality:
- Search by forum name or tags (
1.1.3.1
,1.1.3.2
).
- Search by forum name or tags (
- Handle edge cases:
- Ensure proper behavior for no results or multiple matches.
- Test admin-specific features:
- Subforum creation and deletion (
1.1.5.1
,1.1.5.2
). - Adding base tags to subforums (
1.1.5.4
).
- Subforum creation and deletion (
- Test privacy settings:
- Validate public, friends-only, and private portfolio visibility (
1.1.7.2
).
- Validate public, friends-only, and private portfolio visibility (
- Test personalized news feeds:
- Ensure filtering based on user-selected financial assets (
1.1.6.1
,1.1.6.3
).
- Ensure filtering based on user-selected financial assets (
- Test API integration:
- Validate retrieval of financial asset values (
1.2.1.1
,1.2.1.2
).
- Validate retrieval of financial asset values (
- Ensure periodic updates of financial data (
1.2.1.3
).
- Integration testing is crucial because it verifies that different modules or components of an application work together as expected. While unit tests focus on individual components in isolation, integration tests ensure the harmony and functionality of interconnected parts. We also separate the integration tests since we want all of us to learn how to write integration tests.
Integration testing ensures that modules work together correctly. The following areas are critical for integration testing:
- Validate interactions between:
- Database, authentication system, and frontend (e.g., login, account creation).
- Test error handling for invalid login attempts.
- Test portfolio creation and privacy settings:
- Validate visibility for public, friends-only, and private portfolios (
1.1.7.1
,1.1.7.2
).
- Validate visibility for public, friends-only, and private portfolios (
- Ensure correct access restrictions.
- Test relationships between posts, comments, and interactions:
- Validate likes, dislikes, and counts (
1.1.2.6.1
). - Test comment-threading and deletion.
- Validate likes, dislikes, and counts (
- Test API interactions:
- Ensure proper retrieval of financial data from third-party services (
1.2.1.2
). - Validate synchronization with forum topics.
- Ensure proper retrieval of financial data from third-party services (
- Test admin-specific subforum features:
- Subforum creation/deletion and tag assignment (
1.1.5.1
,1.1.5.4
).
- Subforum creation/deletion and tag assignment (
- Ensure proper permission checks.
We have a main user
- What kind of user do we have? (will be determined)
- What are credentials of our main user? (will be determined)
The user opens the site, enters the relevant credentials in the login-register section, and logs into the application.
The user browses the feed for a while.
The user sees a post of interest in the feed, likes it, and comments on it. Then, our main user become curious about the account that posted it and visit User A's profile.
- Whose profile do they visit? (A = Makoto Ashinosa)
- What will the comment say? (will be determined)
The user examines other posts on User A's profile.
The user notices that User A has posted the most in Subforum B and decides to visit it.
- Which subforum will this be? (B = Cryptocurrencies)
The user reviews posts in Subforum B and checks which people are posting there.
In the subforum, the user notices a cryptocurrency that has been mentioned frequently recently.
- Which cryptocurrency will this be? (C = Etherium)
The user goes to their portfolio and realizes they don’t have C in their account.
The user adds a certain amount of C to its portfolio.
The user goes to the post creation section and creates a post about C under Subforum B. The user also adds a tag for C while writing the post
After posting, the user clicks on the tag related to C and browses posts tagged with C
- 08.12.2024 -- Seventh Meeting
- 13.10.2024 -- Sixth Meeting
- 08.10.2024 -- Fifth Meeting
- 06.10.2024 -- Fourth Meeting
- 04.10.2024 -- Third Meeting
- 01.10.2024 -- Second Meeting
- 24.09.2024 -- First Meeting
- 08.12.2024 -- Fourth Meeting
- 19.10.2024 -- Third Meeting
- 13.10.2024 -- Second Meeting
- 10.10.2024 -- First Meeting
💻 Lab Reports
📝 Milestone Reports
👨🏽🤝👨🏾 User Group Scenarios
👨🏻💼👩🏻💼 User Scenarios
👤 Personal Pages
📝 Templates
Animal Trove Project
### 💻 Project- 1st Milestone Report
- 2nd Milestone Report
- 3rd Milestone Report
- Organization
- Requirements
- Elicitation Questions
- Scenerios
- Mockups
- Use Case Diagram
- Class Diagram
- Sequence Diagram
- RAM
- Project Plan
- User Tests
- Integration Tests
- Git Research
- Wikidata, Linked Data, SPARQL
- Web & Mobile Application Development
- API Development & Wikidata API
- Semantic Search
- Our Favorite Repositories