Offcanvas

���������

코크로치 랩스, 클라우드 3사 평가 보고서 발간 “GCP가 1위”

코크로치 랩스(ockroach Labs)가 온라인 트랜잭션 프로세싱 벤치마크를 이용해 클라우드 서비스 메이저 3사를 비교했다. 구글 클라우드가 가장 높은 종합 점수를 획득했다.  오픈소스 코크로치DB 데이터베이스를 개발한 기업인 코크로치 랩스의 2021년 클라우드 보고서에 따르면, 구글 클라우드 플랫폼(GCP)가 OLTP(online transactional processing) 워크로드를 구동함에 있어 가장 우수한 퍼블릭 클라우드 IaaS 공급사였다. 단 비용 대비 가치 측면에서는 AWS가 우수했다.  최근 1억 6,000만 달러의 메가-라운드 자금을 모금한 코크로치 랩스는 “승자를 구분하기가 최근 몇 년과 비교해 더 어려웠다. 대부분의 평가 지표에서 격차가 매우 좁았다”라고 전했다.  이 기업의 연구진은 54 개의 머신 구성에 기반해 거의 1,000 개에 이르는 벤치마크 테스트를 실행했다. CPU, 네트워크 처리량, 대기 시간, 스토리지 읽기 및 쓰기 성능, 업계 표준 TPC-C 벤치마크에 파생된 자체 테스트 등이었다. 전체 테스트 방법론에 대한 자세한 정보는 깃허브에 공개돼 있다.  클라우드 벤더별로 살펴보면 AWS는 비용 효율성이 우수했으며, 네트워크 지연 시간 측면에서도 탁월했다. 반면 스토리지 I/O 및 싱글코어 CPU 성능이 뒤쳐졌다. 즉 아마존의 그래비톤2(Graviton2) 프로세서 기반 시스템은 멀티코어 CPU 성능에 특화돼 있었다. 보고서에 따르면 AWS의 c5a.4xlarge 머신은 tpm 당 0.813달러의 가격에 이용할 수 있어, GCP보다 12% 저렴하고 마이크로소프 애저보다 35% 저렴했다.  구글 클라우드는 싱글코어 CPU 성능이 최고였다. 또 쓰루풋(throughput)이 가장 탁월했으며, 비용효율성이 아마존에 이어 두 번째였다. 단 고급 디스크 옵션이 없었다.  마이크로소프트 애저 또한 쓰루풋 성능이 양호했다. 사실 3사의 쓰루풋 차이는 3사 사이의 차이가 미세했...

코크로치 랩스 AWS GCP 애저 퍼블릭 클라우드 벤치마크 테스트

2021.01.18

코크로치 랩스(ockroach Labs)가 온라인 트랜잭션 프로세싱 벤치마크를 이용해 클라우드 서비스 메이저 3사를 비교했다. 구글 클라우드가 가장 높은 종합 점수를 획득했다.  오픈소스 코크로치DB 데이터베이스를 개발한 기업인 코크로치 랩스의 2021년 클라우드 보고서에 따르면, 구글 클라우드 플랫폼(GCP)가 OLTP(online transactional processing) 워크로드를 구동함에 있어 가장 우수한 퍼블릭 클라우드 IaaS 공급사였다. 단 비용 대비 가치 측면에서는 AWS가 우수했다.  최근 1억 6,000만 달러의 메가-라운드 자금을 모금한 코크로치 랩스는 “승자를 구분하기가 최근 몇 년과 비교해 더 어려웠다. 대부분의 평가 지표에서 격차가 매우 좁았다”라고 전했다.  이 기업의 연구진은 54 개의 머신 구성에 기반해 거의 1,000 개에 이르는 벤치마크 테스트를 실행했다. CPU, 네트워크 처리량, 대기 시간, 스토리지 읽기 및 쓰기 성능, 업계 표준 TPC-C 벤치마크에 파생된 자체 테스트 등이었다. 전체 테스트 방법론에 대한 자세한 정보는 깃허브에 공개돼 있다.  클라우드 벤더별로 살펴보면 AWS는 비용 효율성이 우수했으며, 네트워크 지연 시간 측면에서도 탁월했다. 반면 스토리지 I/O 및 싱글코어 CPU 성능이 뒤쳐졌다. 즉 아마존의 그래비톤2(Graviton2) 프로세서 기반 시스템은 멀티코어 CPU 성능에 특화돼 있었다. 보고서에 따르면 AWS의 c5a.4xlarge 머신은 tpm 당 0.813달러의 가격에 이용할 수 있어, GCP보다 12% 저렴하고 마이크로소프 애저보다 35% 저렴했다.  구글 클라우드는 싱글코어 CPU 성능이 최고였다. 또 쓰루풋(throughput)이 가장 탁월했으며, 비용효율성이 아마존에 이어 두 번째였다. 단 고급 디스크 옵션이 없었다.  마이크로소프트 애저 또한 쓰루풋 성능이 양호했다. 사실 3사의 쓰루풋 차이는 3사 사이의 차이가 미세했...

2021.01.18

인터뷰 | “퍼펙트윈이 SW 테스트 패러다임을 바꿉니다” LG CNS 이준원 담당

21세기에 접어든 지 어느덧 20년이 지났지만 IT 프로젝트의 오늘은 ‘구시대적’이라는 표현이 어울린다. 특히 금융권 차세대 프로젝트와 같은 대규모 프로젝트에서는 첨단 산업과는 거리가 먼 풍토가 여전히 이어지고 있다. 언제, 어디서 튀어나올지 모르는 오류와 변수로 인해 담당 PM은 물론, 개발자, 프로젝트에 참여한 현업 직원과 임원까지도 월화수목금금금, 별 보며 출근하고 퇴근하는 일상이 당연시되고 있다. 개발자와 참여자의 삶의 질만 문제되는 것이 아니다. 이러한 ‘구태’는 기업의 경쟁력 자체에도 위험 요인이다. 디지털, 특히 소프트웨어가 기업의 성패를 좌우하는 오늘날, 수많은 기업들이 소프트웨어 및 IT 프로젝트의 품질 및 일정 예측 가능성에 골머리를 앓고 있다. 치밀하게 계획하고 방대한 리소스를 투입했음에도 불구하고 실패로 귀결돼 비즈니스가 송두리째 흔들린 사례는 국내외 곳곳에서 흔하게 찾아볼 수 있다. ‘오픈’을 기도하는 심정으로 지켜봐야 하는 것이 첨단 IT 산업의 현실이다. 때로는 도박하는 심정이기도 하다.  이러한 현실이 바뀔 수는 없는 것일까? LG CNS에서 솔루션 사업을 책임지는 이준원 담당은 “가능하다”라고 단언한다. LG CNS의 실거래 자동검증 솔루션 ‘퍼펙트윈’(PerfecTwin)이 그 토대라는 설명이다. 중의적으로 해석되는 명칭이 꽤나 자신만만하게 들렸다. 하지만 솔루션 개발사들이 흔히 가지는 몽상인 것은 아닐까? 아니면 드물게 출현하는 진짜 게임 체인저일까? 마곡에 소재한 LG사이언스 파크에서 이준원 담당을 만나 이야기를 들어봤다. SW 테스트의 콜롬버스 달걀, PerfecTwin “그간의 경험에 비춰볼 때 프로젝트의 성패를 좌우하는 요인이 있다면 고객사의 참여입니다. 이는 고객사의 비즈니스 전문가들이 테스트를 얼마나 잘해줬느냐가 관건이라는 의미입니다.” 프로젝트에 참여해 본 이라면 ‘테스트’의 역할과 중요성은 누구나 공감할 터다. 기능 테스트, 성능 테스트, 인터페이스 테스트 등 다양한 유형의 테스트가 단위 테스트부...

LG CNS 이준원 퍼펙트윈 PerfecTwin 테스트 실거래 데이터 SI SM 프로젝트

2020.10.07

21세기에 접어든 지 어느덧 20년이 지났지만 IT 프로젝트의 오늘은 ‘구시대적’이라는 표현이 어울린다. 특히 금융권 차세대 프로젝트와 같은 대규모 프로젝트에서는 첨단 산업과는 거리가 먼 풍토가 여전히 이어지고 있다. 언제, 어디서 튀어나올지 모르는 오류와 변수로 인해 담당 PM은 물론, 개발자, 프로젝트에 참여한 현업 직원과 임원까지도 월화수목금금금, 별 보며 출근하고 퇴근하는 일상이 당연시되고 있다. 개발자와 참여자의 삶의 질만 문제되는 것이 아니다. 이러한 ‘구태’는 기업의 경쟁력 자체에도 위험 요인이다. 디지털, 특히 소프트웨어가 기업의 성패를 좌우하는 오늘날, 수많은 기업들이 소프트웨어 및 IT 프로젝트의 품질 및 일정 예측 가능성에 골머리를 앓고 있다. 치밀하게 계획하고 방대한 리소스를 투입했음에도 불구하고 실패로 귀결돼 비즈니스가 송두리째 흔들린 사례는 국내외 곳곳에서 흔하게 찾아볼 수 있다. ‘오픈’을 기도하는 심정으로 지켜봐야 하는 것이 첨단 IT 산업의 현실이다. 때로는 도박하는 심정이기도 하다.  이러한 현실이 바뀔 수는 없는 것일까? LG CNS에서 솔루션 사업을 책임지는 이준원 담당은 “가능하다”라고 단언한다. LG CNS의 실거래 자동검증 솔루션 ‘퍼펙트윈’(PerfecTwin)이 그 토대라는 설명이다. 중의적으로 해석되는 명칭이 꽤나 자신만만하게 들렸다. 하지만 솔루션 개발사들이 흔히 가지는 몽상인 것은 아닐까? 아니면 드물게 출현하는 진짜 게임 체인저일까? 마곡에 소재한 LG사이언스 파크에서 이준원 담당을 만나 이야기를 들어봤다. SW 테스트의 콜롬버스 달걀, PerfecTwin “그간의 경험에 비춰볼 때 프로젝트의 성패를 좌우하는 요인이 있다면 고객사의 참여입니다. 이는 고객사의 비즈니스 전문가들이 테스트를 얼마나 잘해줬느냐가 관건이라는 의미입니다.” 프로젝트에 참여해 본 이라면 ‘테스트’의 역할과 중요성은 누구나 공감할 터다. 기능 테스트, 성능 테스트, 인터페이스 테스트 등 다양한 유형의 테스트가 단위 테스트부...

2020.10.07

기고 | SW 프로젝트 속도를 높이는 11가지 방법

