I'm currently working on my CS masters thesis. The timeline is set up to 5 months with developing the software and writing the thesis itself. My supervisors and me had a nice idea that would (if it were implemented successfully) be a great contribution to a currently running research project of one of the supervisors.
I started out with checking whether the first of the two main problems of the thesis would work at all (I implemented that part of the software, it worked and so we were fine with that). After that, we felt confident to finally and officially register the thesis, so that eventually, with that day, those 5 months of officialy working on it started.
Today, 2.5 months later, I'm stuck with the second part of the problem. Since starting to work on that two months ago this one great problem was cut down into many smaller ones of which a few are solved, others aren't.
Those few unsolved problems are a major issue now. On the whole, our "great idea" with which we started works under the condition that those few unsolved problems would some day work, but currently I feel
- that some of the unsolved problems can't be worked out in the remaining time
- few of them I might not be able to solve at all - literature on them is very rare or non existend; I suppose we're the first people to try to accomplish that fuctionality with these tools
In conclusion I currently don't believe that the whole "great idea" we initially had can be put into software within the time horizon of my thesis (or at all).
The questions now are:
I think I need 6 weeks (more likely 8 weeks) for writing the text of the thesis, so my time is running and I fear I cannot finally and certainly find out which of the remaining problems can be solved; What to do (and write) in that case in my thesis?
I think my supervisors expected this whole thing to work out, being implement in code. I fear I'll not satisfy that expectation. What to do about them telling me I could have done better, worked more, harder?