Pemantauan Publikasi Ilmiah
Visit Project
Short Explanation
Pemantauan Publikasi Ilmiah (PPI) is a web application designed to assist students and academics at the University of Indonesia's Faculty of Computer Science in managing and maintaining academic journals. This app allows users to efficiently submit, track, review, and collaborate on various types of academic papers, including independent study reports, academic proceedings, and journal publications. With features such as personalized dashboards, email notifications, and a secure Document Submission & Management System, PPI streamlines the academic publishing process at Faculty of Computer Science of the University of Indonesia.
Project Goals
The primary goals of the PPI app are to provide an easy-to-use platform for Masters and Doctoral students at the Faculty of Computer Science, University of Indonesia, to submit, manage, and archive their academic papers. Additionally, the platform should let lecturers in the Faculty of Computer Science effectively monitor the progress of their students' academic work. Lastly, the app should also serve as a Digital Library for the Faculty of Computer Science, University of Indonesia, to archive and maintain all documents and papers.
Tech Stack Used
The PPI project was developed using a variety of tech stacks, including:
- Django: a free, open-source web framework based in Python that helps developers build websites and full stack applications quickly and efficiently. In this project, Django is used mainly for Backend and Frontend of the App.
- Figma: A design tool used for creating the user interface (UI) and user experience (UX) of the app.
- Bootstrap Framework: A frontend design framework used in delivering intuitive user interface of the web application.
- SonarQube: A continuous inspection tool that analyzes code quality and detects bugs, vulnerabilities, and code smells. It helps maintain high standards and prevent code smells in the codebase throughout the development process.
- PostgreSQL: A powerful, open-source relational database system used for storing and managing the app's data efficiently.
- Gitlab CSUI:
Features
User Roles & Authentication
There are three main types of users in the PPI app: Admins, Lecturers, and Students. We've defined these roles based on their responsibilities within the app:
- Admins: Admins include the educational bureau staff and secretariat personnel at the University of Indonesia. They have full control over the PPI app, allowing them to manage and maintain all resources and content.
- Lecturers: Lecturers serve as mentors and advisors for students. They oversee the writing process of independent study reports and scientific publications, providing guidance and reviewing students' papers to ensure quality and compliance. Lecturers are linked to students, as they are responsible for supervising only their selected students and overseeing their papers. This ensures that each student receives personalized guidance and support. This also allows for more controlled access of resources in PPI App.
- Students: Students are the primary authors within the PPI app. They create and submit scientific papers, independent study reports, and academic journals. Students can upload their work and request feedback and guidance from their assigned lecturers.
For authentication, the PPI app is integrated with the University of Indonesia's Single Sign-On (SSO) system. This integration facilitates seamless access and connection with other educational resources available at the University and within the Faculty of Computer Science and to also make differenciating Lecturers, Admins, and Students role of each user.

Personalized Dashboard

The use of multiple user roles allows us to create personalized dashboards for all users of the PPI app. Additionally, the dashboard features robust search and filter options, enabling users to easily find and manage independent study reports and scientific publications. Students can quickly access their own submissions, track their progress, and request feedback from lecturers. Lecturers, on the other hand, can efficiently monitor their assigned students' work, review submissions, and provide guidance. Admins benefit from streamlined access to all documents and resources, making it simple to oversee the entire system.
Search and Filter Documents

In the dashboard, we included a Search and Filter feature for the document table. This allow users to find and organize their accessible reports or papers. For instance, Lecturers can easily search and filter through the submissions and publications of their assigned students. This allows them to quickly find specific independent study reports or academic journals, monitor progress, and provide timely feedback.
Email Notification

The PPI app includes an email notification feature to help lecturers stay updated on the progress of their students' academic papers. Whenever a student updated his/her paper or report, our system will email the lecturers regarding the changes student made. This notification is uniquely tied to each lecturer-student pair, ensuring that lecturers receive relevant and specific updates about their assigned students' work.
Document Submission & Management System

The PPI app streamlines the entire lifecycle of academic papers for students and lecturers. This feature encompasses the creation, submission, supervision, and ongoing management of various types of documents, including independent study reports, academic proceedings, and journal publishing papers. It enhances the academic workflow by providing a centralized platform for managing academic papers between students and lecturers and other stakeholders at the University of Indonesia.
Lesson Learned
During the development of Pemantauan Publikasi Ilmiah, several key lessons were learned:
- Agile Development: In the development of PPI, our team adopted Agile Development approach to manage the project effectively. By dividing the development process into three distinct sprints, the team was able to iterate quickly, incorporate feedback regularly, and adapt to changing requirements seamlessly.
- Preventing Code Smells: Learning to identify and eliminate code smells significantly improved the overall quality of the codebase. Maintaining clean and efficient code not only made the application more maintainable and scalable but also reduced the likelihood of bugs and performance issues in the long run.
Attribution
- Adira Sayidina: Scrum Master
- Akbar Maliki: IT Infrastructure Lead
- Bornyto Hamonangan: Backend Development Lead
- Jeremy Reeve Kurniawan: Product Owner
- Stephanus Dario Kohar: Designer Lear
- Kevin: Frontend Development Lead