Search code examples
.nete-commerce

Are eCommerce platforms worth it for large scale systems?


My company and I are building a new system for a relatively large client. We are going to be replacing their entire system, which includes some eCommerce aspects to it among many other things. It is not a typical public shopping site, and there are many things about the system (both back end and front end) that are quite different.

Some of the people I work for are convinced that we should be using a third party product to implement the eCommerce pieces (shopping cart, catalog management). Their opinion is that it is a solved problem, and we shouldn't have to reinvent it. Given that direction, I have reviewed around ten different .NET based eCommerce platforms, and I struggle to imagine how we will be able to smoothly integrate any of them without a lot of friction. They are so all-encompassing that I feel like they are probably better suited for implementing simple shopping sites rather than larger systems that happen to have some eCommerce aspects to them.

We have a really nice architecture planned for everything else (Entity Framework, ASP.NET MVC, etc.), and my gut is telling me that trying to introduce a third party platform will cause unnecessary fragmentation and difficulty.

I would love to hear some opinions from people who have been there. Have you used a third party platform for eCommerce? Was it a typical shopping site or something different? Did you feel it was a help or a hinderance? Thanks.


Solution

  • You aren't reinventing the wheel if you require yours to be square. This is why I curse the day I used Drupal as the basis for a project. The scope outgrew it then it ended up being a curse. If you can smell disease already, why continue thinking about it?

    You could pull apart an existing one, but what would you be left with? Could you implement that yourself without much fuss? Also, what are the licensing restrictions? Would you have to redistribute your derivative work.

    Common sense really, just because it is software doesn't alter the logical approach to reuse.

    Go make your square wheel. You might learn some things/create a more abstract developer-orientated API for eCommerce that other developers can use as a library rather than a platform to avoid the problems you encountered implementing the "me too" stuff.

    If you do, open source it. I'd use it if it had an independent database schema and API for catalogue and stock management; But I recon for anything outside the norm, the business logic you need varies to much to use an existing platform.

    But, isn't that why your project is so unique and awesome?

    "not reinventing the wheel" seems to be one of those things that is overused. Like Helvetica. It makes sense, but not for everything ever.