2015년 8월 25일 화요일

애플리케이션 모의 해킹(침투 시험), 언제, 어떻게 실행할 것인가

보안을 위해 네트워크뿐만 아니라 애플리케이션 테스트를 강화해야할 필요성이 지속적으로 제기되고 있습니다. 모의 해킹(침투시험: Penetration Testing)은 애플리케이션의 보안상 취약점을 파악하는 조사 방법으로, 애플리케이션 기능, 리소스 가용성 등을 고려하여 애플리케이션 테스트를 적시에 수행해야 합니다.

  • 보안은 기밀성 (Confidentiality), 가용성 (Availability), 안정성 ( Integrity) 으로 요약할 수 있음
  • 모의 해킹 (Penetration Testing) 은 악성사용자가 애플리케이션의 보안을 위협할 수 있는 취약점을 조사하는 테스팅 방법임
  • 애플리케이션 모의 해킹의 최고 방법론으로 OWASP Top Ten 이 있음
  • 팀의 생애주기 , 애플리케이션 기능 , 리소스 가용성 등을 고려하여 테스트를 수행하는 적기는 개발 팀마다 다름

애자일 방법론 vs. 폭포수(Waterfall) 방법론, 10가지 주요 차이점

폭포수(Waterfall) 방법론은 요구사항을 완벽하게 취합하여 계획을 잘 세우고 그 계획대로 진행하는 방법론이며 애자일(Agile)은 요구사항을 초기에 완벽하게 취합하는 것이 불가능하기 때문에 개발 주기를 반복하고 고객과 소통하면서 소프트웨어의 품질을 발전시키는 방법론으로 이 두 가지 방법론의 차이점을 바탕으로 개발 조직에게 적합한 방법론을 적용하는 것이 중요합니다.

  • 폭포수 방법론은 1970 년에 창안된 첫 번째 소프트웨어 개발 방법론이며 애자일 방법론은 폭포수 방법론의 과도한 문서업무 때문에 내재하는 낭비를 줄이고자 1990 년대에 고안된 방법론임
  • 폭포수와 애자일 방법론의 개발전략의 10 가지 기본적인 차이점을 통해 프로젝트에 최적화된 방법론을 적용할 수 있도록 살펴보도록 함

  1. 폭포수 : 미리 정의된 요구사항 vs. 애자일 : 프로젝트 과정에 걸쳐 진화하는 요구사항
  2. 폭포수 : 빅뱅 (Big Band) 릴리즈 vs. 애자일 : 빠른 릴리즈
  3. 폭포수 : 계획 중심 vs. 애자일 : 학습 중심
  4. 폭포수 : 고객과의 드문 의사소통 vs. 애자일 : 고객과의 지속적인 의사소통
  5. 폭포수 : 단계별 중간물 전달 vs. 애자일 : 진행하고 있는 작업본을 지속적으로 전달
  6. 폭포수 : 수평적인 단계별로 개발 vs. 애자일 : 기능별 수직 개발
  7. 폭포수 : 프로그래밍은 단순히 공사와 같음 vs. 애자일 : 프로그래밍은 디자인의 확장임
  8. 폭포수 : 마지막에 통합 vs. 애자일 : 초기와 이후 잦은 통합
  9. 폭포수 : 마지막 단계 테스트 vs. 애자일 : 초기와 이후 잦은 테스트
  10. 폭포수 : 문서화된 진행 사항 진단 vs. 애자일 : 개발하고 있는 소프트웨어로 진행 사항 진단

개발방법론이 개발직무의 동기유발성에 미치는 영향에 대한 분석

애자일방법론은 소프트웨어 개발의 새로운 트렌드입니다 . 오늘날 기업은 빠르게 사용자의 요구변화에 효과적으로 대처하기 위한 노력으로 애자일 방법론을 채택하고 있으며 , 대부분의 경우 , 소프트웨어 개발에 많은 향상이 발생하였습니다 . 일부 연구에서는 , 소프트웨어 개발자의 동기부여가 향상에 기여하는 요인이라고 언급하였습니다 . 그러나 애자일 방법론의 어떤 측면으로 인해 그들이 동기부여가 되지는 아직 알 수 없었습니다 . 본 연구의 목적은 전통적 개발방법론과 애자일 방법론 소프트웨어 개발자의 직무특성 간 잠재적인 동기에 대해 조사 비교하는데 있습니다 . 경험적 분석을 위한 연구 자료는 국내 4 곳의 IT 기업의 77 명의 개발자에 의해 수집되었으며 , 방법론에 따라 개발자의 잠재적인 동기부여에 큰 차이가 있다고 분석되어졌습니다 . 애자일 개발자는 타 방법론 개발자에 비해 더 동기부여가 될 수 있으며 , 개발자의 직무특성이 방법론에 따라 차이가 있는 것을 자세히 보여주었습니다 .