2016년 4월 6일 수요일

하이브리드 앱을 위한 보안 기술

최근, 캐나다의 한 청소년 보호용 앱이 서비스를 긴급 중단한 사건이 있었다.
캐나다의 한 비영리 해킹연구 단체가 해당 앱을 분석한 결과, 심각한 보안 문제가 발견됐기 때문이다. 26 가지 사생활 및 보안성 취약 문제를 발견했는데, 전부 심각한 수준의 문제였고, 이용자의 정보를 일일이 암호화하지 않아, 학생과 학부모 양쪽의 정보가 새나가거나 해커가 스마트폰을 원격 조정할 수 있다는 위험성까지 제기되었다.
만약 해킹을 당할 경우, 스마트폰을 사용하는 학생의 모습이 약간의 시차를 두고 제 3 자에게 실시간 노출될 수 있어, 청소년을 보호하기 위해 만든 앱이 오히려 아이들을 해킹위험에 노출시킬 수 도 있는 우려까지 있는 것이다. 
이처럼 스마트폰의 app 은 사용자의 개인의 정보가 다수 담겨 있는 만큼, 보안에 있어 중요성에 대한 인식이 더 요구되고 있다. 그 중, 최근 트렌드로 자리 잡고 있는 hybrid app 의 보안기술과 관련해, 보안전문가 장성균 엔지니어에게 자세한 설명을 구했다.



Q: App 의 종류와 특징은 어떤 것들이 있을까요?
일반 사용자들에게는 모두 같은 종류의 app 이라고 하겠지만, 공학도의 입장에서는 각각의 app 이 서로 다른 형태로 구성되어 있습니다. App 개발과정은 제작부터 개발까지의 과정을 거쳐서 만들어지게 되는데요. 제작은 기획부터 개발까지 하나의 서비스를 완전 체로 만들어내는 것을 말하며, 개발은 결정된 기획과 디자인을 바탕으로 소프트웨어로 구현해 내는 것을 말합니다. 스마트폰의 app 사용자는 개인의 정보가 많이 담겨 있는 스마트폰의 ‘정보보안’ 부분에 민감하게 반응할 수 밖에 없는데요. 최근 보안뉴스에 “전체 안드로이드 기기의 60% 이상에 영향을 미치는 모바일 악성코드 Triada 도 발견됐다.” 라는 기사가 기재되기도 했습니다. (2016-03-14 일자 )
그만큼 아직 보안의 문제는 해결해야 할 부분이 많다는 이야기죠. [ 그림 1 참조 ]


소프트웨어 설계 - 아키텍처 편

애자일과 솔루션 개발이 주목을 받으면서 확장성이 좋고 오래 지속될 수 있는 아키텍처 설계가 요구되고 있다. 좋은 아키텍처가 소프트웨어 효율성을 높일 수 있다는 것은 누구나 아는 사실이지만 아키텍처 설계 과정이 너무 복잡해 쉽게 접근하지 못했던 것이 사실이다.
아키텍처 설계는 사용자 요구사항을 직접 듣고 시스템 구조로 정의하는 것이지만 최근에는 만들고자 하는 시스템뿐만 아니라 외부 시스템과 연계할 수 있는 클라우드나 프레임워크를 반영한 아키텍처 설계가 많아지는 추세다. 사용자 중심으로 방향이 변하고 있는 최근의 개발 트렌드처럼 기술보다는 비즈니스와 사용자 중심으로 아키텍처를 설계하고 있다.
시스템 구축을 위해 밑그림으로 정의하는 아키텍처의 역할은 분명 변하지 않는다. 다만, 아키텍처 본연의 역할을 하면서 최신 개발 트렌드를 반영한 아키텍처가 필요한 시점이기 때문에 이에 대한 준비와 적응이 필요하다.
이번 공학트렌드에서는 아키텍처의 종류와 역할에 대해 정리해보고, 최신 개발 트렌드를 반영한 아키텍처 설계를 위해 클라우드 적용 예를 살펴보기로 한다. 내부는 더 견고하고 외부에는 더 유연한 아키텍처를 설계하는데 좋은 가이드가 될 것으로 기대한다.

