Download presentation
Presentation is loading. Please wait.
Published byClement Lane Modified over 9 years ago
1
D104a Mathias Andersen, Heine Gatten Larsen, Mathias Grund Sørensen, Jakob Haahr Taankvist
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
10
Technical Platform.NET 4.0 Class Library (.DLL) for Model Layer ASP.NET MVC application for GUI MSSQL for Data Storage
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
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
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.