전략적 의사결정은 소프트웨어 프로젝트 속도에 박차를 가해 비즈니스 기회를 활용하는 데 도움이 될 수 있다. 하지만 IT리더는 서둘러서 프로젝트를 끝내는 것만이 능사가 아님을 인지하고 주의해야 한다.   IT리더와 고객은 소프트웨어 프로젝트가 신속히 마무리되기를 원한다. 그러나 속성 개발은 오류 코드, 부실한 테스팅, 불완전한 솔루션, 심지어 보안되지 않은 소프트웨어로 이어지기 쉽다. 소프트웨어 프로젝트가 실패하기를 원하는 사람은 없겠지만 때에 따라 특정 상황, 예를 들어 시장 환경, 비즈니스 요구, 기회의 여지로 속도를 우선시하는 선택이 정당화될 수 있다.  소프트웨어 개발은 단순히 합리적 노력에 그치지 않는다. 이는 요령이기도 하고 여러 조직에서 비즈니스 전략의 불가결한 부분이기도 하다. 이들 요소가 서로 접하는 지점에서 개발 프로세스를 좀더 효율적으로 조정할 가능성이 존재한다. 물론, 이는 효과적이고 적절하며 단순하고 안전해야 한다. 완전한 소프트웨어를 개발한다는 꿈을 접고, 그 대신 취사선택이 필요함을 인지하고 프로젝트를 간소화하는 결정을 내려야 할 것이다.   IT리더가 소프트웨어 프로젝트에 속도를 내고자 할 때 고려할 수 있는 11가지 전략적 결정을 소개한다.  이해관계자의 희망 사항을 조율하라  모두가 의견을 제시하고 싶어 한다. 마케팅팀, 출하 부서, 회계팀의 이해 관계자는 커다란 희망을 안고 회의실로 들어선다. 요령은 성취하기 가장 쉬운 희망을 찾는 것이다. 언젠가 필자의 소프트웨어팀은 회의를 거듭하면서 단순히 한 양식 필드에 미리 채워진 기본값들을 추가함으로써 데이터 작성자의 부담을 크게 덜 수 있음을 발견했다. 하루에도 수없이 처음부터 양식을 작성하는 판매 직원이 수없이 많았다. HTML에 문자를 몇 개 더 집어넣는 것만으로 우리 팀은 마치 천재처럼 대우받았다.   이해관계자가 현실을 직시하도록 하는 것은 프로젝트의 범위를 제어하는 데 유용하다. 이해관계자가 소소하면서도 매우 ...

CIO 프로젝트 마이크로서비스 서버리스 코딩 단순화 아키텍처 테스트 테스팅 드루팔 Drupal 구글 폼즈 Google Forms 서베이 몽키 Survey Monkey

2020.06.22

전략적 의사결정은 소프트웨어 프로젝트 속도에 박차를 가해 비즈니스 기회를 활용하는 데 도움이 될 수 있다. 하지만 IT리더는 서둘러서 프로젝트를 끝내는 것만이 능사가 아님을 인지하고 주의해야 한다.   IT리더와 고객은 소프트웨어 프로젝트가 신속히 마무리되기를 원한다. 그러나 속성 개발은 오류 코드, 부실한 테스팅, 불완전한 솔루션, 심지어 보안되지 않은 소프트웨어로 이어지기 쉽다. 소프트웨어 프로젝트가 실패하기를 원하는 사람은 없겠지만 때에 따라 특정 상황, 예를 들어 시장 환경, 비즈니스 요구, 기회의 여지로 속도를 우선시하는 선택이 정당화될 수 있다.  소프트웨어 개발은 단순히 합리적 노력에 그치지 않는다. 이는 요령이기도 하고 여러 조직에서 비즈니스 전략의 불가결한 부분이기도 하다. 이들 요소가 서로 접하는 지점에서 개발 프로세스를 좀더 효율적으로 조정할 가능성이 존재한다. 물론, 이는 효과적이고 적절하며 단순하고 안전해야 한다. 완전한 소프트웨어를 개발한다는 꿈을 접고, 그 대신 취사선택이 필요함을 인지하고 프로젝트를 간소화하는 결정을 내려야 할 것이다.   IT리더가 소프트웨어 프로젝트에 속도를 내고자 할 때 고려할 수 있는 11가지 전략적 결정을 소개한다.  이해관계자의 희망 사항을 조율하라  모두가 의견을 제시하고 싶어 한다. 마케팅팀, 출하 부서, 회계팀의 이해 관계자는 커다란 희망을 안고 회의실로 들어선다. 요령은 성취하기 가장 쉬운 희망을 찾는 것이다. 언젠가 필자의 소프트웨어팀은 회의를 거듭하면서 단순히 한 양식 필드에 미리 채워진 기본값들을 추가함으로써 데이터 작성자의 부담을 크게 덜 수 있음을 발견했다. 하루에도 수없이 처음부터 양식을 작성하는 판매 직원이 수없이 많았다. HTML에 문자를 몇 개 더 집어넣는 것만으로 우리 팀은 마치 천재처럼 대우받았다.   이해관계자가 현실을 직시하도록 하는 것은 프로젝트의 범위를 제어하는 데 유용하다. 이해관계자가 소소하면서도 매우 ...

2020.06.22

마침내 배터리 성능도!··· 라이젠 4000 모바일 CPU 전력효율성 분석

AMD의 신형 라이젠 4000 모바일 CPU는 출시와 동시에 인텔의 노트북용 프로세서를 ‘7나노의 먼지’ 속에 남겨 놓을 것으로 기대된다. 하지만 아직 확인되지 않은 것이 하나 있다. 많은 노트북 사용자에게 가장 중요한 숫자인 배터리 수명이 그것이다. 특히 지금까지 라이젠 노트북의 아킬레스건이었다는 점에서 배터리 수명은 좀 더 파고들 가치가 있다.   3월 16일 AMD가 마침내 배터리 관련 정보를 공개했다. 전원을 연결하지 않은 상태에서 인텔의 가장 뛰어난 기록과 경쟁할 만하다는 주장이다. 8코어 라이젠 7 4800U를 탑재한 신형 레노버 슬림 7은 예상 가동시간이 무려 18시간이다. 이 수치는 표준 비디오 실행 테스트와 업계 표준인 BAPCO 모바일마크(MobileMark) 2014 테스트에서 달성한 것이다. BAPCO 모바일마크 과거 BAPCO에 강한 반감을 드러냈던 것을 생각하면, AMD가 모바일마크를 사용한 데 놀랄지도 모른다. AMD는 이 부분에 대해 현실을 인정한 것뿐이라고 답했다. 대부분의 PC 제조업체가 발표하는 배터리 수명 측정 기준이 모바일마크 2014를 기반으로 한다는 것. AMD는 레노버 슬림 7을 14인치 1080p 해상도, 60와트 배터리로 구성했다고 밝혔다. 인텔 10나노 코어 i7-1065G7을 탑재한 델 XPS 13 투인원 7390 모델도 테스트했는데, 13.2인치 50와트 배터리로 모바일마크 2014에서 16시간 58분을 기록했다. 디스플레이나 배터리 차이 때문에 완벽한 비교 대상은 아니지만, AMD는 13인치 디스플레이에 비슷한 배터리 용량의 제품이 없다고 설명했다. 배터리 수명에 대한 AMD의 도전 단지 대세를 따를 뿐 정말로 믿지는 않는 테스트 방식과 오랫동안 배터리 수명을 과장해 온 전력에도 불구하고 라이젠 4000의 테스트 결과는 훌륭하다. 하지만 AMD는 모바일마크 2014만을 사용하지 말고 측정 방법을 바꿔보기를 원했다.  AMD의 주장은 모든 사람이 노트북을 서로 다르게 사용한다는 것...

노트북 AMD 테스트 배터리 벤치마크 라이젠

2020.03.18

AMD의 신형 라이젠 4000 모바일 CPU는 출시와 동시에 인텔의 노트북용 프로세서를 ‘7나노의 먼지’ 속에 남겨 놓을 것으로 기대된다. 하지만 아직 확인되지 않은 것이 하나 있다. 많은 노트북 사용자에게 가장 중요한 숫자인 배터리 수명이 그것이다. 특히 지금까지 라이젠 노트북의 아킬레스건이었다는 점에서 배터리 수명은 좀 더 파고들 가치가 있다.   3월 16일 AMD가 마침내 배터리 관련 정보를 공개했다. 전원을 연결하지 않은 상태에서 인텔의 가장 뛰어난 기록과 경쟁할 만하다는 주장이다. 8코어 라이젠 7 4800U를 탑재한 신형 레노버 슬림 7은 예상 가동시간이 무려 18시간이다. 이 수치는 표준 비디오 실행 테스트와 업계 표준인 BAPCO 모바일마크(MobileMark) 2014 테스트에서 달성한 것이다. BAPCO 모바일마크 과거 BAPCO에 강한 반감을 드러냈던 것을 생각하면, AMD가 모바일마크를 사용한 데 놀랄지도 모른다. AMD는 이 부분에 대해 현실을 인정한 것뿐이라고 답했다. 대부분의 PC 제조업체가 발표하는 배터리 수명 측정 기준이 모바일마크 2014를 기반으로 한다는 것. AMD는 레노버 슬림 7을 14인치 1080p 해상도, 60와트 배터리로 구성했다고 밝혔다. 인텔 10나노 코어 i7-1065G7을 탑재한 델 XPS 13 투인원 7390 모델도 테스트했는데, 13.2인치 50와트 배터리로 모바일마크 2014에서 16시간 58분을 기록했다. 디스플레이나 배터리 차이 때문에 완벽한 비교 대상은 아니지만, AMD는 13인치 디스플레이에 비슷한 배터리 용량의 제품이 없다고 설명했다. 배터리 수명에 대한 AMD의 도전 단지 대세를 따를 뿐 정말로 믿지는 않는 테스트 방식과 오랫동안 배터리 수명을 과장해 온 전력에도 불구하고 라이젠 4000의 테스트 결과는 훌륭하다. 하지만 AMD는 모바일마크 2014만을 사용하지 말고 측정 방법을 바꿔보기를 원했다.  AMD의 주장은 모든 사람이 노트북을 서로 다르게 사용한다는 것...

2020.03.18

와이즈스톤, BeSTCon 2019서 SW 테스트 자동화 솔루션 '에그플랜트' 소개

