MemoryGame Environment iOS 8.0+ Xcode 8.3.2 Swift 3.0+ Key Point MVVM Architecture Unit Test Unit test cases for main model class (CardGameViewModel) Use Mocks in unit test cases Unit test for actual game (with shuffle the cards) Unit test for mock game (without shuffle the cards) Autolayout Core Data for local storage, save game score along with player name Show player rank after each game Future Improvements UITests - can add UI test cases Game setting Can add setting like player name, sound on/off. Different playing options like match colour, alphabets, shapes, fruits, animals. Application look like as below screenshots: