본문 바로가기

관심기사 이야기

X인터넷의 실제 구현방법

X인터넷에서 Extended Internet의 구현은 ‘솔루션 벤더의 몫’

우선 이번 호를 시작하기 전에 예정되어 있던 연재 목차의 순서가 내부 사정으로 인하여 변경되었음을 말씀드리고 이에 대한 양해를 구하는 바이다. X인터넷 개발방법은 제품에 따라 다소 차이가 있으나 현재 시장을 확장해 나가고 있는 X인터넷 제품은 오늘 소개할 구현 방법과 유사하다. 이번 호에서는 X인터넷 구현방법에 대하여 자사 X인터넷 제품인 마이플랫폼(MiPlatform)을 중심으로 설명하고자 한다. 본지 특성상 구현 소스 차원의 상세한 설명은 생략하고 개념 중심으로 설명을 풀어가고자 하나 엔지니어가 아닌 일반 독자가 이해하기에는 어려울 듯하다.

X인터넷으로 무엇을 만들어야 하는가?

X인터넷을 이미 접해보신 분들은 아시겠지만, 그렇지 않은 독자들은 X인터넷으로 뭔가를 구현하고자 할 때 무엇부터 시작하면 좋을지 당장은 막막한 생각이 들게 될 것이다.

X인터넷으로 만들고자 하는 것은 무엇일까? 결론부터 말하자면, ‘C/S(Client/ Server) 개발툴로 만든 것 같은 화면 XML File’ 즉, 프레젠테이션 유저 인터페이스(Presentation User Interface)이다.

X인터넷을 제외하고 현재 화면을 만들 수 있는 방법에는 대표적으로 C/S (파워빌더, 델파이 등)와 HTML(웹 화면) 및 자바 애플리케이션 등이 있다. 여기서 잠깐 기존의 방법들에 대해 살펴보자.

C/S의 경우 최종결과물은 ‘컴파일된 화면 Dll 파일’이다. Dll 파일은 서버에 상주한다고 해서 사용자 PC에서 동작되지 않는다. 즉, 사용자 PC에 설치되어 있어야 하는 것이다. 이는 자바 애플리케이션도 동일하다. 자바로 만든 화면 Class File은 사용자 PC에 설치되어 있어야 사용자가 볼 수 있다. 자바의 경우 C/S와 다른 점은 자바 버추얼 머신이 반드시 설치되어 있어야 한다는 점이 다르다.

반면, HTML의 경우 최종 결과물은 ‘화면 HTML File’이다. HTML 파일은 Interpreting 방식으로 처리되므로 사용자 PC에 설치될 필요가 없다. C/S에 비하여 기능이 떨어지는 HTML 파일(웹 화면)이 왜 폭발적으로 애용되게 되었을까? 필자의 견해로는 웹 브라우저외에는 PC에 설치하지 않아도 되는 것이 가장 큰 이유라고 생각된다. 수많은 웹 콘텐츠를 PC에 설치하고 봐야 한다면 이토록 많은 사람들이 웹을 선호하지 않았을 것이다.

그렇다면 X인터넷은 왜 ‘C/S로 만든 것 같은 화면 XML 파일’이 최종 결과물일까? 현재 많은 기업체들이 사내에서 사용하는 화면의 경우 기능과 속도 등의 이유로 C/S를 아직도 선호하고 있는 것으로 알고 있다. 설령 웹 기반의 시스템을 구축하였더라도 이미 많은 ActiveX, 자바 애플릿 등으로 C/S와 같은 유저 인터페이스를 구현하고 있다.

그러나, 사외용 고객 서비스 화면의 경우는 C/S로 만들지 않는다. 사용자에게 그 많은 화면(EXE, DLL)을 설치하라고 하면 거의 대부분이 중도에 설치를 포기하기 때문일 것이다. 즉, 많은 기업체들이 사내용, 사외용 이중으로 화면을 개발하고 있는 것이 현재 실정이다. 이는 업무의 차이보다는 개발방법 혹은 개발환경이 틀려 개발자에게 두 가지 시스템을 개발하고 관리하는 부담이 되고 있다.

