본문 바로가기

블로그

LG CNS 기술블로그 DX Lounge에서 최신 IT 소식을 만나보세요!

CNS Tech

‘나’와 다른 ‘너’와의 상호 작용을 위한 IT의 역할 (3편) – 보다 편리한 인터페이스를 위하여 –

2015.01.16

지난 시간에는 단순한 인터페이스 속에 숨겨진 복잡성, 그리고 최근 인터페이스의 동향에 대해 함께 정리해 보았습니다. 오늘은 보다 단순하고 편리한 인터페이스 개발에 적용되는 원리에 대해 생각해 보겠습니다.

●’나’와 다른 ‘너’와의 상호 작용을 위한 IT의 역할 (1편) : http://blog.lgcns.com/674

●’나’와 다른 ‘너’와의 상호 작용을 위한 IT의 역할 (2편) : http://blog.lgcns.com/676

보다 단순하고 편리한 인터페이스를 위하여!

2, 3차 산업 혁명 시, 제품의 생산성 향상 및 효율화를 위해 컨베이어 벨트를 도입했던 ‘포드(Ford)’, 그리고 그 후, ‘토요타(TOYOTA)’의 생산 시스템(TPS)의 모체가 되었던 4S(Standardization – Simplification – Specialization – Synchronization) 운동은 물리적 제품 생산에 쓰여진 것입니다. 그러나 이 개념은 가상의 소프트웨어 인터페이스 개발에서도 적용될 수 있을 것 같습니다. 입증된 객체 지향의 디자인 원리들을 사용하면, 유지 보수가 조금 더 쉽고, 유연하며, 확장이 쉬운 소프트웨어를 만들 수 있기 때문이죠. 이 원리들은 그 크기를 대비해 봤을 때, 패턴보다 훨씬 작지만 표준화 작업에서부터 아키텍처 설계에 이르기까지 다양하게 적용되는 원칙입니다.

1) 표준화(Standardization)

표준화는 2개 이상의 다른 개체나 시스템 간에 정보 교환 또는 그 정보를 사용할 수 있도록 아키텍쳐, 기능, 메시지 형식, 운영 방법론 등에 대한 상호 호환 운용성(Interoperability)을 보장하기 위한 노력이라 할 수 있습니다. 몇 년 전, 저는 ERP 시스템에서 쿼리로 받아온 트랜잭션들에서 공장 컨트롤러에서 필요한 정보를 찾을 때, 둘 사이의 상이한 메시지 포맷 때문에 어떤 것이 원하는 것인지 찾기 힘들었던 적이 있었는데요. 애플처럼 다소 폐쇄적인 정책으로 모든 기기의 애플화를 유도화하는 식의 표준화도 있지만, 대다수 일반적인 경우는 기업별로 산업별로 표준과 형식이 다릅니다. 그래서 객체 지향 언어처럼 중립적이고 공적으로 존재하면서, 누구나 접근할 수 있는 형태를 지녀야 한다고 생각합니다.

<사물인터넷 하의 수많은 기술 규격들과 표준화를 위한 컨소시엄들>

왼쪽 그림에서와 같이 특히 사물인터넷 하에서는 더 많은 수의 개체들이 연결되고, 수 많은 기술 규격들이 그 연결을 위해 사용되며, 조직 간/산업 간 통신들이 더욱 활발히 일어날 텐데요. 따라서 원활한 운영과 혼란을 막기 위해서는 표준화된 규격을 정하는 일이 무척이나 중요합니다. 하지만 업계 우위를 선점하기 위해, 이 표준화 작업도 경쟁 구도에 접어들고 있는 듯 합니다.

현재, 오른쪽 그림에서처럼, 몇몇의 컨소시엄들(인텔 등이 주도하는 Open Interconnect Consortium, LG, 퀄컴이 주도하는 All Seen Alliance, 그 밖에 학계가 중심이 된 IEEE, 국제 공공 기관들의 모임)과 구글, 애플이 자체적으로 표준화에 노력 중인데요. 국내에서도 최근 전자부품연구원(KETI)의 주도로 LG를 포함한 50여 개 업체가 참여한 국제 표준기반 사물인터넷(IoT) 오픈소스 연합체인 ‘오션(OCEAN;Open allianCE for iot stANdard)’이 발족한 상태입니다. 그러나, 그 방향이 몇몇 기업 자체를 위한 것이거나 특정 산업군을 위한 표준화 머물게 된다면, 표준화 속의 표준화가 또 이루어져야 할지도 모르겠습니다. 그래서 공통적으로 추진하고 있는 표준화의 방법은 다음과 같습니다.

