I don't know if $\exists$ a simpler way than this to solve this problem.
We will use pigeonhole principle to solve this question
Total number of vertices = $\text{10}$
Number of edges = 15
Degree sum = 15 $\times$ 2 = 30
As mentioned in the question no vertex can have degree more than 3 so now every vertex must have degree 3. So that
Number of vertices $\times$ degree of vertex = Degree sum
10 $\times$ 3 = 30
Assuming there are 10 vertices, A,B,C,D,E,F,G,H,I,J each with degree 3.
These 10 vertices have their 10 holes
Now let V be a set of minimum vertex cover of the given graph.
V = {} initially
We will choose a vertex then put the number of degree associated with that vertex and also in neighboring vertex too.
Let's choose A and assume any 3 vertex are neighbors of A. let 3 neighbors be B,C,D
V = {a}
We want least vertex in V so next we will choose E.
V = {A,E}
Next choosing I and assuming F,G,H are adjacent to I because we want to fill holes without even choosing them for minimum vertex cover.
V = {A,E,I}
Next choosing J and assuming F,G,H are adjacent to J due to this assumption F,G,H are filled automatically without even selecting them.
V = {A,E,I,J}
Next choosing B.
V = {A,E,I,J,B}
and finally choosing C
$V = \{A,E,I,J,B,C\}$ and $\left |\text{V} \right | = 6$
Can we do less than 6? No because how much greedy you go in the end we will be remaining to fill 3 boxes with 1,1,1 and then we need to select 2 of them.