앞 글은 산업 설비였다. 이 글은 온실이다.
같은 구조인데 현장이 요구하는 것이 다르다. 여기서 가장 자주 일어나는 일은 장비가 바뀌는 것이다.
이 현장의 특징
온실의 센서와 밸브는 소모품에 가깝다. 습기와 온도 차이 속에서 몇 해를 못 버티고, 갈 때가 되면 같은 모델이 이미 단종돼 있다. 다른 회사 것으로 간다.
그때마다 무엇이 일어났나. 제어 코드를 고쳤다. 새 센서는 값의 범위가 다르고, 단위가 다르고, 응답 형식이 다르다. 그것을 아는 코드가 어딘가에 있으니 그 코드를 고친다.
농가가 직접 고칠 수 있는 일이 아니다. 그래서 설비 회사를 부르고, 그동안 그 라인은 수동으로 돈다.

무엇이 그 일을 없애나
이 매거진에 그 샘플이 있다. 온실 노드가 자기를 선언하는 형식은 여섯 칸이다 — 식별자, 역할, 종류, 모델명, 단위, 값.
핵심은 규칙이 모델명이 아니라 종류로 말한다는 것이다. "이 모델의 값이 30을 넘으면"이 아니라 "온도 종류의 노드가 30을 넘으면"이다.
그러면 센서를 갈아도 규칙이 그대로다. 새 노드가 자기를 "온도 종류"라고 선언하는 한, 규칙은 그것을 이미 알고 있다. 단위 환산이 필요하면 그것도 선언에 있다.
샘플의 검증은 이걸 이렇게 확인한다. 설치 목록을 통째로 다른 벌로 바꿔서 같은 서버를 두 번 돌린다. 인자만 바꾼다. 제어 코드는 한 줄도 안 바뀌고, 두 설치 다 규칙 안으로 들어온다.