개발이든 수정이든 마찬가지입니다. SI는 엄청난 속도로 페이지를 만들어 냅니다. 소위 찍어낸다고 표현합니다.
이게 가능한 이유는 프로그램 구조가 획일화되어있고 익숙해지면 로직을 생각할 필요가 없는 단순한 구조가 많기 때문입니다.
C(reate) U(pdate) D(elete)의 경우에는 특별한 구조가 아니면 테이블 하나만을 대상으로 하므로 복잡할 것이 없습니다.
저는 작은 프로그램을 만들어서 반자동으로 만들어 내기도 합니다. 일종의 파이프라인을 만들어내는 겁니다.
전자정부 프레임워크에는 심지어 자동 생성 프로그램도 내장되어 있습니다. 누가 쓰는지는 잘 모르겠지만요.
R(ead)의 경우에는 조금 복잡할 수도 있는데, 이것도 익숙해지면 기계적으로 만들 수 있습니다. 복잡도가 굉장한 것이 아니라면요.
속도는 비용과 직결되는 SI 구조라서 모두 다 빠른 것을 좋아합니다. 프로젝트의 3요소가 속도, 비용, 분량이라고 한다면 SI는 이 세 가지를 다 이루어 냅니다.
하지만 여기서 빠진 것이 있습니다. 바로 기술적 부채입니다.
기술적 부채는 당장 문제는 해결했지만 이를 위해 코드가 복잡해지고 중복이 많이 발생하며 여러 코드 간에 같은 논리가 적용되지 않게 되는 현상을 말합니다.
기술적 부채는 어떤 개발 환경에서도 발생하며, 이를 개선하기 위해 끊임없는 코드 개선 - 리팩토링이 필요합니다. 하지만 SI에서는 리팩토링이라는 단어를 들어본 적도 없는 사람도 많습니다.
SI 하시는 분들이 자조적으로 하는 말이 있습니다. 난 내가 만든 프로그램 안 써. 불안해. 이것은 품질을 희생한 결과입니다. 음식점의 주방을 보면 음식점 음식을 못 먹는다는 말과 일맥상통합니다.