2015년 9월 16일 수요일

새로운 기능을 성공적으로 개발 및 출시하게 도와주는 6가지 팁

클라우딩 컴퓨팅의 세계에서 새로운 기능에 대해 고객에게 CD로 제공하는 대단위 출시는 더 이상 없습니다. 현재, 새로운 기능들이 유저들을 위해 클라우드 기반에서 제공되며, 또한 최종 유저가 새로운 기능을 완전하게 활용하는 것은 그 어느 때보다 중요한 사항입니다.
  
최종 유저가 더 이상 서비스를 이용하지 않으면 돈을 지불하지 않아도 되는 기존의 영구 라이선스 모델이 없어진 시점에서 새로운 기능을 성공적으로 개발하고 출시하기 위해 도와줄 수 있는 6가지 팁을 제시합니다.
  1. 기능을 구축하기 전에 유저들에게 물을 것
  2. 실제 유저들과 함께 반복해서 적절한 기능을 만들 것
  3. 사용되는 기능과 사용되지 않는 기능을 파악할 것
  4. 자기 발견(Self Discovery)과 알림(Notification) 기능을 제공할 것
  5. 최고 유저(Top Users)들을 위한 프로그램을 만들 것
  6. 애플리케이션 내에서 유저들의 관심을 공유할 수 있도록 허용할 것

애자일 방법론에서 시소러스를 이용한 비기능 요구사항 추출 방법

전통적인 개발방법론은 단계별 상세계획수립을 위해 요구사항 정의 단계에서 모든 요구사항이 정의되어야 하며 단계별 상계계획에 따른 산출물을 요구하기 때문에 생산성 저하 및 요구사항 변경 및 추가 요구사항에 대한 변경 비용이 기하급수적으로 증가하는 반면 애자일 방법론은 기본적인 개념이 소프트웨어 개발은 고객 중심적이며 , 고객의 참여를 중요하게 생각합니다 . 애자일 방법론에서 사용자의 요구사항을 파악하기 위해 사용되는 사용자 스토리는 사용자가 이해하고 , 필요하다고 느끼는 것을 사용자의 언어로 사용자가 직접 작성합니다 . 이렇게 개발 초기에 상세한 문서를 요구하지 않는 사용자 스토리를 사용하여 아주 단순한 구조를 갖고 동작하는 소프트웨어를 사용자에게 제공함으로써 사용자로부터 지속적인 피드백을 받아 요구사항을 좀 더 구체화 하고 , 반복적인 개발을 통해 지속적으로 변경하는 요구사항들을 수용하고 , 지속적인 통합 , 테스팅 , 리팩토링을 수행함으로써 개발 기간 동안에 변경 비용이 거의 수평적인 상태에 가깝게 유지하면서 유연성과 품질을 유지할 수 있도록 해줍니다 . 하지만 이렇게 유연성을 제공하는 사용자 스토리를 사용하는 애자일 방법론에서 이슈가 되는 것은 아키텍처 고려와 관련된 부분입니다 . 애자일 방법론을 사용하는 조직으로부터 애자일 방법론에 대한 이점과 도전과제를 연구한 내용 중 사용자 스토리를 사용하는 반복요구공학을 사용하는 측면과 관련하여 특히 도전과제로 제시된 내용은 비기능 요구사항들에 대한 무관심으로 시스템 완성도에 있어서 주요 이슈들을 발생시킬 수 있다는 것이었습니다 . 또 다른 연구로는 애자일 개발 방법론을 채택해서 사용했던 평균 18 년 정도의 개발 경험이 있는 전문직들을 대상으로 애자일과 소프트웨어 아키텍처의 공존에 대한 연구를 진행했는데 애자일 개발에서 상당부분의 참가자들이 애자일 개발 과정 중에 Context 에서 소프트웨어 아키텍처를 고려했다는 것입니다 .
  • 비기능 요구사항 분류 방법
  • 비기능 요구사항 추출 프로세스
  • 사례 연구 및 검증


분산된 개발팀에 동기를 부여하는 5가지 Tip

SW개발에 있어 아웃소싱 및 전문성 강화에 따라 지리적으로 분리된 버추얼 팀(virtual team) 운영이 확대되고 있습니다. 이와 같이 버추얼 팀이 운영되는 경우 상호간 목표공유 및 의사소통이 미흡함에 따라 개발일정 및 품질에 부정적인 영향을 미칩니다. 이에 따라 버추얼 팀의 동기부여를 위한 5가지 방안을 제시합니다.

버추얼 팀에 동기 부여하는 5가지 팁
  1. 지리적 한계를 극복하고 팀원들 간 관계를 형성하기위한 시간을 투자하기
  2. 고유한 방법으로 성과를 인정하기
  3. 정기적인 코칭(Coaching Session)을 계획하기
  4. 팀 내 교류하는 방법 고안하기
  5. 정기적으로 대면하는 기회 만들기


2015 제4차 성남 산업융합전략 컨퍼런스 안내(09/17(목))


자세히 보기 →