● 표준화 방법

  1. 일종의 메타 Resource oriented 인포메이션 모델을 생성해서 관리하는 방법입니다. 앞서 이야기 했던 개체들의 추상화와 분류를 통해 정형화 모델을 개발하고, 플랫폼이나 OS 등에 상관없는 코드 발생기 같은 것을 통해 인터페이스들을 개발하는 것입니다. LG CNS 에서 제공하는 Model Driven Development 같은 것이 대표적인 방법이라고 할 수 있습니다.
  2. 서버와 별개의 플랫폼을 운영 및 관리하고, RESTful(Representational state transfer)에 기반한 공개 API 집합을 축적하여, 이들 API를 통해 개발을 지원하는 방향이 될 것으로 보입니다.

공급 사슬 도메인에서는 ‘SCOR(Supply Chain Operation Reference Model)’이라는 표준이, Supply Chain Council이라는 강력한 표준화 기구가 나서서 각종 프로세스, 프로세스별 입출력 관계, 핵심 성능지수(KPI), 그리고 모범 경영 들을 소개하고 있습니다. 이와 비슷하거나 더 강력한 기구가 표준을 만들 때 까지는 조금 더 시간이 필요할 것 같다는 생각이 듭니다. 따라서 완전한 표준이 생길 때까지의 인터페이스 역할은 더욱 중요할 것 같은데요. 어느 한 개체의 데이터를 다른 개체들이 이해하기 쉬운 정형화된 데이터로 만들어 주는 번역, 변형 API 등을 추가하는 것입니다.

2) 단순화(Simplification) 및 모듈화(modularization)

효율적인 인터페이스 개발을 위해서는 두 가지 측면에서 단순화가 필요할 것으로 보입니다. 첫째, 앞서 1편에서의 공항체크인의 예처럼, 개발 과정에서도 불필요한 프로세스 등을 줄여 간결한 설계 및 중복을 피하는 것인데요. 이를 위해서는 대상에 대한 정확한 분류가 필요합니다. 대상이 기계인지, 전문가인지, 일반 소비자인지, 응용 프로그램인지부터 판단하고, 모델이 되는 시스템과 개체들의 관계 유형을 쪼개서 부분적인 모듈로 개발을 할 필요가 있습니다.

그 밖에 기존에 이미 존재하는 개발 플랫폼이나 아키텍쳐(앞서 소개한 ESB와 같은)를 적극 활용하는 방법이 있는데요. 제공되는 기능을 이용/응용함으로써 개발의 무게를 줄이고 사용자로 하여금 혼란을 피하게끔 할 필요가 있습니다. 또한 객체 지향 등의 언어는 사람이 쓰는 자연어와 같은 문법을 쓰기 때문에 고수준 언어로 분류되지만, 아래 오른쪽 그림에서처럼 보다 고수준의 UML(Unified Modeling Language), SysML, SoAML 등의 메타 모델들을 사용하는 것도 하나의 방법이 될 수 있습니다.

  <SysML의 Model-based Diagrams와 모듈을 이용한 Customization (출처: http://abapsharebyreza.blogspot.kr/)>

그리고 부분적으로 만들어진 것들을 API 등으로 저장해서 다시 이용될 수 있도록 하는 모듈화가 필요한데요. 앨빈토플러가 제 3의 물결에서 처음 제시한 대량 맞춤화(Mass Customization)의 핵심 또한 바로 모듈화에 있었습니다. 이를 통해, 각기 다른 개체를 유형별로 분류하고, 이 모듈을 적절히 조합해서 새로운 것을 만들거나 확장하는 것이 가능해질 것입니다. 오른쪽 그림에서처럼 레고 블럭을 이용하여 플러그-앤-플레이 식으로 새로운 것을 만들어 내는 방법과 흡사할 것으로 보입니다.

3) 해석, 그리고 분석과 예측(Analytics and Anticipatory Computing)

다른 항목들이 설계 및 디자인의 측면이라고 한다면, 이 부분은 인터페이스가 가져야 될 기능적인 면이라고 이야기할 수 있습니다. 축적된 데이터에 의한 효과적인 분석은 클라우드 컴퓨팅과 빅데이터의 개념을 기반으로 점점 더 현실화되어 가고 있는데요. 결국, 이는 확률에 대한 것들이라 할 수 있습니다.

특히 기업은 과거 기록이나 샘플링을 통해 대상 개체에 대한 유효한 패턴을 찾고, 보유 자원에 모니터링 데이터를 활용하여 설비 보수 계획을 세울 수 있습니다. 또한 고객 데이터를 분석하여 다양한 마케팅 전략에 활용할 수도 있습니다. 빅데이터를 이용한 분석 등은 아래의 포스팅된 글을 참고해 주세요.

● 미래 경영을 위한 빅데이터와 고급분석(Advanced Analytics): http://blog.lgcns.com/33

● 빅데이터에 대한 고민, 한방에 날려 드립니다!: http://blog.lgcns.com/303

<빅데이터(Big Data) 분석의 기본적인 절차 (출처: www.scoop.it, www.fitzgerald-analytics.com)>

위 그림은 빅데이터(Big Data) 분석의 기본적인 절차를 보여 주고 있는데요. 그 단계는 크게 ‘빅데이터의 수집 → 저장, 관리 → 처리, 분석 → 결과 가시화 및 모델링을 통한 의미 추출 → 서비스를 통한 액션 → 피드백을 통한 새로운 데이터 수집 및 업데이트’입니다.

