This is a follow-up to this question from almost three years ago.
Scrum... probably isn't the best choice for my team for a number of reasons.
From a very high level, my team's work can be separated into three broad categories: Construct, Inspect, Analyze. A given work request/project may involve one, two, or all three of these categories. Usually, if more than one category is involved, the work proceeds in that order (Construct, then Inspect, then Analyze). That being said, rarely is it the case that a given product will finish up the work in one category (Construct, for example) and move on to the next category (Inspect, for example) and never return. In other words, a given product may go Construct > Inspect > Construct > Inspect > Analyze > Inspect > Analyze > Construct, etc.
For a given work request, my team usually knows the things that they need to do to complete the work request and deliver the deliverables, but how many times and how long each individual task takes to complete is often a complete mystery. It's like... the processes are more or less the same, but we almost never perform them in the same order or the same number of times from project to project.
I feel like Waterfall isn't a good choice because, while what needs to be done for a project may be fairly straightforward, knowing when a given "phase" will be done is somewhat nebulous. Scrum doesn't seem to make sense because what is wanted is fairly well-known at the beginning of the project. I recently read about Crystal, which seems interesting, but it's also heavily geared toward software development, which our team does not do.