Project- LockedMe.com Developer - Manan Soni
Objective Develop a command-line prototype of the LockedMe.com application, implementing file management operations and using Java programming language. The application will be developed incrementally using the Scrum framework and stored in a GitHub repository for version control.
Deliverables
- Specification Document
- Sprint Plan and Tasks
- GitHub Repository Setup and Code Push
- Implementation of Java Concepts and Data Structures
- Core Features and Operations
Features of the Application
- Display welcome screen with application name and developer details.
- Retrieve file names in ascending order.
- Business-level operations:
- Add a user-specified file.
- Delete a user-specified file.
- Search for a user-specified file.
- Navigation options to return to the main context or close the application.
- Handle invalid inputs gracefully without exiting or throwing exceptions.
Tools and Technologies
- IDE: Eclipse
- Programming Language: Java
- Version Control: Git and GitHub
- Framework: Scrum
Development Plan Sprint 1: Project Setup and Basic Features
- Duration: 1 Week
- Tasks:
- Set up Git and GitHub repository.
- Create initial project structure in IDE.
- Implement a welcome screen.
- Implement file retrieval in ascending order.
- Document progress and update GitHub repository.
Sprint 2: Business-level Operations
- Duration: 1 Week
- Tasks:
- Implement file addition feature.
- Implement file deletion feature.
- Implement file search feature.
- Handle case sensitivity for file operations.
- Update documentation and push changes to GitHub.
Sprint 3: Exception Handling and Finalization
- Duration: 1 Week
- Tasks:
- Implement exception handling for invalid inputs.
- Implement navigation options.
- Conduct code optimization for performance.
- Prepare final documentation with flowcharts and algorithms.
- Review and finalize the project for presentation.
Core Concepts and Algorithms
- Java Concepts: Exceptions, Collections, File I/O
- Data Structures: Arrays or Lists for file storage
- Algorithms: Sorting (e.g., Arrays.sort()), Searching (e.g., Linear Search)
Conclusion
- Enhancements: Future improvements can include a GUI interface, enhanced security features, and integration with cloud storage.
- USPs: Simple command-line interface, efficient file operations, and robust error handling.