필자를 포함한 많은 사람들은 이중화면 개발에 대한 부담을 떨쳐 버리고, 기능이나 속도는 C/S 같되 배포는 하지 않을 수 있는 화면을 만들고 싶어한다. 이를 충족할 수 있는 방법은 현재까지는 X인터넷을 제외하고는 없다.

바로 이 X인터넷의 화면이 ‘C/S로 만든 것 같은 화면 XML 파일’이다. 그런데 여기서 많은 분들이 필자에게 이런 질문을 한다. “다 좋은데 왜 HTML이 아니라 XML인가? XML로 하게 되면 기존의 HTML을 못쓴다는 문제가 생기게 되는데...?” 안타깝게도 HTML은 스펙 자체가 C/S 화면을 구현할 수 있을 만큼 다양한 기능을 지원하지 않는다. 때문에 현 스펙의 HTML을 수용하는 순간 C/S 기능을 화면에 구현하기가 힘들어지기 때문이다. 몇몇 HTML 기반의 X인터넷 개발툴이 얼마나 개발자를 고생시키고 있는지 알고 있다. 그리고 웹 서비스의 표준을 기억하는가? XML, SOAP, UDDI, WSDL... 또한 전호에 밝혔듯이 X인터넷은 웹이 아니다.

그리고 필자는 계속 화면과 프레젠테이션 계층 이야기를 계속하였다. 애플리케이션을 구현하기 위해서는 통상 논리적으로 3계층 구조를 가진다. Database Layer, Business Logic Layer, Presentation Layer가 그것인데, 대개의 X인터넷은 이중 Presentation Layer를 중점적으로 담당한다.

Business Logic 부문은 현재의 구조 및 자원을 거의 그대로 쓴다. 그래서 서버 독립적이란 용어를 쓰거나 레가시 시스템을 재활용한다고 기술하고 있다. X인터넷은 JSP, ASP, PHP, EJB 등의 다양한 Business Logic을 모두 연계, 지원하고 있으며 서버의 데이터를 PC에 가져오기 위해서 X인터넷 제품마다 각 제품이 이해할 수 있는 데이터 포맷으로 reformatting 하는 기능의 API, 엔진 혹은 서버 모듈 등의 형태로 제공하여 서버에 탑재하도록 하고 있다. MiPlatform과 같은 X인터넷 제품은 특히 Multi-tier를 지원하여 서버 및 PC/PDA의 DB를 연동하고 Business Logic, Presentation Logic을 서버, 클라이언트에 분배, 배치하도록 지원할 수 있다

사용자는 어떤 순서로 화면을 보게 되는가?

X인터넷 구현 방법에 대해 이야기하기에 앞서 사용자가 X인터넷으로 구현된 화면을 보게 되는 시스템 절차에 대해 먼저 언급해야 할 것 같다. 이 순서를 알아야 구체적으로 어떤 것을 만들어야 할지 이해 될 것이다. 간단한 순서에 대해 언급하고 각 부분별로 상세한 설명하기로 한다.






출처 : DB포탈사이트 DBguide.net (http://www.dbguide.net/know/know101003.jsp?IDX=994&catenum=14)

제작년 말부터 조금씩 들려오던 X인터넷이 아직 뚜렷한 조짐이 안 보이는 것 같습니다.

X인터넷에 대한 자료를 수집해서 한번 볼려고 해도 좀 처럼 구하기 힘들고.....

솔직히 전 아직 X인터넷에 대한 뚜렷한 밑그림을 이해하지 못하고 있습니다.

단지 확실히 IT의 개발속도는 엄청나다는.... 아직 공부해야 할 것도 많고 알아봐야 할 것도 많고... 이렇게 빠르게 쏟아져 나오는 기술들을 접하다보면 우리가 한가지 빼먹고 있는 것이 있지 않은가 싶습니다.

그게 무엇일까요? 그건 바로 USER, 사용자라는 것입니다.

모든 기술은 인간, 사람, 유저, 사용자를 위한 것이라는 것이죠..