---
# System prepended metadata

title: KPN SOFTWARE PROJECT PROPOSALS

---

# KPN SOFTWARE PROJECT PROPOSALS 
## Questions to ask to TA
- How to deal with reviews that talk about multiple things?
    - Classify a comment into multiple classes
    - You can classify based on frequent words and put those comments into more that one bucket, so they are classified into two different classes at the same time.  
- Supervised or unsupervised discussion
    - He has no experience
- Go over assignment 1 and feedback
    - He doesn't know, check course website
- How gitlab works plus pipeline?
    - We have to take care of setting the pipeline, do not use Docker Image with <latest>. 
- How to deal with lack of specific requirements?
    - Make the list of yourself
- Agenda meeting with TA
    - Every tuesday at 9:30
- Frontend and backend in different repos?
    - No recommendation, depends on the platform and what you want to do 
- How much do u look at the repository? Do we need any specific things to do in the gitlab? 
    - Do it for yourself.
- Security and testing, thoughts? 
    - Black box for testing, is it a problem? how to we deal with that? You probably you need to but it's probably impossible - so no requirements but lets do some basic stuff such as not everything is classified as the same or the confidence level variates.
    - Test driven domain? Great but with a lot of boil plates. He doesn't want any specific requirements. No concrete requirements but we need to do it well. 
    - Security? Your call but if we store no data doesn't make sense, but think about the security implications and problems and deal with them. 
- Domain Driven Design
    - Not gonna ask because its our choice
- Code of Conduct and teamwork things:
    - Make it useful for yourself.
- Project Plan
    - Make a super concrete plan of how our organizational ideas, and what technical details. Using both visualization and text. Example: create a dashboard of the report and the frontend. 
- What is grading sheet based on 
    - For the future 
- Checkstyle?  
    - Up to you, no requirementa
- Does the client need to be present for the midterm?
    - He doesn't know 
- When Technical Technical writing
    - We do not know yet


## Questions to ask
- Physical meeting once a week on Thursdays, is that ok?
    - yes
- Is the data available in a specific database, or are we supposed to keep track of the whole data preprocessing?
    - we need to do preprocessing
- What sources can we *not* use?
    - No there's not much, if it's open source then we can. 
- What is the purpose of the application? Should we connect it to another application or how do you want to use it?
    - No connection
- Is there anything we should build it on? Another KPN application you want to access the review overview from?
    - No
- ~~What is Mopinion? Can we build on it / does it contain all your reviews?~~
- How to deal with reviews that talk about multiple things?
- Do they want different aggregations for the different platforms the app is on?
    - yes
- Answers in Dutch or English? 
    - English is fine.
- Security and testing, thoughts?
    - No need for authentication, since it's hosted on kpn network.

## Project Planning

- Database + data preprocessing (maybe)
- Research of pretrained model
- Model use
- First webpage draft with accessed data
- Visualization of data
- Improvements 

## Our main idea
- Frontend - Application with a database, batch update with new data (possibly live), user selects certain timestamp to see the specific reviews of that period of time, allowing also to filter by category (read below for extra ideas). So, in the frontend, multiple visualization techniques, filtering, etc.

- Backend - translate comment, use a pre-trained model to classify the reviews inside multiple categories, use the (overall) rating to see if it's a good or bad comment (to expand upon this). 

## Possible ideas and extra comments
- Automate the live update with a bot that adds to the database the reviews.
- Add confidence levels in the predictions. 
- Split comments in case they have multiple categories.
- Possibility: connecting it to their already existing KPN application.
- To add into the webpage:
    - Most talked/liked/hated product, possibly with reasons
    - Graph of likability of product over time
    - Average rating of their 
    - Filtering reviews into different categories
    - Adding filter by priority
- Does the OS influence the rating? To add graphs about it
- Different visualization techniques with specifics about the different categories.

**Don’t forget to test.**
Retrained model based on a keyword. 

## Notes about the meeting
the backlog is based on priority, maybe we can put priority on the words.
Should we ignore specific topics? (Not being able to go forwards, which is impossible to fix).
What if a user put a 5 star but no comments, should we consider that, or should we consider the move he watched etc..?

Core is the python data, where we can plot it. On top of this is the frontend, which is extra. We do not need to integrate into KPN stuff.
Database? Not really needed
Graph of the topics, filtering on every column.
Get the data automatically, instead of csv. ->> really, really, really, just fanciness.
For now, just csv. 
Docker image to deploy.
svbucket if static webpage
Deployment is not in scope. 
What if a review only has a rating, but not a comment, then we don't need to use it in the topics, but in the general overview of the ratings. 
Also don't categorize if comment is just 'app is nice' or something generic like that. 
It would be interesting to see what percentage actually leave a comment.
Should users be able to see if a general concept is in the csv?
Do we have preprogrammed categories?
Create relevant labels. We need relevant labels, and maybe let it create labels as well.
We should send them what events are we going to follow?
At least one day before deadlines for reviews.
Don't hesitate to call.