2016년 1월 1일 금요일

[공고] 2016년 SW품질역량 강화를 위한 공통교육(GCS School) 운영

용역입찰 재공고
  • 입찰건명: 2016년 SW품질역량 강화를 위한 공통교육(GCS School) 운영
  • 용역기간: 계약체결일로부터 약 7개월
  • 제안서(입찰참가신청)제출(시간 초과시 서류 제출이 불가합니다.)
  • 제출마감일:  2016.01.05(화)15시까지
  • 입찰방법:제한경쟁입찰
낙찰자 선정방법 : 협상에의한계약 ( 기술 : 가격 = 90:10)
제안서를 제출받아 평가한 후 협상대상자를 선정 ( 개별통지 ) 하여 , 기술 / 가격협상에 참가할 수 있는 자격을 부여하고 제안서 평가 1 순위 업체부터 협상하여 우리 원에 가장 유리하다고
인정되는 업체를 낙찰자로 결정합니다 .

입찰참가자격 (아래의 자격을 모두 갖춘 자이어야 합니다)

 ▶ 국가를당사자로하는계약에관한법률 시행령 제 12 조 규정 및 동법 시행규칙 제 14 조 규정  에의한 유자격 업체
 ▶ 국가를 당사자로 하는 계약에 관한 법률 시행령 제 76 조 규정에 의한 부정당업자에 해당
하지 않은 업체
 ▶ 입찰참가신청시 우리 원의 선정방식에 이의가 없음을 확약한 업체
 ▶ 중소기업기본법에 의한 소기업 , 소상공인 업체 또는 비영리법인

GIT Flow를 활용한 효과적인 소스 형상 관리 Part 1


산업계에서는 단순히 GIT 를 사용하기도 하지만 대다수의 대규모 프로젝트에서는 어느 정도 프로세스화된 GIT Branch 전략을 사용하여 개발하고 있습니다 . 이 중에서 가장 널리 사용되고 있는 GIT Branch 전략 중의 하나인 GIT Flow 를 살펴보고자 합니다 .

GIT Flow 는 GIT 의 가장 큰 장점인 GIT Branch 를 활용합니다 . 일반적으로 소프트웨어를 버전 단위로 릴리즈하는 유지보수 관점에서 GIT Flow 는 매우 훌륭합니다 . GIT Flow 는 배포관점의 형상 관리를 담당한다고 볼 수 있는데 원활한 소스코드 관리를 가능하게 하는 것이 핵심입니다 .
보통은 개발 중인 버전 (Develop) 과 이미 배포된 버전 (Master) 을 먼저 분리한 후 사용하는데 , GIT Flow 는 개발 중인 버전 (Develop) 을 바탕으로 중 / 단기 단위로 개발 (Release, Feature) 할 수 있도록 합니다 . 만약 치명적인 결함이 발생하더라도 이미 배포된 버전 (Master) 를 바탕으로 Hotfix 버전을 생성하여 빠른 패치를 진행하고 , 개발 중인 버전 (Develop) 으로 소스 병합 (Merging) 작업을 통해서 소스 형상관리를 최대한 활용할 수 있도록 합니다 .

본고에서는 소스 간의 충돌을 최소화하여 효율적인 개발이 가능해 특히 대규모 인원의 개발에서 주로 쓰이는 GIT Flow 를 소개하고 , 예제를 통해 실무 활용 방안을 살펴보고자 합니다 .

  • GIT Flow 소개
  • Breach 전략

iOS 애플리케이션 GUI 테스팅을 위한 영향 관계 기반 커버리지 및 테스트 케이

iOS 의 사용자 인터페이스는 멀티 터치 제스처에 의한 직접 조작 (Direct Manipulation) 을 기반으로 한다 [1]. 직접 조작이란 , 사용자에게 시각적인 요소를 제공함으로써 , 시스템을 제어할 수 있도록 하는 것을 의미하며 [2], 그래픽 사용자 인터페이스 (GUI) 와 유사한 개념입니다 . 애플에서는 코코아 터치 프레임워크 (Cocoa Touch Framework) 를 통하여 사용자에게 직접 조작을 기반으로 한 인터페이스를 제공한합니다 . 코코아 터치 프레임워크는 터치스크린을 내장하고 있는 모바일 장치를 위한 사용자 인터페이스 프레임워크입니다 . 즉 , iOS 는 터치스크린 기반의 GUI 를 제공하며 그 위에서 동작하는 iOS 애플리케이션 역시 GUI 를 사용자 인터페이스로 갖습니다 . 따라서 iOS 애플리케이션에서 GUI 가 갖는 비중은 매우 크다 . 따라서 GUI 의 문제 여부가 iOS 애플리케이션의 품질에 커다란 영향을 미칠 수 있습니다 . iOS 애플리케이션의 품질을 향상시키기 위해서는 GUI 에 대한 충분한 테스트가 필요합니다 .

  1. 이벤트 핸들러 기반의 테스트 커버리지
  2. 애플리케이션 상태와 영향 관계
  3. 영향 관계 기반의 테스트 케이스 생성 기법