Analysis, design and development of a small software system.
Produce an executable software solution to the specification and a short report documenting the development.
Design, implement and test an OO class hierarchy to manipulate the filenames, timeStamps and EXIF data of JPG files. Your software should process an „edits? file which will describe a series of filenames and changes that should be applied to those files. The simplest change/action is a Touch, which will change the „last modified? timestamp to the current system time; further BasicEdit changes might be Rename, Copy, Move or touch to a particular date/time. Advanced edits will involve writing EXIF data to the JPG file; at this stage, only GPS location data (latitude, longitude & sometimes elevation) will be specified, but better designs will be easily extended.
The „edits? file will be a text file, either csv with a fixed format or XML which will be more flexible and extensible.
Your solution should read & parse the „edits? file and create corresponding objects; these must be managed with a collection of base-class pointers to dynamically allocated objects. The edits should be applied to the appropriate JPG files; this process should be logged.