CSC8208_ Evaluating Your Project
CSC8208_ Evaluating Your Project
Dr Carlton Shepherd
Images: DALL-E 3
Today’s Learning Outcomes
● Issues that relate to the planning and execution of a team-based software project, at
an advanced level.
● Making conclusions
● Would you trust a ‘resilient’ chat system ● You will have to implement code that
that was tested against only 3 users, or measures data of interest. You will also have
100,000 users? to run the experiments. Do not
underestimate this development effort!
● What should you measure and why?
A Flow Chart for Doing Evaluations
1 Your 5 Data
Solution Collection
4 Baseline 7 Conclusions
4 Baseline 7 Conclusions
A Flow Chart for Doing Evaluations
1 Your 5 Data
Solution Collection
Do they still
apply? 2 Revisit Aim 6 Analysis
and Objectives
3 Related
Work
4 Baseline 7 Conclusions
A Flow Chart for Doing Evaluations
1 Your 5 Data
Solution Collection
4 Baseline 7 Conclusions
A Flow Chart for Doing Evaluations
1 Your 5 Data
Solution Collection
4 Baseline 7 Conclusions
A Flow Chart for Doing Evaluations
1 Your 5 Data
Solution Collection
Is this data
2 Revisit Aim 6 Analysis useful?
and Objectives
3 Related
Work
4 Baseline 7 Conclusions
A Flow Chart for Doing Evaluations
1 Your 5 Data
Solution Collection
● After reading related work, we have seen that ● You must control for these variables as best
measuring CPU consumption when our as possible to avoid bias.
mechanism is enabled versus disabled is an ○ Very difficult in time-critical areas.
appropriate baseline.
● You will need to spend some implementation
● Accurately measuring CPU consumption is effort to ensure accurate data collection.
surprisingly difficult.
Analysing data
● From: M. Farb et al. "Safeslinger: Easy-to-use and secure public-key exchange." 19th Annual International Conference on Mobile
Computing and Networking (MobiCom). ACM, 2013.
Case Study 2: COINKS
● From: M. S. Melara et al., “COINKS: Bringing key transparency to end users," 24th USENIX Security Symposium, 2015.
Closing Thoughts
Takeaways
● In this module, the evaluation is worth 15% of ● Think: what do you intend on measuring and
the Final Project Report. why?
● A good evaluation is often hard to design, ● Consider: a chat system has many different
execute, and present correctly. Many student possible evaluation methods and metrics.
projects are let down by poor evaluations. ○ Connection latency.
○ Server and client RAM consumption.
● The basis of your evaluation should be to ○ Server and client CPU consumption.
○ Usability.
clearly and persuasively demonstrate why your
○ Reliability (e.g. downtime).
project is valuable, satisfies your aims and
○ Network bandwidth.
objectives, and is fit for purpose.
Takeaways (2)
● (Left) C. Shepherd et al., “A side-channel analysis of sensor multiplexing for covert channels and application profiling on mobile devices,” IEEE
Transactions on Dependable and Secure Computing. IEEE, 2023.
● (Right) G. Goller and G. Sigl. "Side channel attacks on smartphones and embedded devices using standard radio equipment." International
Workshop on Constructive Side-Channel Analysis and Secure Design. Springer, 2015.
A Brief Detour on Information Loss
● F. Pendlebury et al., “TESSERACT: Eliminating Experimental Bias in Malware Classification across Space and Time,” USENIX Security, 2019.