I like the BDD principles and was investigating it's potential application combined with TestComplete.
Read this, this, this and this article on it.
Personally I have come to the conclusion that BDD has definitely potential but the frameworks currently investigated (Lettuce, Cucumber) require way to much fragile configuration (settings project folders name, test names, etc, etc) to be able to use this effectively in Contiuous Delivery / Continuous Integration alike approaches. In practise you end up maintaining the configuration files, editing connection / integration scripts to keep 'alive' the integration between Cucumber/Lettuce and TestComplete.
Therefore, I would go for a BDD framework within TestComplete (or another product from SmartBear) which can guaranty integrity of BDD features/specifications/test-steps on the one hand, and the actual tests/validations (wheter these are scripts or Keyword tests) on the other hand.
I would like to see this implemented in either TestComplete itself (sort of like currently Manual Testing (and the conversion to automated tests) is supported (but this is going to be depreciated unfortunately but that's another subject), or in a seperate tool which would then be required to be very well integrated with TC (such as like sharing variables, parameters, etc).
When supported in TestComplete itself it could be placed in "advanced node" in a project, for example. And this module would be able to read (import) .feature files like the GIVEN/WHEN/THEN , Gherkin language support. After importing the test/QA engineer would do his/her work to 'knot' the features and the tests together in the framework.
By keeping this all in one tool would prevent ending up in constantly updating settings like updating configuration files, (re)define directories if projects are moved, etc. That's exactly what's NOT needed in CI/CD environments.