1. APM 정의와 필요성
상태바
1. APM 정의와 필요성
  • 승인 2005.10.27 00:00
  • 댓글 0
이 기사를 공유합니다

TechGu - APM
효율적인 애플리케이션 관리가 비즈니스 경쟁력
신시스템으로의 재구축 재검토 늘어 … 비용 효율적인 효과 기대

연·재·순·서

1. APM 정의와 필요성 (이번호)
2. 애플리케이션 매져를 통한 관리
3. 성공적인 APM 활용방안

김종수
솔루링크 상무
jskim@solulink.co.kr
애플리케이션 포트폴리오란 관련된 비용을 줄이기 위해 애플리케이션을 효과적으로 관리하는 것을 의미한다. 애플리케이션에 대한 현 상황을 정확하게 인지하고 애플리케이션이 생명주기상에 어디에 위치해 있는지, 즉, 애플리케이션 수명이 얼마나 남았으며 현 비지니스에 어느 정도의 가치를 제공하고 있는가를 기준으로 애플리케이션에 대한 잠재적 이득과 여기에 투자되는 비용에 대한 경제성 및 사업성 평가를 요구하고 있는 것이다.
우리나라의 경우 그 동안 기존 시스템을 버리고, 신 시스템으로 완전 재구축하는 프로젝트가 많았는데 이는 애플리케이션에 대한 재사용 또는 공학적 접근이 취약했던 것으로 볼 수 있다. 하지만 이제 신 시스템으로 완전 재구축하는 프로젝트가 유산되고 재검토되는 일이 많은 만큼, 애플리케이션 관리에 대한 새로운 접근과 노력이 절실할 때다. 현재 뜨거운 관심을 불러 일으키고 있는 애플리케이션 포트폴리오 관리에 대해 3회에 걸쳐 알아본다. <편집자>

현대 기업들은 급변하는 환경 속에서 이익을 증가시키기 위해 고객의 요구를 정확히 이해하고, 이를 바탕으로 더 좋은 서비스를 제공하는데 최선의 노력을 기울이는 반면, 이에 대한 비용을 줄이기 위해 여러 노력을 아끼지 않고 있다. IT부문에서도 예외 없이 이러한 노력을 요구하고 있으며, 이는 과거와 달리 IT 예산에 대한 집행이 더 이상 자유스럽지 않다는 것을 의미한다. 일부 경영진들은 그 동안 수없이 많은 돈을 IT에 투자했는데 이에 대한 결과가 무엇인가 하는 의구심을 가지고 있으며, 심지어는 그 동안의 투자가 하나의 거품이었다는 생각으로 IT에 대한 투자를 의심스러운 눈길을 보내는 곳도 있다.
IT 투자자에 대한 의구심은 IT가 비지니스의 목표나 전략의 관점 선상에서 고려되지 않고 중·장기 IT 투자에 대한 전략이 실질적으로 경영진이나 주주에게 제공되지 않았다는 것을 의미한다. 따라서 그 동안 비즈니스 지원 관점에서 소극적으로 다루어졌던 IT부문을 비지니스 관점으로 보아야 할 필요성이 제기됐고 이러한 움직임은 ITIL 및 6시그마와 함께 관심이 증가되고 있는 상황이다. 애플리케이션 관리의 필요성을 살펴보면 다음과 같다.

