utat-ss / architect

Systems engineering tool built by the University of Toronto Aerospace Team
The Unlicense
8 stars 1 forks source link

Reassess parametric design architecture for artifact attributes and functions #89

Open DM1122 opened 2 years ago

DM1122 commented 2 years ago

Should a system be accessing the attributes of a component, and if that component does not have a value for that attribute, can it call a function to get that value?

Consider also the case the component has value, is its ability to recompute the attribute removed? What about conflicting values? I.e. a component is defined with attributes, but the function to compute a particular attribute returns a different value than the one that is defined. How to handle?

Or should every attribute that a system wants to extract from a component/subsystem be accessed with a "get_attribute()"?

How about placing a "if self.attribute exists, return the attribute" instead of computing the value? Or on init: self.attribute = attribute if it exists or else self.get_attribute

Some driving design factors