banner
홈페이지 / 블로그 / 혁신 가속화를 위한 API 성숙도 모델 채택
블로그

혁신 가속화를 위한 API 성숙도 모델 채택

Jul 26, 2023Jul 26, 2023

InfoQ 홈페이지 기사 혁신 가속화를 위해 API 성숙도 모델 채택

2023년 4월 19일 12분 분량의 읽기

~에 의해

다르샨 시바샨카르

검토자

매트 캠벨

디지털 혁신이 올바르게 수행되면 조직의 모든 측면에 영향을 미칠 수 있습니다. 불행하게도 디지털 혁신의 일반적인 부작용은 API 성숙도 문제를 해결하는 것입니다. API는 비즈니스 성장을 촉진하는 가교 역할을 하는 경향이 있지만, API가 널리 수용되면 API가 무분별하게 확산되기 시작할 수 있습니다. 일상적인 비즈니스 문제를 해결하기 위해 계획되지 않고 관리되지 않는 API가 확산되면 API 확산이 발생합니다. API 확산은 생성되는 기하급수적으로 많은 수의 API와 API가 배포되는 분산 인프라 위치의 물리적 확산을 설명합니다.

기업들은 자사의 API가 전례 없는 속도로 전 세계로 확산되는 것을 보고 있습니다. 이러한 API의 무분별한 확장은 분산된 인프라 위치 간에 품질과 경험의 일관성을 유지하려는 조직에 고유한 과제를 제시합니다.

규모에 맞게 API를 관리하려면 감독이 필요합니다. 또한 논리적 그룹화를 기반으로 API를 통합하는 API 프로그램 이니셔티브에서 시작해야 하는 실용적인 접근 방식이 필요합니다. 프로그램은 API를 제품이나 서비스로 패키지하여 채택을 촉진하고 전체 수명주기에 대한 관리를 용이하게 해야 합니다. 문제는 API 성숙도를 관리하기 위한 실행 가능한 프로그램을 만드는 것이 느린 프로세스라는 것입니다.

이 문서에서는 성숙한 API 이니셔티브를 구축하기 위한 프레임워크를 제공합니다. 프레임워크는 전체적인 API 기반 비즈니스의 발전을 가져오는 4단계 API 프로그램 성숙도 모델을 사용합니다.

API의 수명주기와 성숙도를 고려할 때 API 성숙도와 API 프로그램 성숙도의 두 단계가 있습니다.

API 성숙도는 설계 및 개발에 따라 다르며 소프트웨어 개발 성숙도와 일치하는 프로세스를 따릅니다. API 성숙도는 API가 REST와 같이 인식된 API 사양을 준수하도록 보장합니다. API 성숙도를 논의할 때 특정 애플리케이션이나 목적을 위해 생성된 API 세트에 대해 이야기합니다.

전사적 규모의 API, 즉 회사가 다양한 비즈니스 목표를 달성하기 위해 시간이 지남에 따라 축적하는 수많은 API를 고려할 때 API 프로그램 성숙도가 우선적으로 고려됩니다. API 프로그램이 성숙해짐에 따라 API를 통합 서비스로 번들링하는 것이 필요합니다. API 프로그램 성숙도 모델은 비즈니스 혁신을 촉진하기 위해 API를 간소화하는 벤치마크를 제공합니다.

API 프로그램 성숙도는 기술 및 비즈니스 관점에서 API의 비기능적 지표를 평가합니다. 기술 API 지표에는 성능, 보안, 경험 및 확장성이 포함됩니다. 비즈니스 API 지표는 시간과 비용에 간접적으로 영향을 미치는 프로세스 및 생산성 향상과 관련이 있습니다.

잘 계획된 모든 비즈니스 프로세스와 마찬가지로 API 프로그램도 작게 시작하여 점진적으로 성장해야 합니다. API 프로그램은 지속적인 개선 주기를 따르도록 구성되어야 합니다. API 프로그램이 낮은 성숙도에서 높은 성숙도 수준으로 일련의 전환을 거치면서 측정항목이 개선되어야 합니다.

API 성숙도 모델을 통한 여정을 시작하기 전에 API를 도구로 인식하는 것부터 시작해야 합니다. 그런 다음 더 높은 성숙도 수준에 도달하면 API를 구성 요소, 모델 및 생태계로 인식하면서 모델을 진행하게 됩니다. 각 레벨은 일상적인 비즈니스 프로세스를 지원하는 API를 기반으로 표시됩니다.

API 프로그램 성숙도를 기업 디지털 혁신에 대한 전체적인 접근 방식의 일부로 고려할 때 API 프로그램은 네 가지 성숙도 수준으로 특징지어질 수 있습니다.

역사적으로 API는 데이터 수집을 용이하게 하기 위해 구축되었습니다. Salesforce와 Amazon의 초기 API가 대표적인 예입니다. 이러한 유형의 API는 여러 비즈니스 애플리케이션 간의 데이터 공유를 표준화하도록 설계되었습니다.