▶ IT 기술의 복잡성 증가
메인프레임 기반의 애플리케이션이 개방형시스템으로 전환되고 지난 10년간의 기술혁신이 진행되면서, 여러 언어로 모듈화된 애플리케이션들과 J2EE, 닷넷, 미들웨어, 웹서비스 등이 등장했고 기업들은 이들을 분산 아키텍쳐로 구성해 자사 기업의 애플리케이션을 신속하게 개발하는데 초점을 맞춰 왔다. 그러나 이제는 이들 유지보수에 대한 비용을 줄이고 개발의 생산성을 향상시키는데 눈을 돌리고 있는 상황이다.
과거 애플리케이션들은 각 단위 업무를 분리해 고유 기능을 구현하느라, 관리가 용이하고 기술이 다양했다고는 볼 수 없다. 하지만 개방형 시스템의 경우에는 e비즈니스 의 관점에서 통합되고 협업되는 기능을 제공해야 하기 때문에, 많은 기술과 복잡한 구조를 지니고 있다. 현재 애플리케이션은 과거 애플리케이션에 비해 접근하는 데이터도 증가하고 있으며, 많은 탄력성을 요구하고 있고, 여러 개로 산재돼 있는 애플리케이션에 대한 단일한 사용자 접근을 요구하고 있다.
이에 따라 운영 및 유지보수상의 복잡성이 증가하고 있으며 잠재적으로 서비스의 품질을 떨어뜨릴 수 있는 가능성을 가지고 있다. 심지어 2008년 이후에는 기술의 복잡성으로 인해 일대 혼란이 야기된다라는 얘기가 나올 정도로 심각하게 생각하는 사람도 있다.

▶ 기존 애플리케이션 관리 솔루션들 한계 노출
기존의 요구분석, 설계, 형상관리 등의 도구들은 애플리케이션 생명주기를 전반을 관리하는데 있어 한계성을 노출하고 있는데, 애플리케이션 개발의 생산성 및 품질 향상에 중점을 맞췄기 때문이다. 애플리케이션에 대한 실제적인 정보나 방향설정을 위한 정보는 제공하지 못하고 있다.
애플리케이션이나 컴포넌트 등에 대한 내부 구성과 상호 연계 등에 대한 깊이 있는 정보가 미흡해 시스템 변화에 대한 경비나 위험을 예측하기가 쉽지 않다. 가트너에서는 2007년까지 프러덕션 환경으로 전환되는 애플리케이션들 중 최소한 80%가 낮은 품질로 인해 실패할 것이라고 예견하고 있다.(가트너 자료, Testing at the Crossroads, 2003년)

▶ 정보 탐색에 많은 비용 초래
애플리케이션을 개발 또는 유지보수하는 데 있어 IT조직은 기존의 애플리케이션에 대한 최신의 기술정보를 필요로 한다. 그런데 이러한 정보를 얻는 것은 과거 또는 기존 프로젝트에서 나온 산출물을 근간으로 하는데, 이들의 정보가 부족하거나 시간이 지나면서 퇴색한다는 것이다.
궁극적으로 애플리케이션에 대한 기술적 정보는 몇몇 개발자들의 머리 속에서만 존재해 동시 다발적으로 발생되는 프로젝트나 변경 요구를 신속하게 처리하는데 장애가 될 수 있다. 즉, 본인들의 의지와는 별개로 IT 프로젝트의 병목현상이 될 수 있으며, 이직 및 재배치의 경우에는 이러한 지식마저도 단절될 수 있기에 문제가 심각할 수 있다.
애플리케이션을 유지보수 하는 데 약 47% 의 개발자 시간이 코드를 찾는데 사용되고 6%의 시간이 문서를 작성하는데 사용되고 있다고 한다. 비즈니스의 관점에서 보면 어디에 관리의 포인트를 둬야 할지 명확해지는 데이터라고 할 수 있다.

▶ 지식 공유
현대사회는 지식사회라고 해 개인이 취득한 정보를 기업 자산으로 축적하고자 많은 노력을 하고 있다. 그러나 애플리케이션의 경우 이러한 지식이 개인 자산화되는 경향이 많다. 많은 투자를 바탕으로 개발되는 애플리케이션에 대한 지식을 기업 자산화하고 이를 필요한 사람에게 공유하도록 하는 것은 기업 정보화 차원에서 반드시 고려해야만 하는 사항이다.

