Skip to content
Dale Scott edited this page Sep 23, 2017 · 29 revisions

This page documents key aspects of Maestro's design.

Table of Contents

First Order Data

  • Issue - a defect, task or requirement.
  • Order - a demand specification for stock.
  • Part - a piece or segment of a design, identified with a Part Number. A part can also be called a Configuration Item.
  • Project - a temporary endeavor to achieve a specific goal.
  • Stock - the specific physical realization of a part, identified with a Serial Number or Lot Number (Serial Number if a stock item is uniquely identified, Lot Number if a group of stock items is collectively identified).
  • User - a person who interacts with Maestro (with associated role-based authorizations).

Yii Extensions

Maestro incorporates the following Yii Extensions.

ECSVExport

Maestro uses ECSVExport to save grid data in CSV format. ECSVExport uses a BSD 2-Clause license.

Yii-PDF

Maestro uses Yii-PDF with underlying HTML2PDF (repo) and TCPDF to save PDF documents.

Yii-PDF (with HTML2PDF) was chosen over wkhtmltopdf and mpdf because:

  • it is self-contained and can be included in Maestro, while wkhtmltopdf must be installed separately on the server.
  • it uses a business-friendly license. Yii-PDF uses the BSD 2-Clause license (with HTML2PDF and TCPDF using the manageable LGPL), while mpdf uses the GPL.

rbacui

Maestro uses rbacUI to provide the user interface for Maestro's RBAC (Role Based Access Control) system. rbacui uses a BSD 2-Clause license.