와이즈스톤이 최근 코엑스에서 열린 소프트웨어 테스팅을 주제로한 컨퍼런스 ‘BeSTCon 2019(Better Software Testing Conference 2019)’에 참가해, 인공지능(AI) 기반의 SW 테스트 자동화 솔루션 ‘에그플랜트(Eggplant)’를 소개했다고 밝혔다. 에그플랜트는 차별화된 이미지 인식 기술을 통해 실제 사용자가 보는 화면 그대로를 인식해 테스트 개발 기술과 상관없이 테스트 한다. 또한 사용자 경험(UX)을 기반으로 한 모델링 기능으로 테스트 결과를 스스로 학습해 최적화된 테스트를 제공한다. 특히, 에그플랜트는 디바이스, 브라우저, 플랫폼 등에 상관없이 다양한 환경에서 사용할 수 있다. 따라서 에그플랜트를 처음 도입하는 기업이라도 사용하던 테스트 디바이스나 환경 등에 즉시 적용할 수 있다.  와이즈스톤 홍보 부스에서는 에그플랜트로 PC와 모바일 기기를 제어하는 자동화 테스트 데모 영상을 선보였다.  더불어 와이즈스톤 테스팅 솔루션 센터 고태우 이사는 ‘테스트 자동화 도구 도입 전략’이라는 주제로 강연했다. 고 이사는 국내 고객사와의 실제 경험을 바탕으로 기업에 맞는 테스트 자동화 도구 선정방안, 도입 시 고려해야 할 사항, 테스트 자동화 도구의 현재와 미래 등에 관해 발표했다. 와이즈스톤 고태우 이사는 “이번 행사에서 SW 테스트 자동화에 대한 관심이 높은 기업을 대상으로 에그플랜트를 소개할 수 있어 매우 의미있었다”며, “앞으로도 와이즈스톤은 테스트 자동화 솔루션 확산과 솔루션 전문가 양성에 힘쓸 것”이라고 말했다. ciokr@idg.co.kr

테스트 인공지능 와이즈스톤

2019.10.18

와이즈스톤이 최근 코엑스에서 열린 소프트웨어 테스팅을 주제로한 컨퍼런스 ‘BeSTCon 2019(Better Software Testing Conference 2019)’에 참가해, 인공지능(AI) 기반의 SW 테스트 자동화 솔루션 ‘에그플랜트(Eggplant)’를 소개했다고 밝혔다. 에그플랜트는 차별화된 이미지 인식 기술을 통해 실제 사용자가 보는 화면 그대로를 인식해 테스트 개발 기술과 상관없이 테스트 한다. 또한 사용자 경험(UX)을 기반으로 한 모델링 기능으로 테스트 결과를 스스로 학습해 최적화된 테스트를 제공한다. 특히, 에그플랜트는 디바이스, 브라우저, 플랫폼 등에 상관없이 다양한 환경에서 사용할 수 있다. 따라서 에그플랜트를 처음 도입하는 기업이라도 사용하던 테스트 디바이스나 환경 등에 즉시 적용할 수 있다.  와이즈스톤 홍보 부스에서는 에그플랜트로 PC와 모바일 기기를 제어하는 자동화 테스트 데모 영상을 선보였다.  더불어 와이즈스톤 테스팅 솔루션 센터 고태우 이사는 ‘테스트 자동화 도구 도입 전략’이라는 주제로 강연했다. 고 이사는 국내 고객사와의 실제 경험을 바탕으로 기업에 맞는 테스트 자동화 도구 선정방안, 도입 시 고려해야 할 사항, 테스트 자동화 도구의 현재와 미래 등에 관해 발표했다. 와이즈스톤 고태우 이사는 “이번 행사에서 SW 테스트 자동화에 대한 관심이 높은 기업을 대상으로 에그플랜트를 소개할 수 있어 매우 의미있었다”며, “앞으로도 와이즈스톤은 테스트 자동화 솔루션 확산과 솔루션 전문가 양성에 힘쓸 것”이라고 말했다. ciokr@idg.co.kr

2019.10.18

버그잡는 파이썬 프레임워크 4종

건물에 화재 검사나 안전 검사가 필요하듯 기업용 소프트웨어에는 테스트가 필요하다. 건물에서 특정 전기적 조건이나 구조적 문제가 대형 사고로 이어질 수 있음을 안다면 한 번만 살펴보고 끝내지 않고 반복해서 확인할 것이다. 마찬가지로, 소프트웨어 애플리케이션에서 특정 문제나 조건을 방지하려면 이에 맞는 테스트를 작성해 프로덕션으로 흘러가지 못하도록 하면 된다. 테스트는 파이썬(Python)과 같은 동적 언어에서는 2배로 중요하다. 동적 언어에서는 온갖 오류가 런타임에만 드러나기 때문이다. 견실한 테스트 모음은 이런 문제를 찾아내는 데 도움이 되며, 나중에 코드베이스를 물려받는 사람에게도 똑같이 유용하다.   파이썬에 기본적으로 포함되는 자체 단위 테스트 프레임워크는 유용하고 많이 사용된다. 그러나 각각 단위 테스트를 구축하고 유지하는 방법에 대해 나름의 원칙을 가진 다른 옵션도 많다. 이제부터 기본 프레임워크인 unittest와 가장 대표적인 3가지 대안을 자세히 살펴보자. 유닛테스트(Unittest) 및 독테스트(Doctest) unittest는 파이썬의 표준 라이브러리와 함께 제공되는 기본 테스트 프레임워크이며, 파이썬 자체를 위한 테스트 모음을 만드는 데 사용된다. unittest는 일부 서드파티 테스트 프레임워크만큼 범위가 넓지는 않고 애초에 그런 의도로 만들어지지도 않았다. 대부분의 프로젝트에 맞는 견실한 단위 테스트를 작성하기 위해 필요한 기능만 제공한다. 제이유닛(JUnit) 테스트 프레임워크를 사용했던 자바 개발자라면 unittest가 익숙하게 느껴질 것이다. 테스트 모음을 만들려면 unittest.TestCase에서 파생되는 파이썬 클래스를 만든다. 테스트는 이런 클래스의 함수가 된다. 테스트는 간단한 동등 또는 부등 단언(equality/inequality assertion)일 수도 있고 더 정교할 수도 있다. 예를 들어 assertRaises 테스트는 지정된 테스트에서 지정된 예외가 발생하는 지를 확인한다. 테스트를 하나의 ...

테스트 유닛테스트 비헤브 독테스트 노우즈2 Unittest Pytest nose2 Doctest behave 파이썬 BDD 파이테스트

2019.09.23

건물에 화재 검사나 안전 검사가 필요하듯 기업용 소프트웨어에는 테스트가 필요하다. 건물에서 특정 전기적 조건이나 구조적 문제가 대형 사고로 이어질 수 있음을 안다면 한 번만 살펴보고 끝내지 않고 반복해서 확인할 것이다. 마찬가지로, 소프트웨어 애플리케이션에서 특정 문제나 조건을 방지하려면 이에 맞는 테스트를 작성해 프로덕션으로 흘러가지 못하도록 하면 된다. 테스트는 파이썬(Python)과 같은 동적 언어에서는 2배로 중요하다. 동적 언어에서는 온갖 오류가 런타임에만 드러나기 때문이다. 견실한 테스트 모음은 이런 문제를 찾아내는 데 도움이 되며, 나중에 코드베이스를 물려받는 사람에게도 똑같이 유용하다.   파이썬에 기본적으로 포함되는 자체 단위 테스트 프레임워크는 유용하고 많이 사용된다. 그러나 각각 단위 테스트를 구축하고 유지하는 방법에 대해 나름의 원칙을 가진 다른 옵션도 많다. 이제부터 기본 프레임워크인 unittest와 가장 대표적인 3가지 대안을 자세히 살펴보자. 유닛테스트(Unittest) 및 독테스트(Doctest) unittest는 파이썬의 표준 라이브러리와 함께 제공되는 기본 테스트 프레임워크이며, 파이썬 자체를 위한 테스트 모음을 만드는 데 사용된다. unittest는 일부 서드파티 테스트 프레임워크만큼 범위가 넓지는 않고 애초에 그런 의도로 만들어지지도 않았다. 대부분의 프로젝트에 맞는 견실한 단위 테스트를 작성하기 위해 필요한 기능만 제공한다. 제이유닛(JUnit) 테스트 프레임워크를 사용했던 자바 개발자라면 unittest가 익숙하게 느껴질 것이다. 테스트 모음을 만들려면 unittest.TestCase에서 파생되는 파이썬 클래스를 만든다. 테스트는 이런 클래스의 함수가 된다. 테스트는 간단한 동등 또는 부등 단언(equality/inequality assertion)일 수도 있고 더 정교할 수도 있다. 예를 들어 assertRaises 테스트는 지정된 테스트에서 지정된 예외가 발생하는 지를 확인한다. 테스트를 하나의 ...

2019.09.23

'VR 헤드셋 착용하고 실제 도로를 운전'··· 볼보의 이색 실험

볼보 엔지니어들이 VR 헤드셋을 착용한 채 실제 도로를 운전하는 테스트를 진행해오고 있다. 무스(moose)와 같은 야생동물이 갑자기 출현하는 상황을 재현하는 한편, 구상 단계의 디자인 및 기술을 평가하기 위해서다.  볼보에 따르면 이 테스트에는 핀란드 기업 바르조(Varjo)가 제작한 바르조 XR-1 헤드셋이 사용된다. 착용자는 가상의 동물 및 보행자를 고화질, 낮은 지연값으로 보게 되며, 이 과정에서 차량의 경고 시스템 및 시제품 대시보드 기능도 가상으로 구현된다. 회사 측은 이 모든 가상 요소들이 "운전자와 여러 차량 센서에 실제처럼 나타난다"라고 설명했다.  아울러 30일 출시된 이 헤드셋에서는 동공 추적 기능이 내장돼 있어 볼보가 드라이버의 반응과 경험을 평가할 수 있도록 돕는다.  볼보 자동차의 헨릭 그린 CTO는 "이번 혼합현실 접근법을 통해 우리는 여러 구상 단계의 디자인과 기술을 평가할 수 있게 됐다"라며, "개념을 즉시 테스트할 수 있다는 점에서 의미가 크다. 설계 및 개발 프로세스 초기에 존재하는 병목 현상을 제거함으로써 상당한 잠재적 비용 절감이 기대된다"라고 말했다.  이러한 접근법은 완전히 가상 화면으로 구현된다는 점에서 실제 이미지에 가상의 객체를 투영하는 형태의 증강현실(AR)과 차별화된다.  이와 관련해 볼보는 도로를 직접 볼 수 없는 헤드셋을 착용하고 운전하는 일이 일반적으로 시도되어선 안 될 것이라고 강조했다. 자신들에 테스트 또한 교통 체증이 없는 도로에서 직원들에 의해 차단된 채 이뤄졌다는 설명이다.  헤드셋 제조사인 바르조는 볼보의 혁신 기금에서 후원 받아 제품을 개발하고 있으며, 올 하반기 제품을 출하할 예정이다. 설립자이자 CEO인 니코 아이든은 "실제와 가상을 완벽하게 통합할 수 있는 제품을 만드는 것이 우리의 비전"이라며, "볼보 자동차는 XR-1을 통해 불가능했던...

자동차 테스트 실험 볼보 XR-1 VR 헤드셋

2019.06.03

볼보 엔지니어들이 VR 헤드셋을 착용한 채 실제 도로를 운전하는 테스트를 진행해오고 있다. 무스(moose)와 같은 야생동물이 갑자기 출현하는 상황을 재현하는 한편, 구상 단계의 디자인 및 기술을 평가하기 위해서다.  볼보에 따르면 이 테스트에는 핀란드 기업 바르조(Varjo)가 제작한 바르조 XR-1 헤드셋이 사용된다. 착용자는 가상의 동물 및 보행자를 고화질, 낮은 지연값으로 보게 되며, 이 과정에서 차량의 경고 시스템 및 시제품 대시보드 기능도 가상으로 구현된다. 회사 측은 이 모든 가상 요소들이 "운전자와 여러 차량 센서에 실제처럼 나타난다"라고 설명했다.  아울러 30일 출시된 이 헤드셋에서는 동공 추적 기능이 내장돼 있어 볼보가 드라이버의 반응과 경험을 평가할 수 있도록 돕는다.  볼보 자동차의 헨릭 그린 CTO는 "이번 혼합현실 접근법을 통해 우리는 여러 구상 단계의 디자인과 기술을 평가할 수 있게 됐다"라며, "개념을 즉시 테스트할 수 있다는 점에서 의미가 크다. 설계 및 개발 프로세스 초기에 존재하는 병목 현상을 제거함으로써 상당한 잠재적 비용 절감이 기대된다"라고 말했다.  이러한 접근법은 완전히 가상 화면으로 구현된다는 점에서 실제 이미지에 가상의 객체를 투영하는 형태의 증강현실(AR)과 차별화된다.  이와 관련해 볼보는 도로를 직접 볼 수 없는 헤드셋을 착용하고 운전하는 일이 일반적으로 시도되어선 안 될 것이라고 강조했다. 자신들에 테스트 또한 교통 체증이 없는 도로에서 직원들에 의해 차단된 채 이뤄졌다는 설명이다.  헤드셋 제조사인 바르조는 볼보의 혁신 기금에서 후원 받아 제품을 개발하고 있으며, 올 하반기 제품을 출하할 예정이다. 설립자이자 CEO인 니코 아이든은 "실제와 가상을 완벽하게 통합할 수 있는 제품을 만드는 것이 우리의 비전"이라며, "볼보 자동차는 XR-1을 통해 불가능했던...

2019.06.03

'스마트폰으로' 네트워크를 관리하는 무료 툴 5선

유지보수 작업이 필요할 때 네트워크 전문가는 대부분 데스크톱 PC나 노트북에서 변경 작업을 한다. 그러나 아이폰 또는 안드로이드 폰 역시 PC 못지않게 유용하다. 스마트폰을 진단 툴로 바꿔주는 앱을 사용해서 네트워크를 스캔하고 원격으로 시스템을 관리하는 등의 작업이 가능하다. 애플 앱 스토어와 구글 플레이 스토어에서 다운로드할 수 있는 네트워크 유틸리티는 엄청나게 많다. 그 중에서 평점이 가장 높고 다운로드 횟수가 가장 많으며 전문가들도 인정한 앱만 추렸다.   핑(Fing) : 네트워크 스캐너 핑은 다용도 툴이다. 사무실 LAN 또는 와이파이 네트워크에 연결된 디바이스를 찾아 목록화하는 네트워크 스캐너로, 디바이스 이름과 IP 주소, MAC 주소, 제조사와 같은 정보를 제공한다. 핑(앱 스토어와 구글 플레이에서 다운로드 가능)에는 네트워크 문제를 진단하고 해결하는 데 도움이 되는 단계별 가이드가 포함돼 있다. 보안을 위해 디바이스가 와이파이 네트워크에 연결될 때 알림을 보내도록 설정할 수도 있다. 네트워크 스캐너 외에도 봉주르(Bonjour), NetBIOS, UPnP의 서비스 분석기, DNS 조회 및 역 DNS 조회, 인터넷 연결 검사, ISP 분석기, 핑, 포트 커넥터(브라우저, FTP, SSH), 포트 스캐너, 서브넷 스캐너, traceroute, Wake On LAN 등의 툴을 포함한다. 핑은 무료이며 독립적으로 사용할 수도 있지만 100달러에 판매되는 옵션 디바이스인 핑박스(Fingbox)와 연계 작동도 가능하다. 핑박스는 더 심층적인 분석과 보안을 위해 네트워크에서 디바이스를 차단하고 와이파이 네트워크의 신호 강도를 측정하고 근처 디바이스 모니터링으로 와이파이 네트워크를 보호하고 네트워크의 인터넷 연결 문제를 해결하기 위한 툴도 부가적으로 제공한다. 가격: 무료 개발: 핑(Fing Limited)   VNC 뷰어(VNC Viewer) : 원격 데스크톱 액세스 아이폰을 사용해서 회사 네트워크의 서버 또는 다른 컴퓨터에 액...

테스트 원격 장애

2019.02.01

유지보수 작업이 필요할 때 네트워크 전문가는 대부분 데스크톱 PC나 노트북에서 변경 작업을 한다. 그러나 아이폰 또는 안드로이드 폰 역시 PC 못지않게 유용하다. 스마트폰을 진단 툴로 바꿔주는 앱을 사용해서 네트워크를 스캔하고 원격으로 시스템을 관리하는 등의 작업이 가능하다. 애플 앱 스토어와 구글 플레이 스토어에서 다운로드할 수 있는 네트워크 유틸리티는 엄청나게 많다. 그 중에서 평점이 가장 높고 다운로드 횟수가 가장 많으며 전문가들도 인정한 앱만 추렸다.   핑(Fing) : 네트워크 스캐너 핑은 다용도 툴이다. 사무실 LAN 또는 와이파이 네트워크에 연결된 디바이스를 찾아 목록화하는 네트워크 스캐너로, 디바이스 이름과 IP 주소, MAC 주소, 제조사와 같은 정보를 제공한다. 핑(앱 스토어와 구글 플레이에서 다운로드 가능)에는 네트워크 문제를 진단하고 해결하는 데 도움이 되는 단계별 가이드가 포함돼 있다. 보안을 위해 디바이스가 와이파이 네트워크에 연결될 때 알림을 보내도록 설정할 수도 있다. 네트워크 스캐너 외에도 봉주르(Bonjour), NetBIOS, UPnP의 서비스 분석기, DNS 조회 및 역 DNS 조회, 인터넷 연결 검사, ISP 분석기, 핑, 포트 커넥터(브라우저, FTP, SSH), 포트 스캐너, 서브넷 스캐너, traceroute, Wake On LAN 등의 툴을 포함한다. 핑은 무료이며 독립적으로 사용할 수도 있지만 100달러에 판매되는 옵션 디바이스인 핑박스(Fingbox)와 연계 작동도 가능하다. 핑박스는 더 심층적인 분석과 보안을 위해 네트워크에서 디바이스를 차단하고 와이파이 네트워크의 신호 강도를 측정하고 근처 디바이스 모니터링으로 와이파이 네트워크를 보호하고 네트워크의 인터넷 연결 문제를 해결하기 위한 툴도 부가적으로 제공한다. 가격: 무료 개발: 핑(Fing Limited)   VNC 뷰어(VNC Viewer) : 원격 데스크톱 액세스 아이폰을 사용해서 회사 네트워크의 서버 또는 다른 컴퓨터에 액...

2019.02.01

'AWS 보안을 더 단단하게'··· 최신 감사·테스트 툴 4종

가상머신(VM)과 아마존 웹 서비스(AWS)가 등장한 이후 가상 인프라를 테스트하는 것은 줄곧 골칫거리였다. 그런데 최근 들어 새로운 테스트 툴이 잇달아 나오고 있다. 기존 테스트 툴은 여러 문제가 있었다. 가상 인프라를 제대로 테스트하는 핵심은 AWS의 구조에 대해 잘 아는 것이다. 다양한 VM과 네트워크 구성 요소 간의 관계를 이해하고 일반적인 보안 취약성과 공격 방법을 파악해야 한다. 이는 상당한 양의 학습을 요구하는데, 언제나 바쁜 개발자가 그런 요소의 구조를 설명하는 데 많은 시간을 투자할 리 없다. 기존의 침투 테스트 대부분이 안정적인 온사이트 애플리케이션에 초점을 맞추고 있다는 점도 문제다. CPU가 바뀔 수도 있고 스토리지 블록이 눈 깜짝할 사이에 생성, 삭제되는 가변적이고 순간적인 AWS 구조에는 기존 툴이 적합하지 않다. 지난해 스카이하이 네트웍스(Skyhigh Networks)의 조사 결과를 보면, 모든 AWS S3 버킷의 7%가 전체 인터넷에 노출돼 있는 것으로 나타났다. 공공 버킷의 3분의 1이 암호화되지 않은 상태여서, 여기에 포함된 데이터를 해킹하기는 어린애 장난만큼 쉽다는 것이다. 이러한 구성 오류 중 상당 부분이 누군가 회사에 연락하기 전까지 수개월 동안 방치되기도  한다. 올여름 혼다의 커넥티드 카 컨트롤 시스템의 사용자 정보 유출이나, 딥 루트 애널리틱스(Deep Root Analytics)에서 무방비 상태로 노출된 S3 버킷으로 인해 다수의 투표 기록이 노출된 사건도 마찬가지였다. 이제 소개하는 솔루션은 이러한 어려움을 해소하기 위해 탄생했다. AWS 자체 솔루션부터 차례로 살펴보자. AWS의 새 감사 툴: '젤코바'와 '타이로스' 아마존은 지난 수년간 다양한 보안 관련 서비스를 개발했다. 모든 API 사용을 기록하는 클라우드트레일(CloudTrail), 리소스 사용을 기록하는 클라우드워치(CloudWatch), 머신러닝을 활용해 민감 데이터를 발견하는 메이...

보안 AWS 테스트 감사

2018.09.10

가상머신(VM)과 아마존 웹 서비스(AWS)가 등장한 이후 가상 인프라를 테스트하는 것은 줄곧 골칫거리였다. 그런데 최근 들어 새로운 테스트 툴이 잇달아 나오고 있다. 기존 테스트 툴은 여러 문제가 있었다. 가상 인프라를 제대로 테스트하는 핵심은 AWS의 구조에 대해 잘 아는 것이다. 다양한 VM과 네트워크 구성 요소 간의 관계를 이해하고 일반적인 보안 취약성과 공격 방법을 파악해야 한다. 이는 상당한 양의 학습을 요구하는데, 언제나 바쁜 개발자가 그런 요소의 구조를 설명하는 데 많은 시간을 투자할 리 없다. 기존의 침투 테스트 대부분이 안정적인 온사이트 애플리케이션에 초점을 맞추고 있다는 점도 문제다. CPU가 바뀔 수도 있고 스토리지 블록이 눈 깜짝할 사이에 생성, 삭제되는 가변적이고 순간적인 AWS 구조에는 기존 툴이 적합하지 않다. 지난해 스카이하이 네트웍스(Skyhigh Networks)의 조사 결과를 보면, 모든 AWS S3 버킷의 7%가 전체 인터넷에 노출돼 있는 것으로 나타났다. 공공 버킷의 3분의 1이 암호화되지 않은 상태여서, 여기에 포함된 데이터를 해킹하기는 어린애 장난만큼 쉽다는 것이다. 이러한 구성 오류 중 상당 부분이 누군가 회사에 연락하기 전까지 수개월 동안 방치되기도  한다. 올여름 혼다의 커넥티드 카 컨트롤 시스템의 사용자 정보 유출이나, 딥 루트 애널리틱스(Deep Root Analytics)에서 무방비 상태로 노출된 S3 버킷으로 인해 다수의 투표 기록이 노출된 사건도 마찬가지였다. 이제 소개하는 솔루션은 이러한 어려움을 해소하기 위해 탄생했다. AWS 자체 솔루션부터 차례로 살펴보자. AWS의 새 감사 툴: '젤코바'와 '타이로스' 아마존은 지난 수년간 다양한 보안 관련 서비스를 개발했다. 모든 API 사용을 기록하는 클라우드트레일(CloudTrail), 리소스 사용을 기록하는 클라우드워치(CloudWatch), 머신러닝을 활용해 민감 데이터를 발견하는 메이...

2018.09.10

블로그 | 테스트 자동화 없이는 클라우드 데브옵스도 없다

저녁 8시 새로운 클라우드 네이티브 애플리케이션을 만들기 위한 스트린트를 완료하고자 한다. 데드라인은 정했다. 하지만 애플리케이션을 테스트 그룹에 보내는 데는 2주가 더 걸리고, 그 이후에 배치를 하고 운영팀에 넘겨야 한다. 아이디어에서 운영팀에 넘겨지는 데까지 걸린 시간을 고려하면 애자일 개발이 그다지 민첩하지 않은 것 같다. 뭐가 잘못됐을까? 오늘날의 문제는 클라우드 네이티브 애플리케이션의 테스트와 배치를 위한 자동화가 충분하지 않다는 것이다. 그래서 이 까다로운 사람들이 테스트 과정에서 개입해야만 하고, 이 때문에 작업은 더뎌지고 오류도 더 많아질 가능성이 크다. 게다가 클라우드 네티이브 애플리케이션의 테스트는 어떠해야 하는지 제대로 이해하고 있는 테스터도 충분하지 않아서 테스트를 위해 접근법이나 메커니즘을 파악하는 데도 시간이 지체된다. 클라우드 네이티브 암호화나 ID 및 액세스 관리 시스템을 사용해 애플리케이션의 안정성을 판단하는 역량을 예로 들 수 있다. 아니면 클라우드 네이티브 자동 확장 서비스를 사용해 6대의 서버 인스턴스를 확장하는 것이 충분한 규모인지를 파악하는 역량도 필요하다. 이들 역량은 특정 클라우드 서비스 업체에 특화된 것이다. 많은 전문가가 클라우드 네이티브 애플리케이션을 이렇게 테스트하라고 한다. 이를 통해 클라우드 네이티브란 무엇이고 어떤 것인지, 베스트 프랙티스는 무엇인지, 좋은 클라우드 네이티브 애플리케이션과 그렇지 않은 애플리케이션은 무엇인지 등에 대해 더 많은 것을 알 수 있다는 것. 하지만 필자의 조언은 이런 모든 것을 한꺼번에 없애 버리라는 것이다. 대신 책임을 클라우드 네이티브 애플리케이션 개발자에게 다시 맡겨 테스트를 자동화하는 스크립트를 포함한 테스트 계획까지 수행하도록 한다. 물론 플랫폼을 어떻게 설정하고 애플리케이션이 어디서 실행되는지를 클라우드 서비스 업체에 알려주는 IAC(infrastructure as code)도 맡겨야 한다. 필자가 지금 설명하고 있는 접근법은 데브옵스...

애자일 테스트 자동화 데브옵스 클라우드네이티브

2018.08.30

저녁 8시 새로운 클라우드 네이티브 애플리케이션을 만들기 위한 스트린트를 완료하고자 한다. 데드라인은 정했다. 하지만 애플리케이션을 테스트 그룹에 보내는 데는 2주가 더 걸리고, 그 이후에 배치를 하고 운영팀에 넘겨야 한다. 아이디어에서 운영팀에 넘겨지는 데까지 걸린 시간을 고려하면 애자일 개발이 그다지 민첩하지 않은 것 같다. 뭐가 잘못됐을까? 오늘날의 문제는 클라우드 네이티브 애플리케이션의 테스트와 배치를 위한 자동화가 충분하지 않다는 것이다. 그래서 이 까다로운 사람들이 테스트 과정에서 개입해야만 하고, 이 때문에 작업은 더뎌지고 오류도 더 많아질 가능성이 크다. 게다가 클라우드 네티이브 애플리케이션의 테스트는 어떠해야 하는지 제대로 이해하고 있는 테스터도 충분하지 않아서 테스트를 위해 접근법이나 메커니즘을 파악하는 데도 시간이 지체된다. 클라우드 네이티브 암호화나 ID 및 액세스 관리 시스템을 사용해 애플리케이션의 안정성을 판단하는 역량을 예로 들 수 있다. 아니면 클라우드 네이티브 자동 확장 서비스를 사용해 6대의 서버 인스턴스를 확장하는 것이 충분한 규모인지를 파악하는 역량도 필요하다. 이들 역량은 특정 클라우드 서비스 업체에 특화된 것이다. 많은 전문가가 클라우드 네이티브 애플리케이션을 이렇게 테스트하라고 한다. 이를 통해 클라우드 네이티브란 무엇이고 어떤 것인지, 베스트 프랙티스는 무엇인지, 좋은 클라우드 네이티브 애플리케이션과 그렇지 않은 애플리케이션은 무엇인지 등에 대해 더 많은 것을 알 수 있다는 것. 하지만 필자의 조언은 이런 모든 것을 한꺼번에 없애 버리라는 것이다. 대신 책임을 클라우드 네이티브 애플리케이션 개발자에게 다시 맡겨 테스트를 자동화하는 스크립트를 포함한 테스트 계획까지 수행하도록 한다. 물론 플랫폼을 어떻게 설정하고 애플리케이션이 어디서 실행되는지를 클라우드 서비스 업체에 알려주는 IAC(infrastructure as code)도 맡겨야 한다. 필자가 지금 설명하고 있는 접근법은 데브옵스...

2018.08.30

패치 관리 SW, 무엇이 중요할까? 6가지 고려 사항

오늘날 조직내 사용하는 다양한 소프트웨어 시스템과 IT업체가 발표하는 패치의 양을 고려하면 패치 관리 소프트웨어는 IT환경에서 중요한 기능이다. 잘 맞는 툴을 선택하는 방법을 알아보자. 패치 관리 소프트웨어란? IT부서가 기업 환경에서 실행하는 소프트웨어의 획득, 테스트, 코드 변경 설치에 도움을 주는 소프트웨어가 패치 관리 소프트웨어이다. 또 소프트웨어의 취약점을 평가하고, 패치의 우선순위를 정해 적용하며, 패칭 활동과 상태에 대한 보고서를 생산하는 기능을 갖추고 있다. 가트너에서 IT 서비스 자동화에 대한 조사를 담당하는 애널리스트 테렌스 코스그로브는 “패치 관리와 관련된 변경 관리 문제 해결에 도움을 준다. 또 유지관리 일정 준수에 도움을 주며, 가능한 방해 없이 유지관리 업무를 수행할 수 있다. 그리고 성과와 준수 수준에 대해 알려준다. 이것이 패치 관리 도구가 고수준에서 하는 일이다”고 설명했다. 현재 IT환경에서 패치 관리 소프트웨어는 아주 중요한 역할을 한다. 패치를 성공적으로 배포하는 것이 갈수록 어려워지는 동시에 중요해지고 있기 때문이다(패치는 해커가 익스플로잇 공격을 할 수 있는 코드의 취약점을 해결). 기업과 기관은 여러 다양한 운영체제를 사용하고 있으며, 애플리케이션과 애플리케이션이 실행되는 기기, 운영 장소 또한 온프레미스와 클라우드, 현장, 원격 엔드포인트, 모바일 엔드포인트 등 다양하고 광범위하다. 그 결과 여러 업체가 배포하는 패치를 추적하고, 여기에 우선순위를 부여하는 일이 힘들어졌다. 즉 전자 도구의 도움이 필요한 일이 되었다. 기업과 기관이 이렇게 적절한 패치 적용에 어려움을 겪고 있는 가운데, 공격자들은 계속 알려진 소프트웨어 코드 취약점을 공격하고 있으며, 이는 앞으로도 계속될 전망이다. 정보기술 시장조사 및 컨설팅 회사인 가트너에 따르면, 2020년에는 사고 발생 당시에 보안 및 IT 담당자가 알고 있는 취약점이 공격받은 비중이 99%에 달할 전망이다. 최고의...

CSO 리눅스 엔드포인트 패치 온프레미스 SIEM 취약점 CISO 윈도우 테스트 마이크로소프트 가트너 패치 관리

2018.05.04

오늘날 조직내 사용하는 다양한 소프트웨어 시스템과 IT업체가 발표하는 패치의 양을 고려하면 패치 관리 소프트웨어는 IT환경에서 중요한 기능이다. 잘 맞는 툴을 선택하는 방법을 알아보자. 패치 관리 소프트웨어란? IT부서가 기업 환경에서 실행하는 소프트웨어의 획득, 테스트, 코드 변경 설치에 도움을 주는 소프트웨어가 패치 관리 소프트웨어이다. 또 소프트웨어의 취약점을 평가하고, 패치의 우선순위를 정해 적용하며, 패칭 활동과 상태에 대한 보고서를 생산하는 기능을 갖추고 있다. 가트너에서 IT 서비스 자동화에 대한 조사를 담당하는 애널리스트 테렌스 코스그로브는 “패치 관리와 관련된 변경 관리 문제 해결에 도움을 준다. 또 유지관리 일정 준수에 도움을 주며, 가능한 방해 없이 유지관리 업무를 수행할 수 있다. 그리고 성과와 준수 수준에 대해 알려준다. 이것이 패치 관리 도구가 고수준에서 하는 일이다”고 설명했다. 현재 IT환경에서 패치 관리 소프트웨어는 아주 중요한 역할을 한다. 패치를 성공적으로 배포하는 것이 갈수록 어려워지는 동시에 중요해지고 있기 때문이다(패치는 해커가 익스플로잇 공격을 할 수 있는 코드의 취약점을 해결). 기업과 기관은 여러 다양한 운영체제를 사용하고 있으며, 애플리케이션과 애플리케이션이 실행되는 기기, 운영 장소 또한 온프레미스와 클라우드, 현장, 원격 엔드포인트, 모바일 엔드포인트 등 다양하고 광범위하다. 그 결과 여러 업체가 배포하는 패치를 추적하고, 여기에 우선순위를 부여하는 일이 힘들어졌다. 즉 전자 도구의 도움이 필요한 일이 되었다. 기업과 기관이 이렇게 적절한 패치 적용에 어려움을 겪고 있는 가운데, 공격자들은 계속 알려진 소프트웨어 코드 취약점을 공격하고 있으며, 이는 앞으로도 계속될 전망이다. 정보기술 시장조사 및 컨설팅 회사인 가트너에 따르면, 2020년에는 사고 발생 당시에 보안 및 IT 담당자가 알고 있는 취약점이 공격받은 비중이 99%에 달할 전망이다. 최고의...

2018.05.04

블로그 | 용량이 클라우드 성능을 보장하지 않는다

클라우드 기반 워크로드가 10만 동시 사용자를 지원할 수 있을까? 이를 확인하는 유일한 방법은 성능 테스트뿐이다. 많은 사람이 클라우드의 워크로드는 항상 잘 동작할 것이라 믿는다. 퍼블릭 클라우드는 거의 무한에 가까운 용량의 자원을 이용할 수 있기 때문이다. 물론 사용자는 원하는 만큼 자원을 프로비저닝할 수 있지만, 적절한 용량의 자원을 확보하는 것은 좋은 성능의 시작점에 불과하다. 좋은 클라우드 성능을 확보하기 위해서는 프로덕션에 문제가 생기기를 기다리지 말고 성능 테스트에 선제적으로 나서야 한다. 성능은 용량 외에도 많은 요인에 의해 결정된다. 필자는 테스트를 적극적으로 권장한다. 클라우드 애플리케이션 워크로드를 구축하고 배치하는 데 데브옵스 방법론을 사용한다면, 보안이나 안정성 등등의 테스트는 보통 데브옵스 프로세스의 일부로 지속적인 테스트 툴을 통해 이루어질 것이다. 그렇다면, 성능 테스트는 어떻게 해야 하는가? 사실 성능 테스트는 흔히 성능 문제를 사용자가 확인하고 알려줄 때야 진행한다. 게다가 성능은 보통 사용자 부하가 일정 수준을 초과했을 때 문제가 되며, 애플리케이션에 따라 5,000~10만 동시 세션이 이루어질 때 생긴다. 즉 사용률이 극히 높을 때만 성능 문제를 발견하게 된다. 그리고 이때는 이미 비난을 면하기 어려운 시점이다. 최근 주목받고 있는 베스트 프랙티스는 성능 테스트를 데브옵스나 클라우드 마이그레이션 프로세스에 포함시키는 것이다. 테스트 과정에 성능 테스트를 추가해 애플리케이션 워크로드와 연결된 데이터베이스가 사용자가 예상하는 수준을 넘는 부하를 어떻게 처리하는지 확인한다. 이를 위해서는 성능 테스트 툴이 애플리케이션과 다른 데브옵스 툴, 그리고 애플리케이션을 배치할 클라우드 플랫폼과 호환되어야 한다. 물론 쓸만한 툴만 있다고 끝나는 것은 아니다. 올바른 테스트 프로세스를 설계할 테스트 엔지니어도 필요하다. 아이러니하게도 데브옵스 자체는 프로세스와 툴 세트 모두 테스트에 선제적인 것...

테스트 성능 데브옵스

2018.02.08

클라우드 기반 워크로드가 10만 동시 사용자를 지원할 수 있을까? 이를 확인하는 유일한 방법은 성능 테스트뿐이다. 많은 사람이 클라우드의 워크로드는 항상 잘 동작할 것이라 믿는다. 퍼블릭 클라우드는 거의 무한에 가까운 용량의 자원을 이용할 수 있기 때문이다. 물론 사용자는 원하는 만큼 자원을 프로비저닝할 수 있지만, 적절한 용량의 자원을 확보하는 것은 좋은 성능의 시작점에 불과하다. 좋은 클라우드 성능을 확보하기 위해서는 프로덕션에 문제가 생기기를 기다리지 말고 성능 테스트에 선제적으로 나서야 한다. 성능은 용량 외에도 많은 요인에 의해 결정된다. 필자는 테스트를 적극적으로 권장한다. 클라우드 애플리케이션 워크로드를 구축하고 배치하는 데 데브옵스 방법론을 사용한다면, 보안이나 안정성 등등의 테스트는 보통 데브옵스 프로세스의 일부로 지속적인 테스트 툴을 통해 이루어질 것이다. 그렇다면, 성능 테스트는 어떻게 해야 하는가? 사실 성능 테스트는 흔히 성능 문제를 사용자가 확인하고 알려줄 때야 진행한다. 게다가 성능은 보통 사용자 부하가 일정 수준을 초과했을 때 문제가 되며, 애플리케이션에 따라 5,000~10만 동시 세션이 이루어질 때 생긴다. 즉 사용률이 극히 높을 때만 성능 문제를 발견하게 된다. 그리고 이때는 이미 비난을 면하기 어려운 시점이다. 최근 주목받고 있는 베스트 프랙티스는 성능 테스트를 데브옵스나 클라우드 마이그레이션 프로세스에 포함시키는 것이다. 테스트 과정에 성능 테스트를 추가해 애플리케이션 워크로드와 연결된 데이터베이스가 사용자가 예상하는 수준을 넘는 부하를 어떻게 처리하는지 확인한다. 이를 위해서는 성능 테스트 툴이 애플리케이션과 다른 데브옵스 툴, 그리고 애플리케이션을 배치할 클라우드 플랫폼과 호환되어야 한다. 물론 쓸만한 툴만 있다고 끝나는 것은 아니다. 올바른 테스트 프로세스를 설계할 테스트 엔지니어도 필요하다. 아이러니하게도 데브옵스 자체는 프로세스와 툴 세트 모두 테스트에 선제적인 것...

2018.02.08

설계·개발·테스트에 유용한 14가지 API 관리 툴

소프트웨어 구성 요소가 기능을 수행하거나 데이터를 공유하기 위해 다른 구성 요소에 접근하도록 개발된 API는 지난 10년 동안 기술이 입증됐다. 이후 API는 트윌로(Twilio)와 스트라이프(Stripe) 같은 업체가 단일 핵심 API를 지원해 수십억 달러의 가치를 인정받았으며 매일 사용하는 많은 앱과 서비스의 중추를 형성하도록 하면서 애플리케이션을 설계하고 배포하는 방식을 바꿔놓았다. 여기 인기 있는 상용 소프트웨어의 무료 버전과 무료 오픈소스 대안 등 현재 시장에 나와 있는 유용한 API 관리 툴을 소개한다. 1. AWS API 게이트웨이 클라우드 컴퓨팅의 거물 AWS는 API 게이트웨이 서비스에 무료 티어를 제공한다. 무료 서비스는 월 100만 API 호출의 사용 할당량으로 제한되지만, 이 정도면 쓸 만하다. 풀팻(full-fat) 버전을 사용하면 개발자가 EC2, 람다 또는 다른 웹 애플리케이션과 같이 널리 쓰이는 AWS 서비스에서 실행되는 애플리케이션용 API를 작성할 수 있다. 이 서비스에는 버전 제어, 모니터링, 트래픽 관리 기능이 포함돼 있다. 물론 이것은 AWS 클라우드 인프라에서 애플리케이션을 실행하는 개발자에게 가장 적합하다. 2. IBM API 커넥트 IBM은 상용 API 관리 툴 이외에 무료 티어 옵션도 제공한다. API 커넥트를 사용하면 개발자가 API를 만들고 이를 라이브 코드에 연결할 수 있다. 또한 리포지토리로 사용할 수 있고 정책을 설정하고 소비 분석을 완료할 수 있는 API 관리 콘솔이 있다. 무료 티어는 AWS보다 덜 관대하며 한 달에 API 호출 수가 5만 건이다. 3. 아피지 이 분야에서 가장 큰 성공 사례 중 하나는 아피지(Apigee)다. 아피지 라즈 싱과 라비 찬드라가 2004년에 산타클라라에 설립한 업체로 2016년에 구글이 6억 2,500만 달러에 인수했다. 아피지는 신속한 설계부터 배포까지의 파이프라인은 ...

구글 IBM API 커넥트 Apigee Kong 포스트맨 런스코프 API메트릭스 모커블.io 로더.io 스웨거 델 부미 제이슨스텁 AWS API 게이트웨이 뮬소프트 오라클 IBM AWS 테스트 모니터링 설계 무료 API 상용 아피지 아피아리 JsonStub

2018.02.02