▶ 아웃 소싱에의 의존 심화
현재 많은 기업들이 IT업무 및 운영을 아웃소싱하고 있는데, 시간이 지나면서 기업의 전산실에서는 애플리케이션에 대한 지식이 줄어들고 아웃소싱 업체가 이 지식을 쌓아가는 것이 현실이다. 그리고 시간이 지나면서 이 지식에 대한 차이는 점점 증가해 궁극적으로 아웃소싱 업체와 업무를 협의하는데도 많은 어려움에 직면하게 된다.
APM은 이러한 격차를 줄어들게 하고 아웃소싱업체를 효과적으로 관리할 수 있게 한다. 아웃소싱업체의 입장에서도 고객과 이견이 있는 부분에 대한 정당하고 합리적인 데이터를 근거로 협상에 임할 수 있게 하는 것이다.

효과적인 애플리케이션 관리 APM
IT 포트폴리오는 애플리케이션 포트폴리오, 프로젝트 포트폴리오, 그리고 IT 자산에 대한 포트폴리오로 구성할 수 있다. 그 중에서도 IT 예산의 60~80% 정도가 기존 애플리케이션을 유지보수하는데 드는 비용이라는 리서치 기관의 조사를 볼 때, 애플리케이션은 IT 포트폴리오를 구성하는 중요한 부분이라고 할 수 있다.
APM(Application Portfolio Management)은 비지니스 활동의 근간이 되는 기업 전반의 애플리케이션 소스를 읽고, 그 관계성을 지식저장소에 구축한 후, 이로부터 의사결정에 필요한 정보를 제공하는, 다양한 기술로 구성된, 애플리케이션을 효과적으로 관리하는 일련의 기술이라고 포레스트는 정의하고 있다.
이는 비즈니스가 복잡해지고 경비 절감이 요구되는 상황에서 애플리케이션에 대한 투자를 결정하는데 필요한 정보를 취득하고자 하는 목적과 비즈니스 요구와 기술, 그리고 비용 등을 고려한 애플리케이션 방향 설정을 위해 보다 나은 정보를 찾고자 하는 IT조직에게 유용한 정보를 제공한다.
또한 APM은 애플리케이션 마이닝(Application Mining)이란 개념에서 시작된 것으로 보고 있다. 애플리케이션 마이닝을 통해 취득된 기술적 정보들을 비지니스 정보로 발전해 비지니스 관점에서 IT에 전략 및 방향에 대한 의사결정을 내릴 수 있는 애플리케이션 포트폴리오로 진화했다고 본다.
새로운 애플리케이션을 개발하고 기존 애플리케이션을 운영해야 하는 기업의 입장에서 IT부문에 대한 투자는 애플리케이션에 대한 수명과 비즈니스에 대한 공헌도를 고려하는 것에서 시작된다.
맥팔렌(McFarlan)과 맥켄리(McKenny)는 애플리케이션 포트폴리오 메트릭스를 고안해 IT에 대한 비즈니스 공헌도를 평가했다. 이 모델은 기존의 애플리케이션은 물론, 계획하고 있거나 잠재적으로 가능성이 있는 애플리케이션까지 포괄해 분석했는데 애플리케이션을 전략적(Strategic), 잠재력이 높은(High Potential), 주요 운영(Key Operational), 지원(Support) 등 네 가지 범주로 나눠 고려한다.

·높은 잠재력(HIGH POTENTIAL) : 미래 비즈니스를 위해서는 잠재력이 큰 부분이지만 아직 불확실한 것을 의미한다. 이러한 애플리케이션의 경우 많은 자원을 소요하기 전에 실패에 대한 위험을 줄이기 위해 빠른 프로토타이핑 개발로 검증할 필요가 있다.

·전략(TRATEGIC) : 이 범주에 속하는 애플리케이션은 전략적으로 중요한 업무를 수행하는 것으로서 잠재적인 가치를 가지고 있다. 비즈니스 성공을 위해 반드시 필요한 것이라고 믿고 있는 부분이며 비즈니스 목적과 부합되고 비즈니스 이익과 직접적으로 연관이 있다. 이 애플리케이션의 경우에는 탄력성있게 개발돼 미래의 다양한 요구에 대응할 수 있도록 고려해야 한다.

