one of my colleagues asked me, if I can describe NumeRe by its central use case. I really was baffled by this question. How might I describe such a complex application by only one use case, even if it is the central one? Some of you might have experiences with UML and the use case diagrams--most applications do not feature the one and central use case, do they?
I escaped the situation by talking about the complexity of NumeRe and that it's not possible to name its one and central use case. However, this answer was not really satisfying--neither for my colleague nor for me. Sadly, I was not able to derive a better answer to his question.
Now it's the time to rethink about this situation and derive a more elaborate answer. First, we have to think about what NumeRe provides, i.e. identifying its key features:
plot sin(x)
will create a plot of sin(x)
over the default range of -10 to 10. No more input needed)if
, while
and so on)Wait--was that all?
I am not able to identify more than 3 key features? Then why is it so difficult to name the one and central use case of NumeRe? What am I doing wrong? Well, let's make that short: most probably it's not difficult--I am just too deep down into the code and tiny little features provided by NumeRe to name it. Instead I have to make some steps back and take a look from far beyond.
And after I had done this, it was really simple:
NumeRe is a framework for data analysis, numerical calculations and data visualisation.
That's all--nothing more left to say. Probably this post might help some of you, which may stumble upon a similar situation.
TLDR: after being asked by one of my colleagues to describe NumeRe's central use case, I needed to step back from the code to identify it.
Anonymous