아키텍처의 종류와 역할
프로젝트에서는 아키텍처에 대한 논의가 많이 이루어진다. 아키텍처에 대한 정의는 다양한 의미와 용도로 사용되지만 “시스템 구축을 위한 시스템 전체 구조를 정의하고, 시스템을 구성하는 컴포넌트와 데이터 간 관계를 정의한다” 라는 것이 일반적으로 얘기되는 아키텍처의 정의이다.
초창기 아키텍처는 당장 필요한 시스템의 구조만 나타냈지만 현재는 다양하게 변하는 비즈니스 환경에 따라 유연하게 대처할 수 있는 장기적 관점의 아키텍처가 요구되는 추세다.
아키텍처 설계는 비즈니스 요구사항과 전략을 하나의 그림으로 나타내는 것으로, 사용자와 의사소통을 위한 가장 중요한 작업이다. 외부의 소프트웨어 , 시스템과 연계하는 경우가 많아지는 요즘은 아키텍처 설계의 중요성이 더 강조되고 있다.
아키텍처의 종류
아키텍처 설계를 보면, 사람이나 경우에 따라 다양한 형태로 그려진다. 아키텍처는 성격에 따라 비즈니스 아키텍처 (Business Architecture), 시스템 아키텍처 (System Architecture), 소프트웨어 아키텍처 (Software Architecture), 테크니컬 아키텍처 (Technical Architecture), 데이터 아키텍처 (Data Architecture) 등으로 나눌 수 있다 (< 그림 1> 참조 ). 이 외에도 비즈니스 아키텍처, 어플리케이션 아키텍처, 기술 아키텍처, 데이터 아키텍처 등 4 개 관점으로 정의하는 엔터프라이즈 아키텍처 (Enterprise Architecture) 가 있다.


2016년 4월 4일 월요일

소프트웨어공학센터 직원(무기계약직) 채용 공고

안녕하세요. 소프트웨어공학센터입니다. 

정보통신산업진흥원 부설 소프트웨어공학센터에서
진취적이고 창의적인 인재를 모집합니다. 


◈ 채용형태
   - 무기계약(전문)직

◈  응시자격 
  o 응시연령 : 제한없음
  o 학력사항 : 제한없음
  o 국가공무원법 제33조에 및 「부패방지 및 국민권익위원회의 설치와 운영에 관한 법률」 
     제82조에 해당되지 않는 사람
  o 남자인 경우 병역법 제76조 제①항의 각호에 해당하지 않은 분
  o 해외여행에 결격사항이 없는 분 

◈ 우대조건
  o 취업보호대상이 되는 분(국가보훈대상자 등)
  o 장애인복지법상 등록장애인
  o 정부 및 공공기관 행정인턴 경험(5개월 이상)이 있는 분
  o 청년고용특별법에 따라 해당자 우대(만 34세 이하, 접수마감일 기준)
  o 저소득층 : 거주지 해당 시․군․구청에 저소득층으로 등록된 분
                   (기초생활보장 수급자, 차상위계층에 속한 사람, 한부모가족 세대주)
  o 이공계, 지방 인재 우대  

◈ 접수방법
   - NIPA 홈페이지(www.nipa.kr)채용공고를 통하여 접수

◈ 서류제출기간 
   - 2016. 03. 29(화) ~ 2016. 04.12(화) 16:00까지



여러분의 많은 관심과 지원 바랍니다.
감사합니다. 



소프트웨어공학센터 직원(대체계약직) 채용 공고

안녕하세요. 소프트웨어공학센터입니다.

정보통신산업진흥원 부설 소프트웨어공학센터에서
진취적이고 창의적인 인재를 모집합니다.



◈ 채용형태
   - 대체계약직