4) 재사용 및 재조합(Reuse & Recombination)

한국의 경우는 말할 필요도 없고, 미국의 어떤 시골 마을이라도, 또 심지어 알프스 산골에도 중국 음식점이 한 두 개 정도는 있습니다. 물론 그들의 강한 생활력 때문일지도 모르죠. 그러나 단지 음식만으로 평가했을 때, 중국 음식점은 사업이 될 만한 이유가 분명 존재합니다. 한식, 일식, 프랑스 요리 등 상대적으로 손이 많이 가는 음식들과 비교하는 것은 무리가 있지만, 시장 자체가 다르고 저렴함과 간편함으로 인해 보다 대중적인 음식으로 자리매김한 느낌입니다.

성공 요인을 살펴보면, 우선 각 나라의 음식 문화와 취향을 정말 잘 맞춘 일종의 맞춤형 음식들을 선보이고 있습니다. 우리나라 중국집과 미국의 중국집이 맛도 메뉴도 다른 것을 보면 말이죠. 또한 미국의 중국집의 경우, 단순 정리된 재료들(채소류, 고기류 등), 소스들(매운 정도에 따라, 기본 베이스에 따라), 조리 방법(탕, 볶음 등)을 모듈화하여, 결국 메뉴판에 나온 수십 가지의 요리들은 그것들의 재조합으로 개인 맞춤형식으로 골라먹을 수 있게 됩니다. 결과적으로 이로 인한 리드 타임(Lead time) 단축을 통해, 마치 생명과도 같은 중국집의 ‘신속성’이 보장되는 것입니다. 결국, 대량 맞춤화(Mass Customization) 생산은 동네 중국집에서 이루어지고 있었던 것입니다.

이는 현재 다루고 있는 SW 인터페이스 개발과 관련지어 IT 업계에 시사하는 바가 크다고 보여지는데요. 사용자의 필요성과 요구를 찾아내거나 혹은 사용자가 직접 필요에 의해 재창조 할 수 있는 기반들이, 이미 제작된 수많은 모듈 혹은 Building Block, API 들의 재사용 또는 재조합으로 만들어질 수 있기 때문이죠. 물론 개발자의 노력은 어느 정도 필요할 것입니다. 그러나 콘텐츠의 사용자 창조와 마찬가지로 언젠가는 집에서 자신이 원하는 애플리케이션을 조립식 가구처럼 손쉽게 직접 만들고 있을 날도 오지 않을까 하는 생각을 해 봅니다.

질량을 가진 물리적 개체는 노화되기 마련인데요. 최고의 인터페이스는 인터페이스 자체가 없는 것, 아니 사용자로 하여금 없게끔 느끼게 만드는 것이라는 이야기에 동의합니다. 우리가 직관적이라고 이야기하는 것은 다수 혹은 개개인이 느끼는 익숙함일텐데요. 어떤 사용자든 특히 사람의 경우, 다른 개체를 대면할 때 ‘익숙해짐’이라는 부담이 존재합니다. 실체가 없는 정보(Information)처럼 자연스럽고, 생태계처럼 존재하지만 존재하지 않는 듯한 것이 진정한 의미의 자동화, 사물인터넷의 미래가 제시하는IT의 역할이자 이상적인 모습이라 생각해 봅니다.

나와 다른 어떤 대상을 객체지향적으로 바라볼 수 있는 친절하고 따뜻한 시선이 결국 기술의 중요한 방향성과 목적성, 정책일 것으로 보여집니다. 인간 스스로가 거대한 벽 속에 하나의 벽돌이 될 것인지, 자본주의의 붕괴로 까지 예측되는 사물인터넷의 미래가 사뭇 궁금해지는데요. 오늘 다룬 이야기는 주로 가상(Cyber)세계와 그 안의 접점에 대한 것들이었습니다.

다음 편에서는 좀 더 구체적으로 대표적인 물리 시스템인 제조산업에서의 인터페이스의 역할 및 제조산업의 사이버 시스템과의 관계 측면에서의 동향, 전망 등에 대해서 알아보도록 하겠습니다.

l 글 이승엽 연구원

현재 Pennsylvania State University 박사과정 후 연구원으로 활동하고 있다. 연세대학교 산업시스템공학과에서 학사를 마쳤으며, 미국 Pennsylvania State University에서 산업공학 석사/박사를 취득하였다. Manufacturing system control, supply chain system modeling, 등의 분야에서 다양한 프로젝트 경험을 가지고 있다. 주요 연구 관심 분야는 Formal model based hybrid SoS engineering, 다양한 Simulation based methodology (agent, discrete event, system dynamics), manufacturing and supply chain systems, IT-based industry convergence, 그리고 Cyber-Physical System 등이 있다.

챗봇과 대화를 할 수 있어요