Engineering Principles

My personal engineering principles: (I'm jotting this down and will expand upon this in further detail at a future point in time). The following engineering principles apply to both BridgeBuilding? and SoftwareDevelopment and the following ProfessionalPrinciples? are the key difference between a SoftwareEngineer and a SoftwareProgrammer.

-TimTwelves


Testability - It is designed to have a repeatable test that can be performed to ensure that it is as expected. With bridge building, you could test the concerete, the steel, expansion and contraction in hot weather, etc.

Maintainability - It is designed to last. A bridge should last twenty years with a designed way to maintain the bridge or safely widen the bridge if so desired.

Integrity - It is designed to have structural integrity. A bridge will not just break in half. In memory state must not just become corrupt.

External integration - It is designed to have a particular well defined way to integrate with its environment without any confusion. A bridge takes cars. There is a sign that says the maximum tonnage and height of the bridge - no confusion.

Ethics - Act primarily in the best interests of (a) the above principles, (b) the users, and (c) the client. If the bridge is going to break and kill people, you cannot sign off on the construction.

Management - An engineer is proactively involved in the management of various responsibilities because the ultimate responsibility rests on the engineer. An engineer does not sit on the side listening to builders about bridge building. An engineer is actively involved in listening to builders and will let them do their speciality but is proactive in coordinating the various specialists towards the ultimate goal. Bridge building is typically managed by civil engineers - there are concrete and steel specialists but they are typically coordinated at a design level by the engineer, not by business.


Do not confuse engineering with architecture. An architect may design something without regard to engineering. It becomes the engineers job to build it according to engineering principles. In the context of software development, you could argue that the SoftwareDevelopmentLifeCycle is part of the responsibility of the management princple of a software engineer but it is certainly not the entire role of the engineer's management responsibility.

-TimTwelves


I'm not sure about the title is right for these points, these seem to me to be a subset of the ScientificMethod. I consider Engineering to be the application of the scientific method, so to me Engineering Principles would be the scientific theories that underpin the engineering field in question. -- MartinSpamer.

CategoryEngineering


EditText of this page (last edited July 22, 2013) or FindPage with title or text search