Siriya
프로젝트 개요
기술개발 과제
국문 : Sira
영문 : Development Tool for Developer
과제 팀명
Siriya
지도교수
이*정 교수님
개발기간
2023년 3월 ~ 2023년 6월 (총 4개월)
구성원 소개
서울시립대학교 컴퓨터과학부 20179200** 김*중(팀장)
서울시립대학교 컴퓨터과학부 20189200** 김*석
서울시립대학교 컴퓨터과학부 20199200** 아***바 마***누
서울시립대학교 컴퓨터과학부 20189200** 이*영
서울시립대학교 컴퓨터과학부 20199200** 이*진
서론
개발 과제의 개요
개발 과제 요약
◇ Sira는 소프트웨어 공학의 애자일 방법론을 토대로 프로젝트 관리를 도와주는 온라인 툴이다.
◇ Sira의 예상 사용자는 서울시립대학교 컴퓨터과학부 학생으로 4명 내의 소규모 비전문가 조직이다.
◇ Sira는 Jira Software를 참고하였으며, 학부생이 이용하기 어려운 프로젝트 관리 툴을 쉽게 접근할 수 있게 하는 것이 목표이다. 이를 위한 레벨/포인트 시스템과 튜토리얼 기능이 추가되었다.
◇ Sira의 기능은 크게 3가지로 나눌 수 있다. 각각 프로젝트 관리, 회의 일정 관리, 프로젝트 커뮤니티이다.
◇ 프로젝트 관리는 전체적인 로드맵을 상위/하위 태그를 통해 구상한 뒤 이루어지며, 스프린트 단위로 시간을 관리하고, 이슈 단위로 업무를 관리한다. 각 이슈에는 포인트를 부여하여 비중을 달리한다.
◇ 회의 일정 관리는 팀 내에서 가장 효율적으로 회의할 수 있는 시간을 알려주고 일정을 잡는데 도움을 준다.
◇ 프로젝트 커뮤니티의 주 기능은 프로필과 프로젝트의 검색을 바탕으로, 관심있는 개발자를 팔로우하거나 참여하고 싶은 프로젝트에 참가하는 것이다.
개발 과제의 배경
◇ 서울시립대학교 컴퓨터과학부에서는 소프트웨어공학이라는 전공필수 과목에서 여러 유형의 협력방법론 예를 들어 “폭포수 모델”, “프로토타입 , “애자일 방법론” 과 같은 것들에 대해 배우고 적용해본다.
◇ 이때 많은 학생들이 보통 “폭포수 모델”을 사용해서 협력을 진행하게 되는데 이는 “폭포수 모델”의 단순함과 익숙함 때문이라고 생각된다.
◇ 하지만 실제 많은 현업에서는 “애자일 방법론”을 사용하거나 혹은 애자일스럽게와 같은말처럼 어느정도 “애자일 방법론”을 섞은 형태로 협업을 진행된다. 이러한 점에도 불구하고 많은 학생들이 “애자일 모델”을 기피하는 이유는 “애자일”이라는 개념에 대한 낯설음과 “애자일”특성상 구성원 모두의 적극적인 참여를 유도해야 하는데 실제 학생들에게 이러한 동기부여하는 것이 어렵기 때문이다.
◇“애자일 방법론”을 적용할 수 있는 툴로는 “Jira”와 같은 것들이 있으나 이 툴은 학생들이 사용하기에 복잡하고 소규모의 프로젝트를 하는 학생들 보다는 대규모의 프로젝트를 진행하는 대기업에 초점이 맞추어져 있다.
◇ 따라서 게임적인 요소를 추가하여 학생들의 적극적인 참여를 유도하면서 쉽게 애자일 방법론을 적용시킬 수 있는 개발툴을 만들기로 하였다.
◇ 이 개발툴은 기본적으로 학생들의 성공적인 프로젝트 협력을 돕는다.
◇ 또한 애자일 방법론”에 기반하여 만들어져 프로젝트 구성원들이 프로젝트를 진행하면서 자연스럽게 애자일방법론이 무엇인지에 대해 학습할 수 있다.
◇ 또한 시각적인 요소를 적극적으로 활용하여 사용자가 쉽게 사용할 수 있다.
◇ 정보전달이 쉽고 긍정적 인상을 줄 수 있는 디자인을 선택하여, 프로젝트 진행도를 쉽게 확인할 수 있다.
◇ 업무를 해결해 나갈때마다 경험치를 부여하고 자신이 획득한 총 경험치에 따라 자신의 성장도를 알 수 있도록 해 사용자가 스스로에게 동기부여 될 수 있도록 하며 프로젝트 구성원의 기여도 또한 알 수 있다.
◇ 프로젝트를 시작하고 싶을 때 혹은 자신의 지식을 실전에서 적용하고 싶을 때 프로젝트를 검색하거나 현재 진행하고 있는 프로젝트에 적합한 사람을 쉽게 찾아 함께할 수 있도록 한다.
개발 과제의 목표 및 내용
◇ 초보 개발자가 해당 협업 툴을 사용해 가이드를 따라가는 것 만으로도 성공적으로 프로젝트를 완수할 수 있다.
◇ 프로젝트의 진행과 구인을 동시에 할 수 있다.
◇ 자신의 프로필에 관심있는 영역과 기술스택을 등록하고 자신이 참여하고 싶은 프로젝트나 구인을 진행할 수 있도록 한다.
◇ 애자일 방법론에 따라 각 프로젝트를 스프린트별로 구성할 수 있도록 하고 각 스프린트마다 진행되어야 할 이슈로 구분해 협력과정이 애자일스럽게 진행되도록 한다.
◇ 각 이슈의 의존관계를 명확하게 확인할 수 있도록 하고 현재 진행전/진행중/완료와 같은 상태 값을 이용해 쉽게 현재 프로젝트 상황을 확인할 수 있도록 한다.
◇ 각 이슈에 대해서 담당자가 누구인지, 현재 어떤 상태로 진행되고 있는지와 같은 정보들을 쉽게 확인할 수 있도록 하고 프로젝트 구성원이 댓글기능을 통해 서로 피드백할 수 있도록 한다.
◇ 각 구성원이 한 업무를 해결할 때마다 경험치를 획득할 수 있도록 하고 자신이 얻은 총 경험치를 확인할 수 있도록 해 프로젝트에 더 적극적으로 임할 수 있도록 돕는 기능을 구현한다.
◇ 회의와 같이 서로 시간을 내어야 할 때 각자 비는 시간을 입력하면 공통된 비는 시간을 알려주는 기능을 구현한다
관련 기술의 현황
관련 기술의 현황 및 분석(State of art)
- 전 세계적인 기술현황
- Jira
- Atlassian에서 만든 이슈트래킹 제품이다. 버그추적, 이슈추적, 프로젝트 관리 기능을 제공하는 소프트웨어로 190개 국가에서 사용되고 있다. jira는 4가지 패키지로 제공된다.
- Jira Work management : 일반적인 프로젝트 관리(소프트웨어 개발 외에도 적용될 수 있는 일반적인 과정)
- Jira Software : 애자일 프로젝트 관리지능을 포함한 기본 소프트웨어
- Jira Service Management : IT 운영 또는 비즈니스 서비스 데스크에서 사용하기 위한 것
- Jira Align : 전략적 제품 및 포트폴리오 관리를 위한것
- 위와 같이 Jira는 일반적인 소프트웨어 개발 프로세스뿐만 아니라 비즈니스 로직 전체에 관한 프로젝트 형상관리를 도울 수 있다.
- Atlassian에서 만든 이슈트래킹 제품이다. 버그추적, 이슈추적, 프로젝트 관리 기능을 제공하는 소프트웨어로 190개 국가에서 사용되고 있다. jira는 4가지 패키지로 제공된다.
- Slack
- Slack Technologies에서 개발한 클라우드 컴퓨팅 기반 인스턴트 메신저 및 프로젝트 관리용 협업툴이다.
- 강력한 API를 제공하여 봇의 형태로 여러 업무를자동화하거나 자신만의 서비스를 개발이 가능하다.
- workspace별로 인터페이스가 구분되며 이슈를 주제도 정보가 구분되기 보다는 스레드별로 정보가 구분된다.
- Trello
- 웹 기반의 프로젝트 관리 소프트웨어이다. 기본적인 일의 단위는 카드이며 보드 안에 리스트, 리스트 안에 카드가 들어간다. 카드 안에 체크리스트 등을 만들어 프로젝트를 관리할 수 있다.
- 드래그&드랍으로 쉽게 관리가 가능하다.
- Notion
- 프로젝트 관리 및 기록 소프트웨어이다.
- 칸반보드, 작업, 위키, 데이터베이스를 통합하는 수정된 마크다운 지원을 가진 협업 플랫폼이다.
- 문서와 관련된 작업에 특화되어 있으며 문서 작성에 있어 여러가지 기능을 제공한다.
- 문서작성외에도 여러 기능을 제공하긴하지만 일정 수준 이상의 전문성은 갖추고 있지 않은 것으로보인다.
- Jira
- 특허조사 및 특허 전략 분석
- 주식회사 케이티프리텔. 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템.KR20090000818A, filed April, 5, 2007, and issued June, 5, 2009
- 본 발명은 소프트웨어의 유지보수에 대한 요청사항이 있을 때 이를 수행하기 위한 개발 규모 및/또는 개발 공수를 자동으로 산출하여 효율적인 규모 관리가 가능하도록 하는 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템에 관한 것으로서, 소프트웨어의 유지보수에 대한 요청사항 발생 시, 상기 요청사항에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형을 각각 분별하여 입력하는 단계; 및 입력된 상기 기능유형 및 개선유형 각각에 대해 소정 단위 기간동안 측정된 기능점수로부터 상기 요청 사항의 개발규모를 추정 산출하는 단계를 포함하여 이루어져, 소프트웨어의 유지보수 개발 규모를 용이하고 신속하게 추정할 수 있다. 또한, 개발 규모 및 자원 등을 산출하는 데 있어 기존에 이미 측정된 기능점수 및 투입 공수값을 활용함으로써 요구사항에 따른 소요자원의 예측에 있어서의 객관성 및 효율성을 향상시킬 수 있는 효과가 있다.
- 주식회사 스트라토아이티. 소프트웨어 컴포넌트를 표현하는 각각의 그래픽 객체 간의 연결 조작을 이용한 소프트웨어 개발 어시스트 방법 및 그 시스템.KR102300005B1, filed March, 5, 2021, and issued September 8, 2021
- 소프트웨어 컴포넌트 표현 그래픽 객체 간의 연결 조작을 고려하는 소프트웨어 개발 방법이 제공된다. 본 게시의 일 실시예에 따른 소프트웨어 개발 방법은 제1 소스 개체를 가리키는 제1 그래픽 객체와 제2 소스 개체를 가리키는 제2 그래픽 객체를 프로그램 개발 소프트웨어에 의하여 제공되는 복수의 뷰 중 유닛 설계 뷰에 디스플레이 하는 단계와, 상기 제1 그래픽 객체와 상기 제2 그래픽 객체를 연결하는 상기 유닛 설계 뷰에서의 사용자 입력이 입력되면, 상기 제2 소스 개체에 대한 레퍼런스가 상기 제1 소스 개체에 추가되도록 소스 코드를 자동으로 수정하는 단계를 포함할 수 있다.
- 주식회사 케이티프리텔. 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템.KR20090000818A, filed April, 5, 2007, and issued June, 5, 2009
- 기술 로드맵
- 기존의 협력툴들은 대체로 여러가지 기능들을 제공하는데 학생들이나 소규모의 팀들이 상요하기에 너무 비대한 경우가 많다. 따라서 우리가 필요한 기능들을 간략하게 추리고 학생들에게 꼭 필요한 기능을 넣어 가볍고 효율적인 프로그램을 개발한다.
- 서울시립대 학생들이 자연스럽게 접속하고 편하게 사용할 수 있도록 웹 기반 소프트웨어로 개발을 진행한다.
- react를 사용해 보기 편한 디자인과 반응형 웹을 구현하여 사용자가 프로젝트를 자연스럽게 따라함으로서 관리프로세스에 대한 이해도를 높일 수 있도록 한다.
시장상황에 대한 분석
- 경쟁제품 조사 비교
내용
- 마케팅 전략 제시
내용
개발과제의 기대효과
기술적 기대효과
내용
경제적, 사회적 기대 및 파급효과
내용
기술개발 일정 및 추진체계
개발 일정
내용
구성원 및 추진체계
내용
설계
설계사양
제품의 요구사항
내용
설계 사양
내용
개념설계안
내용
이론적 계산 및 시뮬레이션
내용
상세설계 내용
내용
결과 및 평가
완료 작품의 소개
프로토타입 사진 혹은 작동 장면
내용
포스터
내용
관련사업비 내역서
내용
완료작품의 평가
내용
향후계획
내용
특허 출원 내용
내용