Especially on large enterprise projects, it can be difficult for any one developer to keep track of all the
features (classes, methods, etc.) of the system.

Simian runs natively in any .NET 1.1 or higher supported environment and on any Java 5 or higher virtual
machine, meaning Simian can be run on just about any hardware and any operating system you can hope for. Both
the Java and .NET runtimes are included as part of the distribution.

Simian can be used as part of the build process during development or as a guide when re-factoring. Think of
Simian as an independent pair of eyes that will assist in raising the quality of your software.

Within minutes, Simian can save you literally thousands of dollars in time spent performing maintenence,
debugging and re-factoring.

With licensing available to suite personal, project and enterprise use, simian
is ideally suited for use on your project.

Why do I need Simian?

Imagine for example that a bug is discovered in a method somewhere in a project. The developer duly writes a
test case, makes the necessary code changes, ensures the test passes, checks the code in and considers the job
finished!

Right?

Wrong!

Unknown to the developer, some weeks earlier, a fellow team mate discovered the same piece of code and
realised that it did almost everything they needed to solve a problem thye were working on at the time.
So they copied the 15 lines of code into their new method, added some more code to do the extra functionality
required and checked in the changes.

Of course what they didn't know at the time was that the code they were copying had a bug in it! In fact at
the time no one knew this. So now the original bug has been fixed but unfortunately none of the copies were
fixed because no one knew they even existed.

Copying and pasting isn't the only way for this to occur. Duplicate code can also creep into through
developers independently implementing similar features.

Simian catches these and other instances of duplication and can be configured to either flag them as
warnings or even "break the build", ensuring that copy and pasting never again causes you or your
project problems.

Performance

Running against a large source base such as the entire 2,402,974 LOC in 7,714 files of the JDK 9 source,
identified 141,070 duplicate LOC in 2,406 files in less than 5 seconds**!