◈ 계약기간
   - 임용예정일로부터 결원사유 해소기간까지(임용일 ~ '17. 03. 31)

◈  응시자격 
  o 응시연령 : 제한없음
  o 학력사항 : 제한없음
  o 국가공무원법 제33조에 및 「부패방지 및 국민권익위원회의 설치와 운영에 관한 법률」
     제82조에 해당되지 않는 사람
  o 남자인 경우 병역법 제76조 제①항의 각호에 해당하지 않은 분
  o 해외여행에 결격사항이 없는 분

◈ 우대조건
  o 취업보호대상이 되는 분(국가보훈대상자 등)
  o 장애인복지법상 등록장애인
  o 정부 및 공공기관 행정인턴 경험(5개월 이상)이 있는 분
  o 청년고용특별법에 따라 해당자 우대(만 34세 이하, 접수마감일 기준)
  o 저소득층 : 거주지 해당 시․군․구청에 저소득층으로 등록된 분
                   (기초생활보장 수급자, 차상위계층에 속한 사람, 한부모가족 세대주)
  o 이공계, 지방 인재 우대

◈ 접수방법
   - NIPA 홈페이지(www.nipa.kr)채용공고를 통하여 접수

◈ 서류제출기간 
   - 2016. 03. 29(화) ~ 2016. 04.12(화) 16:00까지

자세한 내용 살펴보기 →


여러분의 많은 관심과 지원을 바랍니다.
감사합니다.



2016년 3월 31일 목요일

동료검토 계획서

동료검토 계획서란 연구 수행을 통해 창출된 연구결과물이 정의된 요구사항을 충족하는지 이해관계자들과 함께 검토하고 확인하는 동료검토 활동에 대한 계획 및 방법을 정의한 문서이다.

동료검토 계획서에 반드시 포함되어야 할 사항은 다음과 같음
① 개요: 동료검토 적용 범위, 목적, 관련 표준
② 동료검토 활동: 동료검토 절차, 절차 별 수행활동
③ 동료검토 대상 산출물


동료검토 결과 보고서 구성 항목별 작성 방법

※ 동료검토 결과서는 보통 MS Excel등의 툴을 이용하여 작성하므로 표지 및 목차, 테스트 개요 등을 작성하지 않고 한 면에 모든 구성을 표현한다.

1. 동료검토 일반 사항

○ 동료검토 수행 계획(동료검토 일시 및 장소, 참석자 및 참석자 별 역할)을 명시
○ 회의 전 준비자료(검토 대상 산출물, 사전 검토물이나 참조 자료)을 명시
○ 고려사항

  • 동료검토 결과 보고서를 작성하기 위한 표준(사용도구, 표준 표기법, 표준 양식 등)에 맞게 기술
  • 동료검토에 참여할 역할(검토 리더/서기/작성자/발표자/검토자 등)과 참여자를 기술
  • 동료검토회 참석자들의 기술적 검토 관점 및 기준을 기술


2. 동료검토 수행 결과

□ 검토 의견 기술
  • 결함이 발견된 검토 대상 산출물의 위치( 페이지 및 라인 수) 기록
  • 발견된 결함 내용 및 해결 방안을 상세히 기술
  • 결함을 발견한 검토자를 기록
  • 발견된 결함에 대해 검토자가 생각하는 심각성 및 프로젝트 일정 및 비용에 미치는 영향도를 상⋅중⋅하로 표기

□ 조치 결과 기술
  • 동료검토 결과 검토 의견 별 조치 결과 내용을 요약하여 기록
  • 검토 의견에 대해 조치 완료 예정일을 기록
  • 동료검토 의견에 따라 시정된 항목을 기술
  • 관련자들로부터 재작업, 사후조치 및 조치사항 완료에 대해 확인

□ 동료검토 수행 결과 작성 시 고려사항
  • 동료검토 결과 기술 내용은 결함 내용, 검토 처리 결과, 소요 공수, 검토 결과 승인을 포함
  • 결함내용 중 조치가 필요한 항목을 식별하고 담당자를 할당
  • 조치가 필요한 항목의 처리 완료 여부를 확인
  • 사전 검토, 검토 회의, 재작업, 사후조치 등의 동료검토에 소요된 공수를 명시

동료검토 결과 보고서

동료검토 결과 보고서는 연구수행을 통해 창출된 연구결과물이 정의된 요구사항을 충족하는지 이해관계자들과 함께 검토하고 확인하여 품질 보증 및 시정조치를 수행한 활동에 대한 결과물이다.

동료검토 결과 보고서에 반드시 포함되어야 할 사항은 다음과 같다.


  1. 동료검토 일반 사항: 동료검토 대상 산출물 명, 해당 프로젝트명, 일시, 장소, 참석자 및 역할, 참고자료(표준, 체크리스트) 등
  2. 동료검토 수행결과: 검토의견 및 조치 결과