how to build a system to manage varying/multiple step process using php and mysql

td234
td234 used Ask the Experts™
on
Hi,

I am about to start building a module to manage client services. Based on what the client purchased, those steps can vary. For example,

Product A
- get code from client
- send code to vendor
- get serial number from vendor
- send serial number to client

Product B
- get a list of names from client
- send names to engraver
- get product back from engraver
- send product to client

There could be as many as 15-20 steps in the process depending upon the product purchased.

What I am trying to figure out is the best way to manage the process using mysql and PHP. So, far what I am thinking is creating a table (customer_service_process) with all the many possible steps for all products. Then for each product I could have a field for the steps necessary for that specific product. Then I could pull the 'customer_service_process' record for the client and see which steps were necessary for their product and step through the process. This would work, but seems a little inefficient site I could have many unnecessary fields for each client. Also not a great idea if a new product is added and a new step in the process is required.

Any experts with experience building something like this? Any suggestions on how best to manage this?

Thanks in advance for your time in giving me some input on this project.
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Most Valuable Expert 2011
Top Expert 2016

Commented:
You don't have to build this yourself.  Have a look at SalesForce.com.  There are competitors, to be sure, but CRM totally owns this space.

Author

Commented:
Thanks Ray, but this it part of a massive backend system so it does have to be built. The examples I gave are actually over simplified versions of my real application for illustration purposes.
Most Valuable Expert 2011
Top Expert 2016

Commented:
I still think you want to look at SalesForce.com.  They have a robust ecosystem of developers (literally thousands of professionals who already do exactly the sort of thing you're trying to do).  They address specific program requirements every day, from Red Cross emergency deployment, to Aldo Shoes, to Toyota, to Amazon AWS .  They have a cloud platform with APIs and hooks that make their platform very malleable.  They have a free Eclipse IDE.  They have great "getting started" resources, developer events, webinars, app-exchanges, it's all built and waiting for you.
https://developer.salesforce.com/
https://developer.salesforce.com/gettingstarted

If you move quickly you can attend their dev conference.  It's not very expensive and it will give you an opportunity to network with others who have a depth of experience in this kind of process management.
https://developer.salesforce.com/trailheadx

Author

Commented:
Ray. Sorry if I wasn't clear. I am looking to build a new module for our backend system. Not start from scratch with a new backend system. I was actually looking for database design/schema help and suggestions. I am seeking help from someone who has designed something like this.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial