Daniel Adipranoto's Project Portfolio Page
Project: ScheDar
ScheDar is a desktop task manage system that helps user manage their daily tasks. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Feature: Designed and added the different types of tasks, as well as basic commands to manipulate tasks.
- What it does: Lays the groundwork for the entire task manager.
- Highlights: Tasks are the basic building block for our task manager application. I created the 3 basic types of tasks:
ToDo
s,Deadline
s andEvent
s, which included deciding the data types for the different variables, how they are implemented, and how they are parsed by the command parser.
- Enhancements to existing feature: Refactored AB3 to Schedar
- Modified the AB3 application to the initial version of Schedar, which supports
Task
s instead ofPerson
s. - Refactored close to 4kLOC over the course more than a week.
- As there were 3 different classes of tasks inheriting from an abstract class
Task
, they had to be handled differently from how AB3 handled thePerson
class. This included ensuring that the different task types could still have their own attributes and behaviours, while still implementing common functions such as marking a task as completed. - Refactored test cases to support the new task manager, and the different types of tasks.
- Modified the AB3 application to the initial version of Schedar, which supports
- Enhancements to existing feature: Updated UI to support tasks
- Modified the AB3 UI to be able to display the 3 different types of tasks.
- (This has since been superseded with a new UI design, though some elements of this initial change were incorporated.)
- Documentation:
- User Guide:
- Added instruction for the features
todo
,deadline
,event
,editTodo
,editDeadline
,editEvent
,list
andexit
.
- Added instruction for the features
- Developer Guide:
- Added implementation details for Adding Tasks.
- Updated UML diagram for
Model
,Logic
andStroage
components.
- User Guide:
- Team Tasks
- Kept track of deadlines, and managed issues and milestones.
- Managed how the individual and team tasks are divided among team members.
- Managed JAR releases for all the different versions of the application.
- Suggested and led the use of Trello for managing and keeping track of features and user stories.
- Community: