Meta: PDM for development

From DIY contraptions to sophisticated FreeEMS-specific designs! Plus general hardware development!
Post Reply
User avatar
KW1252
LQFP112 - Up with the play
Posts: 166
Joined: Tue Jan 15, 2008 5:31 pm

Meta: PDM for development

Post by KW1252 »

Hello again!

I'm still figuring out how to arrange my GIT account so it makes sense, but while at it, the idea about forking a hardware of my own began to grow.

However, there's quite a lot of components and managing such a number concerning suppliers, manufacturers and whatnot is not very fun part of the process. So, I started thinking if a PDM (Product data management) would be feasible here. Those having worked with corporate PDM systems might have their hair standing on their end thinking about implementing a PDM to a hobby, but I do think it deserves further thought. It's just a database with a specific name, and a little else. MySQL might be ideal for this sort of project, but since I've got NO experience on Müesli and some on OpenOffice Base, I'm going with OO. It's not going to be industrial size anyway. With those systems, *everything* is catalogued, if it's a tiny washer or a huge vat of washing agent, and that's not the only thing making them cumbersome and heavy. A small database for electronic components should be easy and quick to manage.

As the name suggests, it's a system to keep track of the product data. It's not a version control scheme like GIT nor a general part repository, but a way to keep track of the components used in the design. The idea to have a list to quickly check which components you've used, so you don't accidentally pick another similar components. It could also do BOM reports with different supplier numbers, cost calculations and so forth. It could show all the components used is a project, filter by supplier, manufacturer, component function or whatever. It could also show in which projects the selected component is used. If a component is flagged for EoL schedule, it could pop a warning on which projects to redesign.

What I'm going to do first is to create tables of hardware designs, components, suppliers, manufacturers and prices. At first I'd just need to set up the tables and relations so everything works okay, and worry about the polished user interface later.

Here's a quick sketch of the tables and relations I figured out first:

DESIGN table consists of:
  • Internal ID number
  • a project name
  • Parts used (many-to-many relation to part ID's)
  • GIT info, file locations etc
  • Project description
PARTS table consists of:
  • internal ID
  • Part name (resistor, IGBT, and so on)
  • Detailed description, e.g. precision resistor
  • Part schematic annotation ID prefix
  • Value (ohms, henrys, farads etc)/IC code
  • Rating (watts, amps, volts etc)
  • Tolerance
  • Supplier (Linked many-to-many on supplier IDs)
  • package
  • Data sheet/other document
  • EoL flag
These could be used for manufacturer specific parts, e.g. very appropriate for MC9S12, much less for 74HC00:
  • Manufacturer part code
  • manufacturer (linked many-to-one to manufacturer ID)
MANUFACTURER table consists of:
  • Internal ID
  • Business name
  • Contact information
SUPPLIER table consist of:
  • internal ID
  • Business name
  • Contact information
PRICE table consist of:
  • Internal ID
  • Part name (linked to part ID)
  • Supplier name/ID
  • (Manufacturer part code)
  • supplier part code
  • price threshold
  • price per unit
Obviously, manufacturer could also be the supplier for wholesale purposes.

How to link that last one is still a bit cloudy but I think I'll figure it out soon enough.

Right now it would be very easy to get parts listing for each project with suppliers, projects list for each part, parts list by function (all resistors, etc)

Building a PDM from ground up is a HUGE project, but I'm hopeful about it. I'm quite sure it would help out hobbyist just as it would do a business. There's a huge number of improvement and features I would like, but first I'll be happy just to get useful basic functionality. A bridge to cvPCB would certainly be nice. And WAY over my skill level.
User avatar
jharvey
1N4001 - Signed up
Posts: 1607
Joined: Tue Jun 10, 2008 5:17 pm

Re: Meta: PDM for development

Post by jharvey »

Lots of options that might fit what you are looking for often called MRP, ERP, DLP, ect. I once looked into this years ago, with a focus from as a small company that was starting out and wanted something that wouldn't limit the options to early, but wouldn't require a huge upfront investment to make it functional in an agile environment. I ended choosing (and haven't yet used) compiere

http://www.compiere.com/

It's open source, and large enough that you should be able to hire a local person to stop by and service it, however its also low cost and agile if you don't have $ to spend.
User avatar
KW1252
LQFP112 - Up with the play
Posts: 166
Joined: Tue Jan 15, 2008 5:31 pm

Re: Meta: PDM for development

Post by KW1252 »

I should check out Compiere... though, PDM is still mainly an engineering tool, where enterprise resource planning is more of a business management. But it's free and if the product management part works out good, the business planning part is a big plus for those growing the hobby into a business :) I've seen some all-included corporate management packages and wasn't too impressed; cumbersome, inflexible and with a lot of unrelated stuff to manage.
Post Reply