This repository contains a Java-based task automation application that allows users to configure customizable behaviors through a trigger-action rule mechanism. The application is designed according to the Model-View-Controller (MVC) architectural pattern and emphasizes software engineering best practices across the entire development lifecycle.
The project focuses on:
- Applying structured requirements analysis and architectural design
- Implementing design patterns to achieve modularity and extensibility
- Developing software following the Agile Scrum methodology
- Managing source code versioning with GitHub
- Ensuring software reliability through automated testing with JUnit
-
Trigger-Action Automation Users can define automation rules that execute specific actions when predefined triggers occur.
-
Graphical User Interface (GUI) All configuration and management of rules are performed through a user-friendly graphical interface.
-
MVC Architecture The system is organized into:
- Model: business logic and data handling
- View: graphical interface
- Controller: interaction logic between user input and application behavior
-
Automated Testing Core components are tested using unit tests implemented with JUnit.
The application was developed using Agile Scrum principles, promoting iterative development, incremental improvements and continuous validation. GitHub was used to manage version control and support collaborative development.
- Java
- JUnit
- Git & GitHub
The software follows the Model-View-Controller (MVC) pattern to ensure separation of concerns, maintainability and scalability. Design patterns were adopted where appropriate to improve code quality and facilitate future extensions.