The Mobile Inventory App was initially developed as part of the CS360 course, which focused on mobile architecture and programming. The app is designed to allow users to manage inventory through basic CRUD operations—adding, editing, and deleting items—and provides a straightforward user interface for tracking item quantities and details. The artifact served as an opportunity to apply mobile development principles using Android Studio, Java, and SQLite databases.
This artifact was chosen for my ePortfolio because it demonstrates key software development skills, including object-oriented programming, database management, and user interface design. The project showcases my ability to build a functional mobile application from the ground up, emphasizing both backend logic and front-end usability.
-
The integration of SQLite databases to perform CRUD operations efficiently, showcasing my understanding of database design and interaction.
-
The use of custom adapters in
CustomItemsList
for dynamically rendering data, reflecting my grasp of Android development patterns.
-
New features, such as bulk deletion of inventory items, SMS notifications, and a "Forgot Password" recovery system, further demonstrate my ability to extend functionality and meet evolving user requirements.
-
Expanded Functionality: A "Delete All Items" feature with confirmation dialogs.
-
SMS Notifications: Real-time alerts when an item's quantity reaches zero.
-
Forgot Password Feature: A secure method for users to recover their credentials.
-
Database Enhancements: Bulk operations like deleting all items and users, along with additional methods for reading and managing individual records.
-
User Interface and Experience: Improved popup dialogs for editing and managing inventory, with visual feedback such as color-coded quantity cells and toast messages.
-
Design and Evaluate Computing Solutions: The expanded functionality (e.g., SMS notifications and password recovery) demonstrates my ability to design solutions that meet user needs while balancing simplicity and extensibility.
-
Use Innovative Techniques and Tools: Leveraging Android Studio, Java, and SQLite showcases my ability to use modern development tools effectively.
-
Develop a Security Mindset: Including the "Forgot Password" feature highlights my awareness of user data privacy and secure recovery processes.
-
The importance of modularity in design: Breaking functionality into reusable components, such as the
DeleteItems
and SMSNotification
classes, improved maintainability.
-
Real-world application of Android permissions: Implementing SMS functionality required understanding how to request and handle user permissions dynamically.
-
Balancing usability and functionality: Features like confirmation dialogs and visual feedback (e.g., color-coded cells) significantly enhanced user interaction.
-
Implementing SMS notifications was technically challenging due to Android's stringent security and permissions requirements, which required thorough research on best practices.
-
Ensuring seamless integration of new features with existing logic required careful planning and testing, especially when modifying the database schema and adapter logic.
This artifact demonstrates my growth as a developer, showcasing my ability to design and enhance functional, secure, and user-focused applications. Enhancing the Mobile Inventory App was both challenging and rewarding, equipping me with skills and insights that will benefit my future work as a software engineer.
Click here for GitHub Link