When potential clients (whether it’s a student or a large organization) reach us to make a simulation model, they often ask, before sending any requirement, what does this requirement need to have, in order to be complete enough to evaluate costs, feasibilty and timeline. In 2018, we wrote an article stating how to reduce the ambiguity of your project in order to make it more objective, in order to maximize the value with the lowest possible price, you can read that here: https://noorjax.com/2018/10/20/how-to-optimize-the-cost-and-quality-of-your-project-as-a-client/
But this article is meant for clients, students or anyone who is interested in hiring someone to build a simulation model. What should your requirements document have? This is what we will write about on this article.
Purpose
The purpose is the most important thing that you need to define. This will identify the general features that need to be present, such as 3D animation, beautiful interface, integration with other platforms, level of detail, importance of dashboards, etc.
In general you want to answer the following questions:
- Why do you need to build a simulation model? What problem are you trying to solve? What is your research question?
- What outcome do you expect when the simulation model is ready?
- A design of a facility?
- A policy or strategy identified?
- An artificial intelligence entity?
- A tool for long-term use or for one-time strategic decision?
- What is the audience of this simulation?
- Is the model used to raise funds, or build trust with partners or directives?
- Is the model used by operators that will apply results on a regular basis?
- Is the model used to generate data that will be helpful to prove/disprove a point?
- Is the model used to optimize something? Scheduling? Automated Decision Making? Something else?
- Who are the stakeholders of this project, users of the simulation tool and people interested in its outcomes?
- Directors? Investors? Operators? Administrative Staff? Data Scientists? Someone else?
- Why do each one of these individuals care about this work?
- Why do you think this work is important?
The System
Whether you are building a manufacturing facility that has clear (or unclear) processes, a marketing strategy that understands individuals, or a high-level government strategy that understands the political landscape, we need to be clear on the complexity of the system in order to identify the efforts required to do it, and the technology that needs to be used.
So we need to know:
- If there is any layout of the system or shapefile of the area, or any physical representation of the system, send it with a the necessary explanation that allows us to understand it.
- We need to understand the system at least at a high level. For a manufacturing plant or a warehouse, this will be the process flow, if you have it, or a high level description of this process if you don’t have it. If it’s something else, any diagram, together with the explanation of that diagram at whatever level you can provide. If you have no idea about the system, then make it clear for us what you (or we) need to investigate, in which we need to go through an exploratory phase and we would quote for that.
- What is the technology used in the system? Be as explicit about it with the information you know.
- Material handling equipment
- Human Resources
- Robotics
- Any other system actor that we need to think about
Outcome and outputs
The outcomes and outputs of the system are part of the purpose of this project and are used to be able to tell the story after the simulation is done. So what we need to know here is:
- What are the most important Key Performance Indicators (KPIs) that you want to obtain?
- What kind of simulation is this? Do you want to investigate the current system, or you want to compare the current system with a future system with different scenarios? If this is the case, what are the scenarios you want to investigate?
- Who is going to be the audience to:
- validate that the model is actually a good representation of reality.
- visualize the results of the model, and how do you think it would be better to visualize it? We have a video for this on what you can obtain: https://noorjax.com/car-parking-demo-model/. It is possible to do something extremely professional, or something quick and dirty, depending on who is going to be using or looking at this.
Data
Data is not needed to get started with a simulation, and we can work on the data later since a simulation doesn’t really need data as long as we can use assumptions. Data is not important to make a quote. Nevertheless this has one exception. This exception is: do we need to clean your data? Do we need to work with your data in order to be able to use it? If that’s the case, give us all the necessary information in order to evaluate the amount of work required to do this.
Conclusion
This is a generic idea on what it’s used to get started with doing simulations work. In general the quote will be based on the ambiguity of the project. A project with little information is considered high risk, and high risk projects tend to be more expensive and take longer. A project with tons of detailed and good quality information tend to be cheaper and are developed faster. You can see more about this on our article How to optimize the cost and quality of your project