본문 바로가기

전체 글

(90)
요구사항 검증 □ 요구사항 검증 요구사항 명세서가 완료됐으면 고객과 작성이 잘 됐는지 한 번 확인해 봐야 한다. 요구사항 명세서는 프로젝트 개발 범위를 결정하는 아주 중요한 문서이기 때문에 고객과 최종 합의 후 요구사항 베이스라인을 결정해야 한다. 요구사항 베이스라인이 결정되면 이후에 추가되거나 변경되는 요구사항에 대해서는 고객사와 개발사 간의 공식적인 협상을 통해 변경관리를 수행해야 한다. 앞 장에서 언급한 폭포수 모델에 따르면 요구분석이 끝나면 요구사항 도출이 완료되고 이후 이 것을 바탕으로 설계가 이루어진다. 따라서 설계 단계에서 요구사항 추가 및 수정을 고려하지 않으며 변경이 발생하더라도 절차가 굉장히 까다롭다. 하지만 현실적으로 볼 때 사람이 하는 일이 완벽할 수 없기 때문에 요구사항은 프로젝트 전 생명주기에..
요구사항 명세 □ 요구사항 명세요구사항 명세는 요구사항 분석 과정이 완료된 후 선별된 기능을 바탕으로 시스템이 제공하는 특성과 기능을 문서화하는 것을 말한다. 요구사항 명세서는 시스템 구현의 가장 기초가 되는 문서이기 때문에 개발사와 고객이 모두 이해할 수 있는 명확한 언어로 작성되어야 한다. 요구사항 명세서 작성 원칙 일반적으로 요구사항 명세서를 작성하는 데는 9가지 원칙이 자주 거론된다. 여기에서 가장 중요한 특성은 정확성과 명확성이다. 요구사항을 검증하고 해석하는 것도 중요하지만 무엇보다 요구사항을 정확하고 명확한 언어로 작성해야 한다. 모호하고 불명확한 언어로 요구사항을 기술한다면 프로젝트 설계가 잘못될 수 있을 뿐만 아니라 검증 과정에서도 고객과 충돌을 빗을 수 있기 때문이다. 요구사항 명세서 구성 요구사항 ..
요구사항 분석 □ 요구사항 분석 ○ 요구사항 분석 요구사항 분석 개념 상위 수준 요구사항을 찾아내는 요구사항 도출 과정이 끝났다면 이제 세부 요구사항을 도출하고 다양한 각도에서 검토하는 요구사항 분석을 해야 한다. 요구사항 분석 과정에서는 요구사항들 간 상충되는 내용이나 중복되는 것들을 정리하고 개발 범위를 명확히 해 업무환경, 개발환경 그리고 개발 범위가 어떻게 상호작용하는지 이해해야 한다. 또한 어떤 요구사항이 중요하고 어떤 요구사항이 보다 절 중요한지 요구사항에 대한 우선순위를 정해야 한다.요구사항 분석 과정에서도 고객과의 커뮤니케이션은 필수적인 과정이다. 분석과 인터뷰를 반복해 가면서 요구사항을 보다 구체적이고 완전하게 파악할 수 있다. 인터뷰 계획서를 만들고 인터뷰 후에 반드시 결과를 기록해 다음 인터뷰 때 ..
요구사항 도출 □ 요구사항 도출 ○ 요구사항 도출이란? 요구사항 도출 개념도 요구사항 도출이란 제안요청서, 제안서, 업무문서 등을 분석해 요구사항을 찾아내고 고객과의 인터뷰를 통해 요구사항을 이해하고 숨어있는 요구사항을 발견하는 과정이다. 요구사항 도출은 요구사항이 어디에 있고 어떻게 수집할 것인가에 초점을 두고 있으며 이해관계자와 효과적인 의사소통이 성공의 핵심 열쇠이다. 따라서 고객과의 인터뷰를 하기 전에 프로젝트에 대해 충분히 이해하고 있어야 한다. 가장 좋은 방법은 제안요청서와 제안서 내용을 반복해서 읽어는 것이다. ○ 제안요청서 분석 제안요청서, 제안서, 고객이 업무에 사용하는 문서를 분석해 고객이 요구하는 기능과 특성을 찾아내는 과정이 요구사항 도출이다. 여기에서 가장 기초가 되는 것이 제안요청서이다. 고객..
요구사항 분석 개념 □ 요구사항 분석 개념 요구사항 분석이란 고객의 요구를 만족시키기 위해 시스템이 제공해야 하는 기능과 특성을 도출해 나가는 과정이다. 여기에서 도출된 기능과 특성을 글로 기록한 것이 요구사항 명세서이며 시스템은 요구사항 명세서를 기반으로 구축된다. 요구사항을 분석해 시스템 범위가 결정되면 요구사항에 대한 베이스라인을 결정하고 요구사항에 대한 지속적인 관리가 수행된다. 도출된 요구사항에 대해 베이스라인을 세우는 것은 매우 중요한데 베이스라인이란 고객이 원하는 모든 요구사항을 도출해서 명세서에 모두 기록했다는 것을 의미한다. 따라서 앞으로 추가로 발생하거나 변경되는 요구사항에 대해서는 엄격한 절차를 통해서만 수용여부가 결정된다. 아무리 작은 프로젝트라도 베이스라인을 결정하는 시점에는 모든 이해관계자가 참석하..
프로젝트 관리 절차와 방법 □ 프로젝트 관리 절차와 방법 ○ 프로젝트 관리 프로세스 프로젝트 관리 프로세스 앞에서 프로젝트 관리에 대해 간단하게 알아봤다. 이제부터 어떻게 프로젝트를 관리할지에 대해 구체적으로 알아보자. 프로젝트 관리 프로세스는 프로젝트 관리 계획서를 만드는 것에서부터 시작한다. 실제 프로젝트에서는 착수보고서라는 용어를 많이 사용하고 있다. 프로젝트 관리계획서에는 누가(비용, 인력), 언제(일정), 무엇(범위)을, 어떻게(방법론) 할 지에 대해 아주 구체적인 계획이 나와 있다. PM은 프로젝트를 잘 관리 위한 목적으로 이 문서를 작성하고 발주사에게 프로젝트를 어떻게 진행할지 설명하는 보고자료로도 프로젝트 관리계획서를 활용된다. 프로젝트 관리계획서가 작성되면 이제 본격적으로 프로젝트가 시작된다. 설계자는 제안요청서,..
시스템운영에 필요한 운영체제 지식 □ 시스템운영에 필요한 운영체제 지식 ○ 윈도우와 리눅스 윈도우와 리눅스 윈도우는 그래픽 기반의 운영체제이다. 명령을 실행할 때는 직업 명령어를 입력하지 않고 마우스로 아이콘을 클릭한다. 반면에 유닉스 운영체제는 텍스트 기반의 운영체제이다. 물론 엑스 윈도우와 같이 그래픽 기반의 화면을 제공하지만 대부분의 작업은 텍스트 모드에서 진행된다. 작업을 수행하기 위해서는 명령어를 직업 손으로 입력해야 한다. 많은 프로그래머들이 윈도우 환경에 익숙해져 있으므로 개발 환경을 윈도우 기반의 데스크탑이나 노트북에 설치해서 프로그래밍을 한다. 개발이 완료된 후에 운영 환경의 웹서버가 설치되어 있는 유닉스로 프로그램을 전송한다. 사용자 편의성과 지원되는 다양한 개발 도구 측면에서 윈도우가 유닉스 보다 우수한 측면이 많다...
소프트웨어 개발 방법론 □ 소프트웨어 개발 방법론 ○ 소프트웨어 개발 방법론이란? 소프트웨어 개발 방법론의 구성 소프트웨어 생명주기 관리 모델에서는 프로젝트가 어떤 순서로 진행될지 그리고 중간에 어떤 산출물을 점검할 지에 대해 주로 관심을 가졌다면, 소프트웨어 개발 방법론은 소프트웨어를 어떻게 만들지에 대해 관심을 가진다. 따라서 개발 방법론에는 단계별 산출물뿐만 아니라 산출물은 누가 어떤 순서로 어떻게 만들어야 하는지 그리고 어떤 도구를 사용해야 하는지 구체적으로 정의하고 있다. 학교에서 배우는 소프트웨어 공학이 산업계에서 실무적으로 구현된 결과물이 개발방법론이라고 할 수 있다. 소프트웨어 개발 방법론의 종류 소프트웨어 개발방법론은 정보공학 방법론, 객체지향 방법론, CBD(Component Base Development) ..