Data & Software

Engineering concept

Bill of Materials Revision Explorer

A local software concept for comparing BOM revisions and explaining substitutions, quantity changes, and unresolved references.

PythonpandasSQLiteTypeScript

Project brief

This concept would provide a review tool for comparing two bills of materials without flattening every difference into an undifferentiated text diff. The data model would distinguish item identity, reference designators, quantities, manufacturer fields, and internal part numbers. A comparison engine would separate added parts, removed parts, quantity changes, and possible substitutions, leaving ambiguous matches for review. The interface would support filtering and export of an engineering change summary. Demonstration files would use invented example parts to avoid suggesting a real procurement history. Proposed deliverables include a normalized BOM schema, matching rules, and a review screen. The tool would identify differences, while technical interchangeability and sourcing decisions would remain explicit engineering judgments.

Design concept developed for this portfolio. The diagrams describe the proposed system; implementation and testing are part of the validation plan.

The engineering challenge

Make revision differences reviewable while avoiding false equivalence between similar-looking component descriptions.

Engineering approach

  1. Normalize identity and quantity fields without overwriting originals.
  2. Use conservative matching rules with an ambiguity state.
  3. Separate structural changes from descriptive edits.
  4. Generate an exportable change-review table.

Validation plan

  • Compare hand-labelled example revisions with tool classifications.
  • Verify duplicate identifiers remain visible.
  • Check that possible substitutions never become automatic equivalence claims.

Concept scope

  • Revision comparison
  • Reference-designator tracking
  • Ambiguous-match review
  • Quantity-change summary
  • Change-table export

Software & engineering tools

Python, pandas, SQLite, TypeScript, React