SRMC: Frequently-asked questions

What is this?
SRMC is a modelling language used to predict the performance of computer systems.
Why do I need this?
Computer system designs become increasingly complex. Modelling helps developers to keep control over their designs.
What do you put in?
You put in a model of your system, either one which you are responsible for now or one which you plan to build some day.
What do you get out?
You get out response-time and other graphs predicting how well the system will serve its users.
Why should I care about response-time?
Users of a system care about its responsiveness. A system which fails to meet performance requirements is as likely to be dropped as one which fails to meet functional requirements.
How does SRMC help with this?
SRMC allows you to try out alternative designs until you find a system configuration which satisfies the system-level agreement (SLA) which you need to meet.
Why can't I use UML instead?
UML models don't usually contain any performance information and even if they do most UML tools don't do anything with it.
Why can't I use Matlab instead?
Matlab can do terrific numerical computing with matrices and vectors but it doesn't have a modelling language which can describe high-level components and compose them in the way that SRMC can.
Why can't I use PRISM instead?
PRISM is a wonderful modelling tool which can compute performance information very efficiently but it does not have SRMC's ability to describe different components which might or might not be used, and to process these conditionally. So SRMC allows you to express alternatives and uncertainty in your design.
Why do I want "uncertainty" in my design?
You probably don't, but in life we usually don't have all the answers and sometimes it is good to be able to say "It will either be like this, or like that" and compare the two.
Can you generate code from an SRMC model?
Not at present, but we hope to look at code generation from SRMC in the future.
Does SRMC run on 64-bit machines?
Yes, the SRMC software runs on 64-bit machines.
Why does SRMC depend on C++? Wouldn't a 100% pure Java application be easier to install?
Yes it would, but we do not know of a Java implementation of a Markov chain solver which can outperform the Hydra solver, and that is written in C++.
What license is SRMC available under?
SRMC is available under the GNU Public License.
Do I need to buy a license for other software which SRMC needs (e.g. Matlab)?
No, SRMC depends only on freely-available software.
How do you pronounce "SRMC"?
Don't. It's Ess-Arr-Em-See.