280 likes | 385 Views
Team Think For You. An adaptive Sorting Feature for HOPE adaptive AHP and User Model Driven Approach. Outline. Introduction Process Requirements Engineering Architecture Detailed Design Testing Demo Extensibility Conclusions. Introduction.
E N D
Team Think For You An adaptiveSorting Feature for HOPEadaptive AHP and User Model Driven Approach
Outline • Introduction • Process • Requirements Engineering • Architecture • Detailed Design • Testing • Demo • Extensibility • Conclusions
Introduction Too many options/config. settings in HOPE The Problem: Who’s Affected? Goals (How we solve the problem) • Capture multiple types of contextual info. about user’s past behavior • Sort options using a combination of captured info. • Display options in order of user’s most likely need
Our Process • (Re)planning, Risk mitigation, issues resolution, SDM, tradeoff analysis, WBS, SVN • SW Dev. Process • Interleaving, Iterative (Agile) and Incremental • Fluid Teams(RE, Arch, DD, Implementation, QA) • 2 Iterations:
Architecture Team TFY used Software Architecture Analysis Method (SAAM):
Architecture Three options considered: • Delegate the responsibility of filtering things and actions to a module that wraps data access and updates statistics • Refactor existing architecture into a layered configuration, then extend business logic layer for context awareness • Map all the points of change in the current system to extend with context-sorting logic
Architecture Candidate evaluation
Architecture Candidate evaluation
Architecture Static perspective UML component diagram
Architecture Interaction perspective UML sequence diagram (for things and verbs after user clicks on sort button)
Architecture Interaction perspective UML sequence diagram (for things and verbs after icon click event, upon icon selection)
Detailed Design • Methodology • OO modeling, SDM, issue and conflict resolution • Scientific research • Design patterns • Adapter, Template, Strategy, Observer... • Design principles • High cohesion (single responsibility) and low coupling (data dependency)
Detailed Design • Adapter
Detailed Design • Template
Detailed Design • Strategy
Testing • Test plan • Criteria for testing completeness • SRS • Techniques: • Code Inspection • Scenario based white-box verification • detailed design sequence diagrams • Functional testing • Formal verification using Alloy model finder
Update • ...
Conclusion • Our Contributions to HOPE: • Use of contextual information to sort icons in order of user's most likely need • refactored HOPE code to make it more maintainable • formal model checking to test aspects of our model • design is easily extensible to allow for future addition of more types of contextual information as criteria in the sorting • Other Applications (Frequency and Time) • TV Listings • Music Playlist