COMPUTER SCIENCE CS3IP16

COMPUTER SCIENCE
CS3IP16: FINAL YEAR PROJECT
LIST OF RECOMMENDED PROJECTS
2023 – 2024
This document contains a list of recommended projects for the CS3IP16 Individual Project.
Make a note of three projects (from this list) and explore their detail. You will need to enter the
selected projects in an online form given on Blackboard. You may contact the staff, contact point for
a group of projects if you like to know more detail than what is offered here. While doing so, please
ask specific questions and show your interest in the project with some background search on the topic.
This will help you get a good response from the staff. Note that most projects listed here will
accommodate your interest later while you prepare the project initiation document consultation with
an assigned supervisor.
Contents
Proj. # 1. Computer science curriculum analytical application………………………………………………4
Proj. # 2. Data analysis and visualisation ……………………………………………………………………………4
Proj. # 3. Data integration and analysis ……………………………………………………………………………..5
Proj. # 4. Compiling to register machines …………………………………………………………………………..5
Proj. # 5. Lossless steganography………………………………………………………………………………………6
Proj. # 6. Silent disco app for Android………………………………………………………………………………..6
Proj. # 7. Multiplayer networked game ……………………………………………………………………………..7
Proj. # 8. Computer solution of puzzle games …………………………………………………………………….7
Proj. # 9. Timetabling ………………………………………………………………………………………………………8
Proj. # 10. E-Learning Web Pages for Computer Science…………………………………………………….8
Proj. # 11. DaisyWorld Simulation……………………………………………………………………………………9
Proj. # 12. Robot Simulator…………………………………………………………………………………………….9
Proj. # 13. Cartoon Character Generator………………………………………………………………………..10
Proj. # 14. Speaking Cartoon character…………………………………………………………………………..10
Proj. # 15. Escher inspired Virtual World ………………………………………………………………………..11
Proj. # 16. 3D graphics in Javascript……………………………………………………………………………….11
Proj. # 17. Password Manger ………………………………………………………………………………………..12
Proj. # 18. Safe Travel around the City……………………………………………………………………………12
Computer Science CS3IP16: 2023-24
2 | 3 9
Proj. # 19. Synthetic Data Generator Engine……………………………………………………………………12
Proj. # 20. Distributed Ledger Technology (DLT)………………………………………………………………13
Proj. # 21. Smart City Automatic Number Plate Recognition (ANPR) Traffic Modelling…………13
Proj. # 22. Simulating a tape system using Simpy…………………………………………………………….14
Proj. # 23. Describing Supercomputer Hardware/Software ………………………………………………14
Proj. # 24. Benchmarking Cloud Computing in the JASMIN cloud. ……………………………………..14
Proj. # 25. A face recognition system……………………………………………………………………………..15
Proj. # 26. Change detection based on remotely sensed image sequences…………………………15
Proj. # 27. A real-time character recognition system ……………………………………………………….16
Proj. # 28. Editing colour images……………………………………………………………………………………16
Proj. # 29. Vision-based emotion detection…………………………………………………………………….17
Proj. # 30. Multiple camera – based industrial inspection: document comparison ………………17
Proj. # 31. Simulator: process scheduling in an operating system………………………………………18
Proj. # 32. Behaviour (Threat/Anomaly) Detection in Wide Area Scenes…………………………….18
Proj. # 33. Vision Based Attendance Analyser …………………………………………………………………19
Proj. # 34. Automatic Authentication of Specific Optical Security Features…………………………20
Proj. # 35. Contactless Multimodal Biometric Fusion……………………………………………………….20
Proj. # 36. Video-Based Presentation Attack Detection ……………………………………………………21
Proj. # 37. Smartphone-based Identification …………………………………………………………………..21
Proj. # 38. Automatic Generation and Verification of Passport Photos……………………………….21
Proj. # 39. Deepfake Detection ……………………………………………………………………………………..22
Proj. # 40. Automatic Generation and Verification of Passport Photos……………………………….23
Proj. # 41. Handwritten signature detection from scanned documents ……………………………..23
Proj. # 42. Smartphone-Based Recognition of Human Activities………………………………………..24
Proj. # 43. Modelling and visualisation of a proposed cyber-physical system demonstrator…24
Proj. # 44. Intelligent social media analysis with machine learning…………………………………….25
Proj. # 45. LLVM compiler Magic with Abstract Syntax Trees…………………………………………….25
Proj. # 46. Interactive Data Visualization Application……………………………………………………….26
Proj. # 47. Disease Prediction with Data Science ……………………………………………………………..26
Proj. # 48. Exploring Factors of and Predicting Life Expectancy …………………………………………27
Proj. # 49. Student Attendance Taking System using Facial Recognition …………………………….27
Proj. # 50. Applications of Generative Adversarial Networks (GANs)………………………………….28
Proj. # 51. An annotation tool for Computer Vision research…………………………………………….28
Proj. # 52. Development of a software for emotion recognition………………………………………..29
Proj. # 53. A reasoning engine for threat detection recognition ………………………………………..29
Proj. # 54. A group detection system from video streams…………………………………………………30
Computer Science CS3IP16: 2023-24
3 | 3 9
Proj. # 55. Translating Fluid Dynamics Code from Fortran to Python………………………………….30
Proj. # 56. 3D Weather Visualization Tool Using Atmospheric Model Data …………………………31
Proj. # 57. Wildfire Pattern Analysis Using Satellite Data ………………………………………………….32
Proj. # 58. Visual Comparison of Clustering Algorithms Using Python Tools on Atmospheric
Science Datasets……………………………………………………………………………………………………………….32
Proj. # 59. Visual Comparison of Network Analysis Algorithms Using Python Tools……………..33
Proj. # 60. Vehicle Re-Identification for Visual Surveillance ………………………………………………33
Proj. # 61. Deep Aerial Image Matching………………………………………………………………………….34
Industrial Projects (Real-World Projects)………………………………………………………………………………….34
Student self-proposed project………………………………………………………………………………………………..34
Computer Science CS3IP16: 2023-24
4 | 3 9
Proj. # 1. Computer science curriculum analytical application
Project description (max 100 words): This project will take a data-driven approach to analyse and
manage the study curriculum, which plays a key role in teaching and learning computer science. The
targeted end-users are CQSD at the university level, the department management team, lecturers,
and students.
The CS curriculum comprises four interrelated features, i.e. disciplinary subjects across 3 study years,
various CS module delivery methods, assessment and feedback provision, and student learning
support. This project proposal seeks students who will work in a group of 3 members to develop a
web-based application that is expected to perform functions to satisfy the requirements of (1)
curriculum data management in a database; (2) multidimensional curriculumdata analysis, (3)
interactive data visualisation; and (4) recommendation for decision-making.
The three projects will independently conduct the development as follows:
Project A – the requirements of curriculum data management in a database; and
recommendation for decision-making
Project B – the requirement of multi-dimensional curriculumdata analysis;
Project C – the requirement of interactive data visualisation; and
Project D – Assessment and feedback management.
In order for the three sets of the resultant program to be integrated in the future, the three projects
are desirable for adopting compatible platforms and programming languages.
Keywords (max 5 keywords): computer science curriculum, data/process analysis, data visualisation,
statistics; web-technology
Project learning outcomes: (max 3 sentences):
To articulate problem context (e.g. CS curriculum) with the adoption of methodologies;
To apply data-driven theories technical knowledge/skills to develop a required
program/system;
To develop creativity and criticalness in solving problems.
Skills/knowledge/technologies used/acquired:
Essential: Programming, Excel/database technology, web technology – all projects
Open-source data visualisation tools (e.g. Tableau), statistics – Project B and C
Desirable: KNIME, data cleansing.
Prerequisite for the project: None.
Proj. # 2. Data analysis and visualisation
Project description (max 100 words): In a sense-making process, the human brain processes
information to grasp the meaning of multiple data dimensions when they are displayed in charts
and graphs. A number of quantitative methods are normally adopted to analyse vast amounts of
data, and graphical tools can then be employed to present results for purposes. However, recent
Computer Science CS3IP16: 2023-24
5 | 3 9
innovations in hardware, analytics and mobility require the analysis of data effectively and
communicating results with users via statistic graphics efficiently. Projects under this theme will
inquiry about data visualisation concepts and principles as well as visual analytics tools and
develop interactive data visualisation methodology and device. Some ideas would be: Interactive
dashboard adding computer science curriculum analytics and visualisation and Driving Behaviour
Prediction vs Road Safety.
Keywords data analysis, data visualisation, multi-dimensional views
Skills/knowledge/technologies used/acquired:
Programming, Excel/database technologies, open-source visual analytical tools (e.g. Tableau),
KNIME
Prerequisite for the project: None.
Proj. # 3. Data integration and analysis
Project description (max 100 words): Data integration (DI) is a widely adopted method in the
commercial world that repurpose data by transforming transactional data to a common form
found in a data warehouse (DW). DWs, therefore, are central repositions of integrated data from
one or more disparate data sources (e.g. transactional databases, files). DI normally support two
broad practical areas: 1) online analytical processing (OLAP) creating analytical reports to support
decision making, and 2) migration, consolidation, and synchronisation of transactional databases,
as well as exchanging data in a business-to-business context. Projects in this theme aim to
develop a prototype of a data warehousing application that enables transactional data from
multiple and distributed databases to be processed in the appropriate levels of summary and
abstraction. The processed data (defined as informational data) will be relevant to chosen
problem contexts to support the intended business purposes. This project requires adopting the
data warehousing design methods (e.g. Star Schema and data mart) as well as good database and
programming skills for an implementation of a DW application.
Keywords data integration, ETL, data warehousing
Skills/knowledge/technologies used/acquired:
Programming, database technologies (e.g. Microsoft SQL Server), ETL technologies (e.g. KNIME),
Star Schema
Prerequisite for the project: None.
Proj. # 4. Compiling to register machines
Project description (max 100 words): An amazing result in computation theory is that a “register
machine” or “Minsky machine” with no addressable memory and just 2 unbounded integer registers
and 4 primitive instructions (namely register increment, register decrement, unconditional jump and
jump if zero) can compute any computable function. The goal of this project is to demonstrate this
Computer Science CS3IP16: 2023-24
6 | 3 9
by producing a compiler that takes a program in a high-level language such as Java and produces
machine code that can be executed by a register machine. The Babycino MiniJava compiler from the
Compilers module could provide a starting point for this project.
Keywords (max 5 keywords): computation theory, compilers
Project learning outcomes: (max 3 sentences): Students completing this project should be able to:
describe a register machine;
explain constructively how a register machine can compute any computable function;
develop a compiler for a very restrictive target architecture.
Skills/knowledge/technologies used/acquired: Knowledge of basic computation theory will be
acquired.
Prerequisite for the project: Java programming, Compilers and Computer Architecture.
Proj. # 5. Lossless steganography
Project description (max 100 words): Steganography is the process of hiding data (the “payload”)
inside other data (the “carrier”). For many file formats, there are multiple possible encodings of the
same data. For example, in an image format that supports compression (such as PNG) an image may
be stored compressed or uncompressed. A payload can be hidden within a carrier image by choosing
which parts of the image to compress and how. The goal of this project is to develop a program that
uses this method to encode/decode a payload within a suitable carrier format.
Keywords (max 5 keywords): steganography, binary file formats
Project learning outcomes: (max 3 sentences): Students completing this project should be able to:
explain the details of how some real-world binary file format encodes data;
use bit-level operations to read and write files that conform to a binary file format
specification;
develop a program that encodes/decodes a payload within a binary carrier file format.
Skills/knowledge/technologies used/acquired: Knowledge of the details of some binary file format
will be acquired.
Prerequisite for the project: Familiarity with bit-level operations (such as bitwise shifts, NOT, AND,
and OR) in any programming language.
Proj. # 6. Silent disco app for Android
Project description (max 100 words): In a conventional disco, participants dance to music played
over loudspeakers. In a silent disco, participants dance to music played through headphones. The
advantage of this is that the silent disco does not disturb others in the area. Silent discos usually
operate using specialist FM radio headphones and short-range FM transmitters. The goal of this
project is to produce a system that replicates the experience using wirelessly networked Android
Computer Science CS3IP16: 2023-24
7 | 3 9
devices, allowing participants to join the disco using their own phones and headphones. The audio
needs to be streamed efficiently and reliably and playback on all participants’ devices must be
synchronised.
Keywords (max 5 keywords): Android, audio streaming, real-time networking
Project learning outcomes: (max 3 sentences): Students completing this project should be able to:
design and implement UDP-based network protocols;
explain the difficulties of reliable, real-time communication and how to overcome them;
develop Android apps that use networking and audio playback APIs.
Skills/knowledge/technologies used/acquired: UDP, multicast, Android development
Prerequisite for the project: Some familiarity with network programming would be helpful.
Proj. # 7. Multiplayer networked game
Project description (max 100 words): The goal of this project is to produce a networked multiplayer
computer/video game. You have some freedom to choose what style of game to produce (turn based, real-time, graphical, text-based, virtual reality, and so on), but you should focus on the
networking aspect. You could consider: how potential players will find each other online and agree
to start a game; how to share game state while minimising network traffic and the potential for
cheating; what to do if the network connection is unreliable or intermittent; and (particularly for
real-time games) how to ensure synchronisation between players’ views of the game world. Some
suggestions within this project brief: multiplayer networked 2D car racing game; multiplayer text
adventure game (MUD); multiplayer networked virtual reality table tennis game.
Keywords (max 5 keywords): games, networking
Project learning outcomes: (max 3 sentences): Students completing this project should be able to:
design and implement network protocols;
explain the difficulties of creating a networked game and how to overcome them;
develop a multiplayer networked game.
Skills/knowledge/technologies used/acquired: You will probably want to use some existing
networking and graphics libraries.
Prerequisite for the project: Some familiarity with network programming would be helpful.
Proj. # 8. Computer solution of puzzle games
Project description (max 100 words): There is a wide variety of turn-based “solitaire” puzzle games.
Often, these puzzles are amenable to solution by computer, either using some kind of heuristic guided local search, or by encoding them as a constraint-satisfaction problem and using a generic
external solver. The goal of this project is to produce a novel solver for such a game and evaluate its
Computer Science CS3IP16: 2023-24
8 | 3 9
effectiveness. You might also consider the problem of how to generate interesting puzzle instances
of varying difficulty. Some suggestions within this project brief: solver for “Rush Hour” block-sliding
traffic puzzles; solver and generator for Sokoban (crate pushing) puzzles; generator for crossword
puzzles.
Keywords (max 5 keywords): games, constraint solvers, local search
Project learning outcomes: (max 3 sentences): Students completing this project should be able to:
use local search or constraint solvers to solve well-specified problems;
evaluate empirically the effectiveness of a solution method for a problem;
develop a computer implementation of a puzzle game.
Skills/knowledge/technologies used/acquired: Heuristic-based local search and/or SAT/constraint
solvers.
Prerequisite for the project: A specific idea of a puzzle game you would like to write a solver for, and
experience of solving instances of those puzzles yourself.
Proj. # 9. Timetabling
Project description (max 100 words): Scheduling is a common but computationally hard problem.
One example is the scheduling of lectures in the University, where many constraints must be
satisfied simultaneously. Essentially, no room, student or lecturer may be allocated to more than
module at any particular time. There are also some more complex constraints and some desirable
but not essential “soft” constraints. The goal of this project is to produce a scheduling utility for
some application (not necessarily university lectures) that makes it easy to specify constraints, solve
them by computer and view candidate solutions. Some suggestions within this project brief: school
or university timetabling system; sports or competition timetabling system; meal/diet planning
system.
Keywords (max 5 keywords): operations research, constraint solvers, local search
Project learning outcomes: (max 3 sentences): Students completing this project should be able to:
use local search or constraint solvers to solve scheduling problems;
develop a user interface for specifying and viewing solutions to scheduling problems.
Skills/knowledge/technologies used/acquired: Heuristic-based local search and/or SAT/constraint
solvers.
Prerequisite for the project: None beyond some programming ability.
Proj. # 10. E-Learning Web Pages for Computer Science
Project description (max 100 words): The aim of the project is to create one or more related
interactive web pages to help students learn a given topic in computer science, for instance, tree or
Computer Science CS3IP16: 2023-24
9 | 3 9
linked list structures, computer operation, virtual reality, artificial intelligence or mathematics for
computing. These pages should actively demonstrate the topic and allow suitable interaction to give
the user opportunities to test their understanding. The pages may be written in JavaScript or similar
and could well be in the style of RJM’s pages, such as those at
http://www.personal.reading.ac.uk/~shsmchlr/jsmaths/.
Note there can be a few versions of the project, each student working on a different topic.
Keywords (max 5 keywords): eLearning; Active Learning.
Project learning outcomes: (max 3 sentences):
A system able to demonstrate a given topic
A system which allows a user to determine if they understand the topic
Skills/knowledge/technologies used/acquired: Ability to program – can learn JavaScript
Prerequisite for the project: Programming experience; Knowledge of relevant subject
Proj. # 11. DaisyWorld Simulation
Project description (max 100 words): James Lovelock’s Daisyworld illustrates how life on a planet
can influence its temperature. A simple model of it, used in Begin Robotics, is available at
http://www.personal.reading.ac.uk/~shsmchlr/jsrobotstyle/demoDaisyWorldCalc.html . The aim of
this project is to develop a more advanced simulation, not necessarily on a web page, displaying a
3D spherical planet, with multiple species of daisies at different latitudes reflecting the different
amount of sunlight received. Advanced features which could be added include plagues affecting the
daisies, animals such as foxes and rabbits, the latter eating daisies, or evolution of the albedo of the
daisies.
Keywords (max 5 keywords): Daisyworld; Artificial Life; Evolution; Simulation.
Project Learning outcomes: (max 3 sentences):
Simple Interactive Model of Daisyworld with multiple species
3D simulation
Darwinian Daisyworld
Skills/knowledge/technologies used/acquired: programming, simulation, simulation
Prerequisite for the project: Programming
Proj. # 12. Robot Simulator
Project description (max 100 words): A 3D simulation of a mobile robot moving round its
environment is to be produced. This could be the ERIC Robot from Begin Robotics, in which case a
model showing the rocking motion of its body is expected, or the ‘Rover’ in Begin Robotics, which
would move around a complex terrain, etc. Suitable physics should be incorporated in the
Computer Science CS3IP16: 2023-24
10 | 3 9
simulation, so that the robot moves realistically. The environment could be developed by the
student, or the model could be incorporated in the Unity game environment. Autonomous and
manual control of the robot should be available.
There can be different versions of this project, each simulating a different robot.
Keywords (max 5 keywords): Robotics; 3D simulation
Project Learning outcomes: (max 3 sentences):
3D model of robot moving round 3D environment
Realistic physics incorporated
Skills/knowledge/technologies used/acquired: Programming, Simulation, 3D simulation, Unity
Prerequisite for the project: Programming, Graphical interfaces, some mathematics.
Proj. # 13. Cartoon Character Generator
Project description (max 100 words): Sketchup is a user friendly package which easily allows 3D
models of buildings for instance to be made. The aim of this project is to produce a similar user
friendly system to allow a model of a cartoon character to be produced. For instance, a surface in
SketchUp can be selected and pulled out – similarly part of a face could be selected and pulled out to
generate a nose.
Keywords (max 5 keywords): 3D simulation; Graphics
Project Learning outcomes: (max 3 sentences):
Program allowing user to create a 3D cartoon character
Skills/knowledge/technologies used/acquired: Programming, Simulation, 3D simulation, Unity
Prerequisite for the project: Programming, Graphical interfaces
Proj. # 14. Speaking Cartoon character
Project description (max 100 words): A system is to be generated which can take in text and which
produces an animated cartoon character speaking that text, with suitable movement, most
important including the mouth, but ideally eyes, arms, etc. A 2D cartoon character is acceptable.
Ideally the system will also allow the user to define what the character looks like.
Keywords (max 5 keywords): Animated Cartoon Character; Text to speech.
Project Learning outcomes: (max 3 sentences):
Simple cartoon character able to speak text
User definable character
Ability to generate a video
Computer Science CS3IP16: 2023-24
11 | 3 9
Skills/knowledge/technologies used/acquired: Programming, Text Processing, Animation
Prerequisite for the project: Programming, Graphics
Proj. # 15. Escher inspired Virtual World
Project description (max 100 words): I illustrate the different aspects of Cybernetics in an image
inspired by MC Escher’s Other World woodcarving https://www.mcescher.com/gallery/back-in holland/other-world/. The aim of this project is to produce a 3D version of this or similar Escher
carvings (see https://www.mcescher.com/gallery/impossible-constructions/), which can be explored
by the user and the effects of changing perspective investigated. If another world is chosen, then the
portals could be used to illustrate aspects of computing the viewer could investigate.
Keywords (max 5 keywords): Interaction, Virtual Reality.
Project Learning outcomes: (max 3 sentences):
3D model based on Escher’s work
Program to interact with it suitably
Skills/knowledge/technologies used/acquired: Programming, Graphics
Prerequisite for the project: Programming
Proj. # 16. 3D graphics in Javascript
Project description (max 100 words): Some of my web pages have simple 3D graphics, such
as https://www.personal.reading.ac.uk/~shsmchlr/jscomp/demo3D.html and https://www.personal.
reading.ac.uk/~shsmchlr/jscomp/build3D.html
However, these do not fully implement various graphics methods, such as ‘painters algorithm’, or
the ability to add textures and lighting. The aim of this project is to build on these web pages but to
incorporate these extra features. This can be done by writing a suitable 3D library, or by using an
existing library such as threejs . The web pages could then be used by students as they learn about
3D graphics and the associated mathematics and algorithms, and by me for developing new pages..
Keywords (max 5 keywords): Javascript, 3D graphics.
Project Learning outcomes: (max 3 sentences):
Library of 3D graphics in Javascript
Interactive web pages to help understanding of 3D graphics
Skills/knowledge/technologies used/acquired: Programming, Graphics
Prerequisite for the project: Programming. Knowledge of Javascript not essential
Computer Science CS3IP16: 2023-24
12 | 3 9
Proj. # 17. Password Manger
Project description (max 100 words): There is a need to systematically strengthen capabilities for
enhanced integrated cyber security and secure interoperability end-to-end through mobile
applications and cloud computing services. In the context of the Internet of Things (IoT) and “always on” everything, the citizens’ self-help towards enhanced security for their multiple devices and
controlling access to their data is to start with managing their password. This project investigates
password manager applications and creates a secure application that suggests and manages strong
passwords for various spaces, devices, and applications that clients may interact with through their
everyday work and life in a hyper-connected network-centric environment.
Keywords (max 5 keywords): cyber security, cloud computing services, Internet of Things
Project Learning outcomes: (max 3 sentences):
creates a secure application that suggests and manages strong passwords..
Skills/knowledge/technologies used/acquired: Internet of Things
Prerequisite for the project: Programming
Proj. # 18. Safe Travel around the City
Project description (max 100 words): Incidence of crime in metropolitan areas would call for travellers
and particularly young students new to a university town to be vigilant as to which areas are safest to
live in and particularly walk through at night; which areas have experienced higher crime rates
particularly personal assault. This project will use police crime data to map the postcodes-&-twitter_xfffe_linked crime data on the city maps on an android phone as a sort of traffic light shading to show no go zones and relatively crime-free areas plus date and type of the latest crimes using appropriate
graphic representations rather than text – at a glance urban safety companion.
Keywords (max 5 keywords): crime data, data analysis, visualisation
Project Learning outcomes: (max 3 sentences):
Develop a software tool as the graphic representations rather than text – at a glance urban
safety companion
Skills/knowledge/technologies used/acquired: software development, data analysis.
Prerequisite for the project: Programming
Proj. # 19. Synthetic Data Generator Engine
Project description (max 100 words): Proof of correctness, secure operation and process integrity
validation of systems requires robust and comprehensive testing, which in turn calls for the design of
systems for testability as well as the capability for relevant high fidelity synthetic data generation so
that the system lends itself to modular and integrated testability for conformance assurance,
Computer Science CS3IP16: 2023-24
13 | 3 9
dependability and usability. This project aims to formulate abstract data models for the target test
domain and thus builds a synthetic data generator engine to characterise the properties of typical
targeted input data for testing and generating such data en-mass for targeted use-cases. The quality
of performance of the synthetic data generator has to be assessed, e.g. in terms of the fidelity of the
test data with respect to relevant syntactic, semantic and other criteria.
Keywords (max 5 keywords): synthetic data generation
Project Learning outcomes: (max 3 sentences):
Development of a software tool for synthetic data generation
Skills/knowledge/technologies used/acquired: Software development, software engineering
Prerequisite for the project: Programming
Proj. # 20. Distributed Ledger Technology (DLT)
Project description (max 100 words): This would be some preliminary implementation of a use-case
on Blockchain. The student is expected to examine the state-of-the-art solution stacks offering
blockchain implementation as a platform for the development of some transactional processes in an
application domain of choice; plus critical analysis of drawbacks if any with respect to indicative
criteria, which could be time/process/privacy/security) -critical as relevant to the application domain
and suggesting possible solutions to resolve/byp