Skip to content

Milestone Report 1

batuhansolmaz edited this page Mar 19, 2024 · 27 revisions

1.a

Summary:

The main focus of our project is to enable semantic search for books. It also has other features for users, such as following other users, posting short content for specific book pages, liking/disliking posts, and bookmarking book pages. These social features will facilitate community discussions about books and also enable users to meet each other. Each book page will contain information about the book that was searched, such as its title, cover, number of pages, and author. The users will need to register to the platform and will be able to log in using their email/username and password.

The overall status:

We have created a few scenarios and mockups. We have written functional and non-functional requirements and a communication plan for the project. Along with these, we have researched Application Programming Interface, DevOps, Web Application Development, and Mobile Application Development and documented the results for the members of our team to read. In short, we completed almost all tasks for the milestone.

1.b

Task Status Link
Milestone report Done link
Project repository In progress link
Issues Closed 63 issues link
Wiki In progress link
Communication plan Done link
Project plan Done link
Functional Requirements Done link
Non-functional Requirements Done link
Scenarios Done link
Research In progress link
Meeting notes Done for all 6 meetings link

1.c

Meetings:

To decide on the meeting time, we used when2meet, the link can be found here.

We extensively used Google Meet for our meetings, created a calendar invite for our weekly recurring meeting to easily manage our time and use automatically generated meeting links.

Issue Management:

Our first issues were closed by the creator. But later we concluded that assigning someone else to review by mentioning them in the issue comments made everything easier. We also made our own issue template that can be found here. With this issue template, it was easier to use a unified structure to find relevant issues later easily.

Domain:

To decide we used starpoll, the issue we created to decide on our domain: https://github.com/bounswe/bounswe2024group3/issues/48 Where anyone can see the poll result here

Project Name:

To decide on the project name we created an issue first: https://github.com/bounswe/bounswe2024group3/issues/49 Then in our weekly meeting we resolved this issue by collectively selecting a name that satisfies everyone.

Mockups:

We decided to go with simple mobile app mockups to demonstrate the functionality, since the same functionality can be used on web apps.

1.d

One of the main problems of our group was organizing the meetings. We met challenges while deciding a time for the meetings for the deliverables, so most of the time it was harder to get together than to take the necessary actions. To solve this problem, we started to plan the meetings in a way that the people who cannot attend will accept the responsibilities assigned by the attendees. Another difficulty we met was the nonfamiliarity with the tools that we needed to use such as Github Roadmaps. Not knowing when, why or how to use such tools was challenging sometimes. We tried to overcome this issue by splitting the issues into learning and implementing parts. Another difficulty was mainly about the concepts that the course covers. Since the content of the class is quite different from the classes we are used to, there were moments when we didn't have a clear idea about what we should do. Additionally we had problems stem from everyone being responsible more or less for everything. We believe it will change with the process since we will be specializing in the future.

2

Our project plan is on Github Projects at this link.

3