·주요 운영(KEY OPERATIONAL) : 이 애플리케이션은 현재 비즈니스를 성공적으로 수행하는데 가장 필요한 것으로서 우선적으로 고려돼야 하고 가치를 향상시키는데 주력해야 하는 것이다. 시간이 지나면서 비즈니스 요구에 따라 진화해야 하는 바, 안정성을 확보하고 비용을 줄이는데 초점을 맞춰야 한다.
고품질의 애플리케이션이 되도록 충분한 시간을 주어 검증하게 하고 효과적인 데이터 처리가 되도록 한다.

·지원(SUPPORT) : 전략적인 애플리케이션이 아니며 단순히 업무 지원차원의 애플리케이션이다. 이 경우에는 비용이 많이 소요돼 않는 시스템일 경우 애플리케이션에 대한 수명이 연장되는 비용중심적인 의사결정이 된다.

이상의 범주에 비즈니스 이득과 위험을 고려해 애플리케이션들을 포지셔닝하고 이들에 대한 투자의 우선순위를 정함으로써 투자에 대한 ROI를 극대화하는 것이다. 주요 운영(Key Operational) 범주에 해당하는 애플리케이션의 경우에는 진화를 고려한 유지보수활동과 철저한 품질관리가 요구되는 애플리케이션이라 할 수 있다. 비즈니스가 이 애플리케이션으로 운영되는 만큼, 관리와 비용절감에 노력해야 한다.
이에 APM솔루션들은 애플리케이션들을 분석해 기술적 정보를 바탕으로 비즈니스 관련 메트릭스와 연계해 의사결정에 필요한 정보를 제공하게 된다.
APM에서 비즈니스 결정을 지원하기 위한 정보에 대해서는 다음으로 미루기로 한다.

애플리케이션 마이닝(Application Mining)
애플리케이션 마이닝은 IT관리자나 개발자들로 하여금 급변하는 환경에서 도출되는 비지니스의 다양한 요구를 즉각적으로 대응하고 위험을 제거하기 위한 기술이다. 이는 애플리케이션 소스를 분석, 개발 및 유지보수에 필요한 정보를 구축하고 프로그램간, 오브텍트, 함수 등에 대한 자세한 기술적 사항을 제공한다. 그리고 이런 사항을 기반으로 IT 팀은 애플리케이션의 개발, 진화, 유지 보수 등을 신속하게 진행할 수 있도록 한다.
소스코드 분석 기술에 기반을 둔 애플리케이션 마이닝은 IT 조직이나 부서에서 애플리케이션을 관리하는데 있어 평균적으로 15% 이상의 생산성을 향상시키고, 정확한 유지보수를 위한 전체적인 이해도를 40% 이상 개선할 수 있다고 한다. 또한 애플리케이션 전 계층(Tier)과 상세한 복잡도를 분석하는 등의 애플리케이션에 대한 전반적인 기술 정보를 제공함으로써 애플리케이션이란 무형의 자산을 지식화하는데 도움을 준다.
애플리케이션 마이닝 솔루션들이 제공하는 기능을 보면 다음과 같다.

- 전체 애플리케이션의 기술 정보 자원화
전체 시스템 환경을 분석하고 분석 결과를 메타 데이터로 자원화해 전사적인 IT 자산 중 애플리케이션 관리의 효율화 및 새로운 정보 시스템, 신 기술 적용에 능동적으로 대처하게 한다.
- 애플리케이션의 로드맵 및 네비게이션(navigation) 제공
전체 애플리케이션의 로드맵을 제시하고 탐색(explore)해 관련 정보 등을 통합적으로 제공, 신속하고 정확한 개발 요구 수용 및 계획 수립이 가능하도록 지원한다.
- 애플리케이션 변경에 따른 영향 분석
애플리케이션 변경에 따른 정확한 영향 분석을 통해 변경에 따른 위험요소 등을 사전에 미리 예방하고 개발의 신속성과 품질을 향상시킬 수 있도록 한다.
- 애플리케이션의 업무 영역 제시
시스템의 확장, 연계, 통합과 관련하여 애플리케이션에 대한 업무 영역 및 도메인(Domain)의 제시를 통해 애플리케이션의 정확한 성능과 품질을 향상시킨다.
- 다큐멘테이션과 보고서의 작성
애플리케이션에 대한 다큐멘테이션과 관련 업무에 대한 보고서의 실시간 생성을 통한 신뢰성 및 업무 효율성 증대 시킨다.