소프트웨어 구성 요소가 기능을 수행하거나 데이터를 공유하기 위해 다른 구성 요소에 접근하도록 개발된 API는 지난 10년 동안 기술이 입증됐다. 이후 API는 트윌로(Twilio)와 스트라이프(Stripe) 같은 업체가 단일 핵심 API를 지원해 수십억 달러의 가치를 인정받았으며 매일 사용하는 많은 앱과 서비스의 중추를 형성하도록 하면서 애플리케이션을 설계하고 배포하는 방식을 바꿔놓았다. 여기 인기 있는 상용 소프트웨어의 무료 버전과 무료 오픈소스 대안 등 현재 시장에 나와 있는 유용한 API 관리 툴을 소개한다. 1. AWS API 게이트웨이 클라우드 컴퓨팅의 거물 AWS는 API 게이트웨이 서비스에 무료 티어를 제공한다. 무료 서비스는 월 100만 API 호출의 사용 할당량으로 제한되지만, 이 정도면 쓸 만하다. 풀팻(full-fat) 버전을 사용하면 개발자가 EC2, 람다 또는 다른 웹 애플리케이션과 같이 널리 쓰이는 AWS 서비스에서 실행되는 애플리케이션용 API를 작성할 수 있다. 이 서비스에는 버전 제어, 모니터링, 트래픽 관리 기능이 포함돼 있다. 물론 이것은 AWS 클라우드 인프라에서 애플리케이션을 실행하는 개발자에게 가장 적합하다. 2. IBM API 커넥트 IBM은 상용 API 관리 툴 이외에 무료 티어 옵션도 제공한다. API 커넥트를 사용하면 개발자가 API를 만들고 이를 라이브 코드에 연결할 수 있다. 또한 리포지토리로 사용할 수 있고 정책을 설정하고 소비 분석을 완료할 수 있는 API 관리 콘솔이 있다. 무료 티어는 AWS보다 덜 관대하며 한 달에 API 호출 수가 5만 건이다. 3. 아피지 이 분야에서 가장 큰 성공 사례 중 하나는 아피지(Apigee)다. 아피지 라즈 싱과 라비 찬드라가 2004년에 산타클라라에 설립한 업체로 2016년에 구글이 6억 2,500만 달러에 인수했다. 아피지는 신속한 설계부터 배포까지의 파이프라인은 ...

2018.02.02

데브옵스로 변화하는 모니터링 환경··· 고려 사항은?

데브옵스는 많은 면에서 과거의 실행 방식에서 탈피해 현대적으로 진화한 개념이다. 과거의 폭포수 개발 방법론은 너무 느렸고 프로덕션으로의 배포 간격이 너무 길었으며 개발자와 운영자를 분리하는 전통은 변화를 가로막는 장애물이었다. 데브옵스는 약간의 철학, 그리고 다양한 툴의 조합으로 속도와 효율성을 대대적으로 끌어올린다. 데브옵스는 애플리케이션 라이프사이클의 모든 단계에 더 많은 자동화를 구현하므로 새로운 애플리케이션의 출시 기간이 대폭 단축된다. 그러나 이러한 모든 변화에는 그만큼 큰 영향이 따른다. 애플리케이션 개발, 테스트, 배포를 위한 요구 사항이 구조적으로 바뀌면서 현대적인 모니터링 시스템에 대한 요구 사항 역시 변화하고 있다. 모니터링은 데브옵스 방법론을 도입할 때 자주 간과되는 분야 중 하나다. 코드베이스가 비교적 정적인 운영에는 민감한 모니터링 솔루션이 필요가 없었다. 그래서 과거 일반적으로 사용된 모니터링 솔루션은 프로덕션 환경의 기본적인 통계에 대한 시야만 제공했다. 하지만 잦은 코드 변경이 일반화되면서 프로덕션 환경에 대한 더 종합적인 실시간 시야가 필요해졌다. 실시간 스트리밍, 과거 기록 재생, 우수한 시각화와 같은 기능이 애플리케이션과 서비스 모니터링의 핵심 구성 요소로 부상했다. 현대적 환경을 위한 모니터링 데브옵스는 개발부터 QA, 프로덕션에 이르기까지 전체 애플리케이션 라이프사이클의 속도를 높여준다. 이제 비교적 정적인 프로덕션 애플리케이션이라 해도 하루에 여러 번 업데이트된다. 여기에는 많은 과제가 수반된다. 이 중에는 오래된 과제도 있고 새로운 과제도 있다. 개발자는 이 상황에 적응하기 위해 더욱 종합적인 자동화 테스트를 작성해서 QA의 자동화를 추구해야 했다. QA는 지속적 통합에 의존하게 됐는데, 지속적 통합은 새 코드가 커밋될 때마다 모든 단위 및 통합 테스트를 자동으로 실행한다. 이제 모니터링 시스템은 데브옵스 툴체인의 모든 부분을 더욱 정확히 인식한다. 데...

테스트 모니터링 QA 프로덕션 배포 데브옵스

2017.10.13

데브옵스는 많은 면에서 과거의 실행 방식에서 탈피해 현대적으로 진화한 개념이다. 과거의 폭포수 개발 방법론은 너무 느렸고 프로덕션으로의 배포 간격이 너무 길었으며 개발자와 운영자를 분리하는 전통은 변화를 가로막는 장애물이었다. 데브옵스는 약간의 철학, 그리고 다양한 툴의 조합으로 속도와 효율성을 대대적으로 끌어올린다. 데브옵스는 애플리케이션 라이프사이클의 모든 단계에 더 많은 자동화를 구현하므로 새로운 애플리케이션의 출시 기간이 대폭 단축된다. 그러나 이러한 모든 변화에는 그만큼 큰 영향이 따른다. 애플리케이션 개발, 테스트, 배포를 위한 요구 사항이 구조적으로 바뀌면서 현대적인 모니터링 시스템에 대한 요구 사항 역시 변화하고 있다. 모니터링은 데브옵스 방법론을 도입할 때 자주 간과되는 분야 중 하나다. 코드베이스가 비교적 정적인 운영에는 민감한 모니터링 솔루션이 필요가 없었다. 그래서 과거 일반적으로 사용된 모니터링 솔루션은 프로덕션 환경의 기본적인 통계에 대한 시야만 제공했다. 하지만 잦은 코드 변경이 일반화되면서 프로덕션 환경에 대한 더 종합적인 실시간 시야가 필요해졌다. 실시간 스트리밍, 과거 기록 재생, 우수한 시각화와 같은 기능이 애플리케이션과 서비스 모니터링의 핵심 구성 요소로 부상했다. 현대적 환경을 위한 모니터링 데브옵스는 개발부터 QA, 프로덕션에 이르기까지 전체 애플리케이션 라이프사이클의 속도를 높여준다. 이제 비교적 정적인 프로덕션 애플리케이션이라 해도 하루에 여러 번 업데이트된다. 여기에는 많은 과제가 수반된다. 이 중에는 오래된 과제도 있고 새로운 과제도 있다. 개발자는 이 상황에 적응하기 위해 더욱 종합적인 자동화 테스트를 작성해서 QA의 자동화를 추구해야 했다. QA는 지속적 통합에 의존하게 됐는데, 지속적 통합은 새 코드가 커밋될 때마다 모든 단위 및 통합 테스트를 자동으로 실행한다. 이제 모니터링 시스템은 데브옵스 툴체인의 모든 부분을 더욱 정확히 인식한다. 데...

2017.10.13

칼럼 | 클라우드 전문가와 까막눈을 구분하는 간단 자가 테스트

클라우드 컴퓨팅은 IT업계에서 이미 널리 알려진 화두가 됐지만, 정말 클라우드에 정통한 전문가는 몇 되지 않을 것이다. 대부분은 단순한 추종자이거나 겉핥기로만 알고 있을 뿐이다. 클라우드 컴퓨팅을 얼마나 알고 있는지 쉽게 진단할 수 있는 간단한 테스트를 통해 스스로 질문을 던져보자. 1. 서버리스(serverless)가 실제로 서버가 없음을 의미하지 않는다는 것을 알고 있다. +10점. 2. ‘클라우드 형성(cloud formation)’은 비구름의 집합이라고 생각한다. -5점 3. ‘클라우드 거버넌스(cloud governance)’는 AWS가 국가 법률을 준수하는 것을 의미한다. -5점 4. ‘신원 관리(identity management)’는 지갑이나 수첩에 대한 것이다. -5점 5. 퀴베르네시스(Kubernetes)는 신흥 종교가 아니라 컨테이너-오케이스트레이션 도구라는 것을 알고 있다. +15점 6. 클라우드옵스(cloudops)는 클라우드 컴퓨팅의 반대말이라고 생각한다. -5점 7. 20가지 AWS 서비스의 이름을 댈 수 있고, 이 서비스가 사용하는 API를 10개 이상 말할 수 있다. +20점 8. 오늘 ‘클라우드’라는 단어를 100번 넘게 말했다. -10점 결과를 진단해보자. • 45 점 = 클라우드 컴퓨팅을 잘 알고 있다. • 25~40 = 대략적으로는 알고 있다. • 1~20 = 본업에 충실하라. • 0~ -25 = 클라우드 지식이 부족하다는 사실을 들키지 않도록 주의할 것. • -30 = 클라우드 컴퓨팅을 전혀 모르는 사람. 아직도 필자는 클라우드 컴퓨팅을 전혀 모르면서도 클라우드 기술에 대한 중요한 결정을 내리는 사람들을 많이 만난다. 관련 분야의 종사자라면 간단한 테스트 결과에 따라 클라우드 지식을 보완해보는 것이 좋겠다. editor@itworld....

클라우드컴퓨팅 AWS 테스트 퀴베르네시스 클라우드옵스

2017.09.07

클라우드 컴퓨팅은 IT업계에서 이미 널리 알려진 화두가 됐지만, 정말 클라우드에 정통한 전문가는 몇 되지 않을 것이다. 대부분은 단순한 추종자이거나 겉핥기로만 알고 있을 뿐이다. 클라우드 컴퓨팅을 얼마나 알고 있는지 쉽게 진단할 수 있는 간단한 테스트를 통해 스스로 질문을 던져보자. 1. 서버리스(serverless)가 실제로 서버가 없음을 의미하지 않는다는 것을 알고 있다. +10점. 2. ‘클라우드 형성(cloud formation)’은 비구름의 집합이라고 생각한다. -5점 3. ‘클라우드 거버넌스(cloud governance)’는 AWS가 국가 법률을 준수하는 것을 의미한다. -5점 4. ‘신원 관리(identity management)’는 지갑이나 수첩에 대한 것이다. -5점 5. 퀴베르네시스(Kubernetes)는 신흥 종교가 아니라 컨테이너-오케이스트레이션 도구라는 것을 알고 있다. +15점 6. 클라우드옵스(cloudops)는 클라우드 컴퓨팅의 반대말이라고 생각한다. -5점 7. 20가지 AWS 서비스의 이름을 댈 수 있고, 이 서비스가 사용하는 API를 10개 이상 말할 수 있다. +20점 8. 오늘 ‘클라우드’라는 단어를 100번 넘게 말했다. -10점 결과를 진단해보자. • 45 점 = 클라우드 컴퓨팅을 잘 알고 있다. • 25~40 = 대략적으로는 알고 있다. • 1~20 = 본업에 충실하라. • 0~ -25 = 클라우드 지식이 부족하다는 사실을 들키지 않도록 주의할 것. • -30 = 클라우드 컴퓨팅을 전혀 모르는 사람. 아직도 필자는 클라우드 컴퓨팅을 전혀 모르면서도 클라우드 기술에 대한 중요한 결정을 내리는 사람들을 많이 만난다. 관련 분야의 종사자라면 간단한 테스트 결과에 따라 클라우드 지식을 보완해보는 것이 좋겠다. editor@itworld....