Ekrem BAL
Tried creating a Project on Github, created it, and added several tables.
Researched Mobile Application Development with Onur. The resulting research can be found here.
Wrote functional requirements with Burkay and Onur, resulting requirements can be found here.
Created a poll for domain selection; we selected Books. The poll results can be found here.
Wrote our decisions and their results in our Milestone report. (#TODO: Add link)
Researched on repositories I've starred, decided on Torando Cash repository, and wrote about it. It can be found here.
Created a personal page for myself. It can be found here.
Studied git and using it from the UI in Visual Studio Code.
Wrote about my work done. (#TODO: Add link)
Created a responsibility matrix with Abdarslan, Burkaykinik, and Eyusufatik. (#TODO: Add link)
Esad Yusuf Atik
Set up initial Readme
Researched Ordinals repository.
Set up GitHub projects and set fields for project management.
Studied DevOps and wrote findings with Abdurrahman Arslan. Link
Wrote non-functional requirements with Yusuf Suat Polat and Enes Sait Besler.
Created a user scenario on searching and filtering. Link
Did maintenance on old issues. (Adding them to GitHub projects and setting fields)
Contributed to the creation of responsibility assignment matrix
Ahmet Burkay Kınık
I created a scenario showcasing how a users will bookmark a page and see their bookmarks. The scenario can be scene in this page
I wrote User Requirements part along with Ekrem and Onur. The results can be found in the User Requirements part of this document
I reviewed Onur’s documentation of his API research. This document can be found here.
I researched (CCXT)[https://github.com/ccxt/ccxt] repository and wrote my findings to (here)[https://github.com/bounswe/bounswe2024group3/wiki/Research#here-we-list-some-repositories-that-we-like].
I created the responsibility matrix along with (Esad)[https://github.com/eyusufatik] and (Ekrem)[https://github.com/ekremba]
Enes Sait Besler
I wrote a scenario about two users exchanging information in comments section. Here's the Link.
Studied Back End Development and wrote findings with Abdurrahman Enes Gules. The page can be found Here.
Argued and Wrote non-functional requirements with Yusuf Suat Polat and Esad Yusuf Atik. Link.
I was with group while creating responsibility assignment matrix and reviewed it with Batuhan Solmaz. You can see the page.
Wrote evolution of tools part of the milestone report documentation with Batuhan Solmaz.
Created Personal Wiki Page. You can see my work.
I did research about pyopengl and wrote about the parts that were informative and interesting to me. Here's my work.
Argued and picked a domain and a name for project with my teammates.
Argued scenarious with group and reviewed scenario of Esad Yusuf Atik.
Studied git as version management system. Link.
Attended all meetings and contributed to discussions, taking notes of Meeting 6. You can see the report.
Batuhan Solmaz
Created a user scenario for following section. Page
Studied web development and git as a version management system.
researched and wrote system requirements. The results can be found in the System Requirements part of this document
I was with group while creating responsibility assignment matrix and reviewed it with Enes Sait Besler.
Wrote evolution of tools part of the milestone report documentation with Enes Sait Besler.
Created Personal Page and wrote weakly efforts [Batuhan Solmaz] (https://github.com/bounswe/bounswe2024group3/wiki/Batuhan-Solmaz)
Researched Leo repository for favorite repositories. link
Attended all meetings and contributed to discussions.
Onur Dilsiz
[Research]: Learn Mobile Application Development I have researched about themobile application development and documented what I learned on the link.
[Wiki]: Functional Requirements: User Requirements (3 people) I have researched functional requirements, especially the user requirements. Then, we met on google meet with Ekrem and Burkay. We discussed how should we categorize user requirements then, We wrote on a shared file.
[Deliverable][Urgent]: Picking a domain I expressed my opinion about the options and we voted the options after discussion.
[Wiki]: Update Readme.md file I have prepared our landing page in our repository. Wrote a summary about our project.
[Wiki]: Prepare Elicitation Questions I have prepared our questions about requirements by inspecting the user requirements.
[Wiki]: Create a Wiki Personal Page I have prepared a personal page in order to introduce myself to others.
Create a personal page for weekly effort and document tasks I have added a personal page to write weekly effort and added a table of tasks and their durations
Study git as version management system I have watched the video that is advised in assignment file. I have also practiced with a very useful visualization tool on the link that was also advised in discord.
Update Research with a repository that you like I have added brief scikit-learn summary to the page for favorites repositories on the wiki.
[Report]: List the status of the deliverables I have prepared a table that show every deliverable we done and their links. Then , I added it into our report.
Abdullah Enes Güleş
I attended project meetings and contributed to discussions.
I studied Git for version control and documented my learning process.
I explored and documented the use of the Pandas library as my favorite repository. The result can be found in this document.
I developed and refined the home page for our project's wiki, enhancing its accessibility and user-friendliness. The resulting page can be found here.
I created a template for meeting notes to streamline documentation and ensure consistency. The resulting page can be found here.
I conducted research on web application development to identify best practices and tools and documented the findings to share knowledge with the team with my friend Enes. The resulting page can be found here.
I reviewed project requirements and made minor corrections to ensure clarity and accuracy with my friend Arslan. The resulting page can be found in this document.
I created a scenario that showcases certain capabilities of our project. The resulting page can be found here.
I added missing pages to the sidebar and home page of the wiki to improve navigation and user experience.
I separated functional requirements into user and system categories for better organization and understanding. The resulting page can be found in this document.
I created mockups for the user interface to visualize and refine the design of our web application. The resulting mockups can be found in this document.

4: Communication and Collaboration Tools Evaluation

WhatsApp

We initially chose WhatsApp for its convenience in facilitating quick, informal communication among team members. It proved useful for sending reminders and sharing urgent updates. However, we noticed that it wasn't ideal for project communications due to the mixture of general and project-oriented conversations. A more centralized platform integrated with our development environment might be more effective for project communications.

GitHub (Web Development and Project Management)

GitHub serves as our centralized repository for code, enhancing collaboration and version control. The use of GitHub Projects and Issues has allowed for organized task tracking and assignment to specific team members. We heavily utilized the issue and assignee system, along with the project management features, to implement and track to-dos and dones.

Discord

Discord has been invaluable for direct communication with the course assistant, enabling us to clarify misunderstandings and learn information that was initially unclear.

Google Meet

Google Meet is our go-to platform for regular communication and collaboration among team members. It's effective for conducting meetings, discussing project updates, and decision-making, allowing us to plan our time in advance effectively.

Meeting Notes

Documenting decisions and discussions in meeting notes has been crucial, providing a reference for future actions and ensuring accountability and follow-up on action items. We upload these documents to GitHub for easy future reference.

Review Process

The review process, involving multiple team members, ensures quality control and incorporates diverse perspectives into project development. This promotes knowledge sharing and skill development, with a built-in system to catch any missed issues.

Moving Forward

As we progress, we are considering the following adjustments:

  • Enhance training on GitHub's advanced features: Leveraging more advanced features of GitHub could improve our project management and collaboration. Additionally, exploring tools like MS Project for better planning could be beneficial.
  • Refine the review process: Making the review process more structured and feedback-oriented, utilizing GitHub's built-in review features, could enhance the quality and efficiency of our work.
Clone this wiki locally