Presentation is loading. Please wait.

Presentation is loading. Please wait.

D104a Mathias Andersen, Heine Gatten Larsen, Mathias Grund Sørensen, Jakob Haahr Taankvist.

Similar presentations


Presentation on theme: "D104a Mathias Andersen, Heine Gatten Larsen, Mathias Grund Sørensen, Jakob Haahr Taankvist."— Presentation transcript:

1 D104a Mathias Andersen, Heine Gatten Larsen, Mathias Grund Sørensen, Jakob Haahr Taankvist

2

3 System Definition The customers should be able to reserve a book, both when it is currently available and when it is not. When the customer loans and returns a book, this should be confirmed by a library staff. The customer should be able to rate previously loaned books. The students and scientific staff are able to loan a limited number of books, (5 and 20, respectively), and to reserve an unlimited number of books. The system should keep track of for how long a customer has loaned a book, as the books can only be loaned for a limited amount of time.

4 Conflicts

5 Classes

6 Functions Recommend Title Function Ratings Compare Ratings by computing MSE Random Recommendations Delayed Action Function Recall loan, timeout reservation Run actions on a daily basis

7 Goals for use

8 GUI Analyzed the usage Personas Who will use the system Scenarios What will they do with the system Analyze the interaction Use cases How is it done Interaction spaces What is done where in the system (subtasks) What classes are used User interfaces

9

10 Technical Platform.NET 4.0 Class Library (.DLL) for Model Layer ASP.NET MVC application for GUI MSSQL for Data Storage

11

12 Generic Design Decisions Data Access Layer implements Repository Pattern Makes the model independent of the actual implementation of the DAL, and enables us to mock the functions of the DAL when testing System uses The Observer Pattern Smooth and flexible boundary between Model Layer and Function Layer

13 Component Architecture

14 Components

15

16

17 Bugs You can’t loan a book which is reserved for you. Wrong order of if-statements You can only loan e.g. 5 books even if they are returned Counts both returned and active loans

18 Ensuring correctness of the program

19 Testing Total (147 tests) Model components (39 tests) Function components (48 tests) Data Access Layer (60 tests) Code coverage Model & function layer: 86,33% Data Access Layer: 85,46% Overall: 85,66%

20 Testing Mocks used (except from in DAL tests) Nmock Dbdata for DAL tests Blackbox testing TDD on recommender Whitebox on searcher

21 Usability evaluation of the graphical user interface (GUI)

22 Evaluation Only evaluated customer part of the system 2 evaluation participants Student and high school graduate Use computers daily, use library rarely Instant Data Analysis (IDA method) 6 tasks to perform Finding books Reserving books Updating account

23 Evaluation Results 3 critical problems 4 serious problems 12 cosmetic problems Critical problems are about search No flexibility with misspelled criteria Slow load time No flexibility with keywords Serious problems Expects system to remember last search Expected to be able to cancel reservation from search results Unexpected redirect on logon Users not aware of submenu

24

25 The recommendation algorithm A simple recommendation algorithm TopN-recommendation Collaborative filtering Lowest MSE – customer vs. client Quality of the algorithm Limited data used Less accurate Random MSE

26 Experiences A&D Great blueprint for the implementation Not useful for small systems Test TDD Unit tests (positive experience - time-consuming) Implementation Use TDD or make the unit tests earlier in the process

27 Experiences IDA Very positive result Found 1 problem per minute ADRIA Good blueprint for designing the GUI Time-consuming for less complex GUI


Download ppt "D104a Mathias Andersen, Heine Gatten Larsen, Mathias Grund Sørensen, Jakob Haahr Taankvist."

Similar presentations


Ads by Google