애플리케이션 마이닝 솔루션들은 수동으로 코드를 분석하지 않고 애플리케이션에 관한 지식을 자동으로 생성하는 디바이스로 구성돼 있다. 따라서 IT팀은 자신의 소스 코드를 수동으로 리버스-엔지니어링 (reverse-engineering)하거나 필요한 정보를 하나하나 탐색할 필요없이 마이닝 솔루션을 사용하여 업무에 활용할 수 있다.
마이닝 솔루션의 중요 요소중의 하나인 소스 코드 분석기는 애플리케이션의 내부 구조에 관한 시만틱(Syntactic) 분석을 수행해 전 계층의 애플리케이션 오브젝트와 오브젝트간의 상관 관계, 애플리케이션과 애플리케이션들간의 링크 등을 분석한다. 소스 분석기에 의해 수집된 모든 메타 데이터(metadata)는 중앙 집중화된 리파지토리에 저장이 된다. 그리고 애플리케이션에 발생한 모든 변화를 반영하기 위해 지속적으로 자동 갱신돼 변화에 대한 관리를 가능하게 한다.
IT 팀은 복잡한 애플리케이션의 내부 구성을 그래픽으로 표현된 것을 바탕으로 애플리케이션을 쉽게 직관적으로 이해할 수 있으며, 변경 영향 분석, 최신의 기술 문서 생성, 품질과 표준화 강화 등에 활용할 수 있다.

APM 동향
이 시장은 과거 Y2K 문제를 해결하는 데서 애플리케이션 관리의 중요성을 조명 받았다. 이어 1990년 말과 2000년에 들어서면서 많은 기업들의 인수 및 합병, 이비즈니스의 급격한 발달로 인한 통합된 뷰에 대한 요구, 그리고 유럽 통합 등 환경이 급변하게 됨에 따라, 이에 관련된 애플리케이션들도 따라서 변경하고 진화돼야 했던 만큼, 이에 대한 관리가 중요한 요소가 돼 왔다.
포레스터에서는 APM시장이 2008년까지 4억불 시장으로 급신장할 것으로 보고 있다. APM은 애플리케이션을 분석한 정보를 기반으로 하기 때문에 사실에 근거한 애플리케이션 메트릭스를 바탕으로 관리자들이 비즈니스 전략에 따라 애플리케이션 전략을 수립하고 유지보수에 대한 생산성을 향상시킬 수 있게 도움을 준다. APM은 애플리케이션 마이닝에서 출발했지만 애플리케이션 자산에 대한 관리를 용이하게 하고 전사적 관점에서 애플리케이션을 관리할 수 있도록 진화해 단순 개발자나 설계자를 넘어 전략 기획자와 관리자, CIO에게 정보를 제공할 수 있게 되어 그 가치를 향상시켰다.
애플리케이션 포트폴리오 관리 솔루션을 제공하는 벤더는 크게 메인프레임과 개방형시스템을 지원하는 부분으로 나누어져 왔으며, 현재 상호 미진했던 부분을 보완해 전사적 애플리케이션 포트폴리오 관리에 대한 솔루션을 제공하고자 노력하고 있다.
가트너 조사를 보면 매직 쿼런트안에 있는 APM업체로 블루피닉스, IBM, 그리고 카스트가 있는데 블루피닉스는 메인프레임에 대한 이해력을 제공하는 업체로, 카스트는 개방형 시스템에 대한 이해력을 제공하는 업체로 각자의 독립된 영역에서 솔루션을 제공하고 있다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.