T Progress Demo Byte-Pit
T Progress demo 2 Agenda Introduction (3 min) Project status (5 min) Status of project requirements Architectural status What have we been doing? (10 min) Programming Designing Testing Visualization (15-20 min) Questions (5 min)
T Progress demo 3 Introduction to the project What? visualization of anomalies caused by malware Why? to ease the task of detecting if a system is infected to increase the speed and precision of the analysis How? by a 3D presentation of the system by highlighting suspicious areas Why 3D? lists are tedious to search through especially when you’re not sure what you’re looking for visual objects can be more intuitive trying out a new concept
T Progress demo 4 Status of the requirements (1/2) Functional RequirementStatus Loading snapshotsOK Comparing snapshotsBasic structure in place Screenshots, videos, presentationsDiscarded as low priority Main objects in 3D, relationsOK NavigationOK, could use some new ideas? Object clustersNot implemented, sorting does most of the job Other informationOK, could be improved Object filtering and sortingOK on the model level, still buggy on visualization Anomaly score visibleOK Data modelsOK, might need updates for compare Known malware warningNot implemented (yet) Sound, D3D, small optional requirementsDiscarded as low priority
T Progress demo 5 Status of the requirements (2/2) Non-functional requirementStatus PerformanceOK, graphics can be configured (though not through the UI yet) UsabilityNeed testing (will be also peer tested) MaintainabilitySettings OK, Coding standard mostly OK, Models not done Architectural integrityLayers in good form, no know deficiencies LocalizationFramework OK, usage needs to be checked Portability64-bit environment shouldn’t be a problem, needs testing? CompatibilityNeed testing with visualization component SecurityNeeds testing StabilityStatic analysis tools used, should have a go with customer’s tools Visual image guidelinesNot really considered yet Legal requirementsOK, no copy-code
T Progress demo 6 Architectural status (1/2) Approximated status of layers Logic Visualization needs more tuning Otherwise UI controlling quite ready Localization not done UI UI and 3D engine done. Visualization related changes possible HW OpenGL hardware abstraction done. Visualization related changes possible Audio output and Direct3D dropped SW Clustering not done Audio loading and bitmap saving dropped Everything else implemented as planned
T Progress demo 7 Architectural status (2/2) Approximated status of layers OS Everything needed is ready and tested Common Everything needed is ready and tested. Some additions possible Refactoring and code cleanup would be nice
T Progress demo 8 Coding & Design Quite a lot of hours used Lots of new code Mostly UI Layout designed Menus Buttons Dialogs Property Grid Visualization Plan Implementation of the plan (more on this later) Control Designing control logic Sending events Catching event and reacting Some fixes and additions to other parts
T Progress demo 9 Testing Reviews Just a handful of review have been done since last demo Unit tests UI mostly used the framework established in I1 => no unit tests Visualization best tested with exploratory style Static Analysis Same tools still in place (RATS, Prefast, doxygen) System testing Some bugs entered to the database Most fixed on sight Build breakers Crash bugs Visualization developed in a fast cycle Some testing and fixing done immediately Peer testing group contacted Two man testing team will test their product in test sessions in Ruoholahti We will provide our product on 17.2 the latest
T Progress demo 10 Still to come Coding & Design Corrections/addition to visualization Still not too late for feedback Bug fixes Testing Reviews Code beautification Code documentation Architecture check-up System testing Peer testing Maybe some missing unit tests Documenting Finishing all documentation
T Progress demo 11 Visualization (1/3)
T Progress demo 12 Visualization (2/3)
T Progress demo 13 Visualization (3/3)
T Progress demo 14 Demo (effect?) Keep your fingers crossed ;)
Questions?