2017.09.07

강은성의 보안 아키텍트 | 소프트웨어 보안과 보안 개발프로세스(2)

이번 칼럼에서는 지난 칼럼에 이어 보안 소프트웨어 개발생명주기(SSDL, Secure Software Development Lifecycle)를 좀더 세부적으로 살펴보려고 한다. 상용 소프트웨어를 개발하는 회사들은 소프트웨어 기획 - 요구사항 정의 - 설계 - 구현 - 시험(검증) - 출시 - 유지보수(운영)를 뼈대로 하는 개발 프로세스를 갖고 있기 마련이다. SSDL에서는 각 개발단계에서 해야 할 보안활동을 정의한다. 개발단계별 대표적인 보안활동으로는 보안요구사항 작성(요구사항 정의단계), 위협모델링(설계단계), 보안 코딩, 정적 분석, 보안 코드리뷰(구현단계), 보안 테스트, Fuzz 테스트, 동적 분석, 침투 테스트(시험단계), 최종 보안점검(출시단계), 제품보안 이슈 대응(유지보수단계) 등이 있다. [그림 1] 마이크로소프트의 Security Development Lifecycle(SDL) 요구사항 정의단계에서는 소프트웨어를 개발할 때 구현할 기능요구사항을 주로 작성하지만, 비기능적인 요구사항도 작성하는 것이 보통이다. 여기에는 품질, 성능, 운영, 인터페이스, 보안 요구사항이 포함된다. 보안요구사항의 예로는 다음과 같은 것들이 있다. ① 익명 사용자를 허용하지 않는다. ② 일반 사용자 계정으로는 관리 기능을 수행할 수 없다. ③ 원격에서 관리자 계정으로 시스템 접속 시 2단계 인증을 적용한다. ④ 전화번호와 거주지 상세 주소는 저장 및 전송 시 암호화한다. ⑤ 데이터 암호화 키는 별도의 하드웨어 보안모듈(HSM)에 저장한다. ⑥ 전사 서비스 개인정보 및 정보보호 정책에 따라 암호화 여부, 방법, 수준을 결정한다. ⑦ SSDL의 모든 보안활동을 적용한다. 보안요구사항은 기능요구사항과 마찬가지로 특정 기능이나 데이터에 대한 것(①~⑤)일 수도 있고, 여러 사항에 적용되는 정책적인 것(⑥~⑦)일 수도 있다. 어떤 것이든 요구사항 정의서(SRS, Software Requirement Specification)에 ...

CSO 개발프로세스 소프트웨어 보안 SSDL 보안 아키텍트 강은성 CISO 테스트 마이크로소프트 보안 소프트웨어 개발생명주기

2016.03.17

이번 칼럼에서는 지난 칼럼에 이어 보안 소프트웨어 개발생명주기(SSDL, Secure Software Development Lifecycle)를 좀더 세부적으로 살펴보려고 한다. 상용 소프트웨어를 개발하는 회사들은 소프트웨어 기획 - 요구사항 정의 - 설계 - 구현 - 시험(검증) - 출시 - 유지보수(운영)를 뼈대로 하는 개발 프로세스를 갖고 있기 마련이다. SSDL에서는 각 개발단계에서 해야 할 보안활동을 정의한다. 개발단계별 대표적인 보안활동으로는 보안요구사항 작성(요구사항 정의단계), 위협모델링(설계단계), 보안 코딩, 정적 분석, 보안 코드리뷰(구현단계), 보안 테스트, Fuzz 테스트, 동적 분석, 침투 테스트(시험단계), 최종 보안점검(출시단계), 제품보안 이슈 대응(유지보수단계) 등이 있다. [그림 1] 마이크로소프트의 Security Development Lifecycle(SDL) 요구사항 정의단계에서는 소프트웨어를 개발할 때 구현할 기능요구사항을 주로 작성하지만, 비기능적인 요구사항도 작성하는 것이 보통이다. 여기에는 품질, 성능, 운영, 인터페이스, 보안 요구사항이 포함된다. 보안요구사항의 예로는 다음과 같은 것들이 있다. ① 익명 사용자를 허용하지 않는다. ② 일반 사용자 계정으로는 관리 기능을 수행할 수 없다. ③ 원격에서 관리자 계정으로 시스템 접속 시 2단계 인증을 적용한다. ④ 전화번호와 거주지 상세 주소는 저장 및 전송 시 암호화한다. ⑤ 데이터 암호화 키는 별도의 하드웨어 보안모듈(HSM)에 저장한다. ⑥ 전사 서비스 개인정보 및 정보보호 정책에 따라 암호화 여부, 방법, 수준을 결정한다. ⑦ SSDL의 모든 보안활동을 적용한다. 보안요구사항은 기능요구사항과 마찬가지로 특정 기능이나 데이터에 대한 것(①~⑤)일 수도 있고, 여러 사항에 적용되는 정책적인 것(⑥~⑦)일 수도 있다. 어떤 것이든 요구사항 정의서(SRS, Software Requirement Specification)에 ...

2016.03.17

"실패해도 괜찮다" 익스피디아의 실험-학습 문화

온라인 여행업체 익스피디아에게는 좋은 아이디어도 나쁜 아이디어도 없다. 모든 아이디어는 테스트라는 검증 과정을 거쳐 옥석이 가려지기 때문이다. 익스피디아의 호주 지사 설립 10주년을 기념하며 지난해 새로 인수한 브랜드 왓이프(Wotif)에 대한 청사진을 그리기 위해 시드니를 방문한 익스피디아 CEO 겸 글로벌 사장인 다라 코스로우샤이가 빠른 혁신의 비결을 공개했다. 익스피디아는 50개 버전의 웹사이트를 운영하며 매일같이 고객들에게 정보를 업데이트 하고 있다. 익스피디아의 엔지니어링 팀에서는 작은 변화도 놓치지 않고 데이터 인사이트(data insights)를 활용하여 고객들이 가장 선호하는 버전이 무엇인지 알아낸 후 그 요구에 맞추기 위해 노력한다. “추측할 필요 없다. 궁금하면 테스트 해보면 알 수 있기 때문이다”라고 코스로우샤이는 말했다. “우리의 경험에 따르면, 전체 아이디어 중 효과가 있는 것이 1/3, 소비자의 별다른 관심을 받지 못하는 것이 1/3, 그리고 실패로 돌아가는 것이 나머지 1/3이다. 아주 작은 차이로도 아이디어의 성패가 갈린다. 중요한 건 어떤 기능이 좋고 어떤 기능이 나쁜지에 대한 피드백을 해 줄 수 있는 사용자를 찾는 것이다”고 코스로우샤이는 밝혔다. 익스피디아의 이러한 실험-학습 문화에서 배울만한 5가지 교훈들을 추려보았다. 1. 실패를 피할 수는 없다. 테스트 결과를 투명하게 공개하라 코스로우샤이에 따르면 익스피디아가 진행하는 테스트의 2/3은 실패로 돌아간다. 하지만 괜찮다. “항상 실패를 포용하려고 노력함으로써 실패를 수용하는 문화를 만들기 위해 노력하고 있다. 중요한 건 속도와 혁신이다. 때문에 어떤 실험이 실패할 때마다 리더십팀의 모두에게 이 사실을 알린다. 또 투명한 문화를 만들기 위해 노력한다”고 그는 말했다. 특히 매달 열리는 ‘프로덕트 데이(product day)’를 통해 이런 투명...

혁신 온라인 여행 실험 마케터 IT개발 교훈 도전 학습 CMO 실패 테스트 익스피디아

2015.10.23

온라인 여행업체 익스피디아에게는 좋은 아이디어도 나쁜 아이디어도 없다. 모든 아이디어는 테스트라는 검증 과정을 거쳐 옥석이 가려지기 때문이다. 익스피디아의 호주 지사 설립 10주년을 기념하며 지난해 새로 인수한 브랜드 왓이프(Wotif)에 대한 청사진을 그리기 위해 시드니를 방문한 익스피디아 CEO 겸 글로벌 사장인 다라 코스로우샤이가 빠른 혁신의 비결을 공개했다. 익스피디아는 50개 버전의 웹사이트를 운영하며 매일같이 고객들에게 정보를 업데이트 하고 있다. 익스피디아의 엔지니어링 팀에서는 작은 변화도 놓치지 않고 데이터 인사이트(data insights)를 활용하여 고객들이 가장 선호하는 버전이 무엇인지 알아낸 후 그 요구에 맞추기 위해 노력한다. “추측할 필요 없다. 궁금하면 테스트 해보면 알 수 있기 때문이다”라고 코스로우샤이는 말했다. “우리의 경험에 따르면, 전체 아이디어 중 효과가 있는 것이 1/3, 소비자의 별다른 관심을 받지 못하는 것이 1/3, 그리고 실패로 돌아가는 것이 나머지 1/3이다. 아주 작은 차이로도 아이디어의 성패가 갈린다. 중요한 건 어떤 기능이 좋고 어떤 기능이 나쁜지에 대한 피드백을 해 줄 수 있는 사용자를 찾는 것이다”고 코스로우샤이는 밝혔다. 익스피디아의 이러한 실험-학습 문화에서 배울만한 5가지 교훈들을 추려보았다. 1. 실패를 피할 수는 없다. 테스트 결과를 투명하게 공개하라 코스로우샤이에 따르면 익스피디아가 진행하는 테스트의 2/3은 실패로 돌아간다. 하지만 괜찮다. “항상 실패를 포용하려고 노력함으로써 실패를 수용하는 문화를 만들기 위해 노력하고 있다. 중요한 건 속도와 혁신이다. 때문에 어떤 실험이 실패할 때마다 리더십팀의 모두에게 이 사실을 알린다. 또 투명한 문화를 만들기 위해 노력한다”고 그는 말했다. 특히 매달 열리는 ‘프로덕트 데이(product day)’를 통해 이런 투명...

2015.10.23

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.4.0.6