Details of this Paper





Programming II: Assignment;This is a summative assessment (it does count towards your final mark);You must submit your assignment both via study space and your GIT account;Your assignment brief is to make a Desktop Application that helps users to manage their music collections more effectively. It should be written in Java, C++ or Objective C. The main body of teaching support will be for Java.;The exact set of functions performed by your Application is left up to you. Here are some examples functions that you may wish to consider;- Listing all the music tracks contained in the user?s computer hard-drives and removable storage media;- Make a playlist of the user?s music, randomly selected from a particular genre to transfer onto a mobile device;- Compile a list of duplicate items, and albums with missing tracks, and perform file system operations to re-organise the items;- Allow the user to specify which music is most important to them, to allow selective backups;- Using web-services to locate additional information about the music stored on the user?shard drive and removable storage;- Make lists of music that you a user may want to acquire;- Compare two users? music collections to show the similarities and differences;- Acoustic fingerprinting using Echoprint to identify tracks by an audio sample.;- Retrieving cover art for albums using Discogs or Cover Art Archive API's.;- Using web services to locate information and store in ID3 tags.;- Getting a list of events an artist has played at using and plotting locations on a map.;Test Data;- Your programme may work with audio files (e.g. mp3), or playlist files (m3u) or other data to do something useful.;- Please DON?T commit any audio data to GIT ? this will make your repository too big and slow;- A test data repository is available you can DOWNLOAD THE for use when not at the University. It represents two music collections, A and B, with some overlap.;Technology that you may consider using includes (but is not limited to);- The Files and Paths packages to inspect and manipulate the file system;- Storage of data in either text, JSON or xml formats.;- A command line user interface that allows the user to get things done by issuing parameterised commands;- A graphical user interface that allows the user to access the functionality you provide with a mouse (and keyboard).;- Components that consume music meta-data web services, such as Music Brainz, Discogs,Decibel, 7Digital, and the Echo Nest.;- Java Media Framework components for analysis of media files.;Marks will be assigned as follows;User Stories: 15 marks;- Presentation of top level stories and also of smaller, specific stories, and a plan that;Describes what system functionality was attempted (and what was successful). Notes that;Describe the success of each development iteration, i.e. which stories were attempted, and;Which attempts were successful?;Evidence of Iterative Development: 35 marks;- A GIT log that shows iterative development in practice, i.e. evidence of at least three;Iterations regularly submitted throughout the development lifecycle that tackle selected;User stories, some continuity and evolution of code.;Test suites: 15 marks;- Unit Tests and / or functional tests for your application (and its components). Marks will be;Awarded to reflect the extent and effectiveness of the tests you provide. All test artifacts should be included, e.g. test files;Final Functionality achieved: 35 marks;- The User Stories you have completed, will be tried out, using your software, on a similar archive of music meta-data. Marks will be awarded on the quality, effectiveness and scope of your software. k1234;56mai


Paper#70732 | Written in 18-Jul-2015

Price : $107