본문 바로가기

더 괜찮은 개발자가 되기위한

(39)
개발 표준 정하기 □ 개발 표준 정하기 ○ 개발 표준 구성 프로젝트 설계의 개념 개발 표준은 모든 개발자가 동일한 형태의 소스코드를 만들기 위해 필요하다. 소스코드가 동일한 형태로 만들어지면 다른 사람이 개발한 소스를 쉽게 이해할 수 있어 프로그램을 쉽게 수정할 수 있다. 개발 표준은 프로그램 개발 생산성 향상뿐 아니라 프로그램 유지보수를 쉽게 하는 역할을 한다. 일반적으로 개발 표준은 디렉토리 구조와 서버 및 클라이언트 개발표준으로 나뉜다. 디렉토리 구조는 서버에 프로그램을 어떤 구조로 저장할 지에 대한 규칙을 정하는 것이다. 서버 개발 표준은 서버에서 동작하는 자바, php와 같은 프로그램에 대한 프로그램 구조를 정의하는 것이다. 클라이언트 개발 표준은 사용자 화면을 구성하는 HTML와 CSS, 자바스크립트에 대한 프..
데이터 설계 □ 데이터 설계 ○ 데이터 설계란 데이터 설계란 시스템에서 사용하는 데이터를 찾아내 데이터베이스에 저장할 테이블의 구조를 디자인하고 기본키, 외래키, 인덱스 등의 관리 요소를 계획하는 작업이다. 재무적으로 기업은 직원, 부동산, 유가증권, 법인등록증 등으로 구성되지만 시스템 적으로 기업은 데이터로 이루어져 있다. 데이터베이스에 기업이 가지고 있는 부동산, 직원정보, 영업비밀, 거래처 정보 등 영업활동과 기업 존재에 관한 모든 정보가 들어있기 때문이다. 엔터프라이즈 시스템의 핵심은 바로 이러한 데이터를 어떻게 잘 관리하고 활용하느냐에 있다. 데이터 설계 절차데이터 설계는 요구 사항 분석부터 시작 한다. 시스템을 구축하기 위해 필요한 데이터가 무엇이고 이것을 어떻게 관리해야 할 지 요구사항 명세서, 프로세스..
인터페이스 설계 □ 인터페이스 설계 ○ 인터페이스 설계란? 인터페이스 개념 인터페이스는 사용자와 시스템이 상호작용 할 수 있도록 입력과 출력을 제공하는 창구 역할을 한다. 웹 프로그래밍 관점에서 인터페이스를 바라보면 브라우저를 사용할 때 우리가 자주 보는 웹사이트 화면이 바로 인터페이스에 해당한다. 물건을 구매할 때 구매 버튼을 클릭하면 인터페이스는 사용자의 요청을 웹서버에 전달하고 웹서버에 있는 프로세스는 입력 값에 알맞은 동작을 수행하고 데이터를 조회/수정/저장한 후 결과를 다시 인터페이스인 브라우저에게 전달한다. 브라우저는 웹서버가 보내준 결과를 사용자가 이해할 수 있도록 변경해 화면에 보여준다. 인터페이스 설계를 시작하기 전 시스템이 제공하는 기능과 데이터를 정의해야 한다. 앞서 살펴봤던 프로세스 설계가 이에 해..
프로세스 설계 □ 프로세스 설계○ 프로세스 설계란? 프로세스의 개념 비즈니스 프로세스는 고객에게 가치를 제공하기 위한 활동을 말한다. 비즈니스를 시스템으로 구현하기 위해 정의하는 프로세스는 입력을 자신이 제공하는 기능을 활용해 새로운 출력으로 바꾸는 일련의 과정을 말한다. 프로세스를 설계한다는 것은 데이터의 흐름인 입력과 출력 그리고 프로세스가 제공하는 기능을 시각화 도구를 활용해 업무 흐름에 맞게 배치하는 것이다. 프로세스 설계 도구에는 대표적으로 프로세스 맵(Process Map)과 DFD(Data Flow Diagram)이 있다. 프로세스 맵은 컨설팅 과정에서 비즈니스 프로세스를 정리하는 도구로 많이 활용되며 DFD는 과거 구조적 프로그램 설계 과정에서 많이 사용되었던 도구로써 데이터의 변화를 도식화할 수 있다...
프로젝트 설계 개념 □ 프로젝트 설계 개념 프로젝트 설계란 요구사항 명세서를 기반으로 시스템이 제공하는 기능, 인터페이스, 데이터를 정의하고 제어와 연결을 명확히 하여 개발자가 시스템을 구축할 수 있는 수준의 문서를 만드는 작업이다. 결국 프로젝트 설계의 결과물은 문서 형태로 나오게 된다. 설계는 여러 단계 작업으로 구성되는데 대표적으로 프로세스 설계, 인터페이스 설계, 데이터 설계로 나눌 수 있다. 각 단계는 순차적으로 진행되지만 현재 단계가 완료되면 이전 단계의 산출물이 지속적으로 수정된다. 분석 단계에서 생각하지 못했던 요구사항이 설계단계에서 도출될 수 있기 때문이다. 프로젝트 설계의 개념 프로젝트 설계 과정은 앞에서 설명한 3단계 이외에 세부적으로 여러 가지 과정을 거쳐야 한다. 요구분석이 완료되면 먼저 아키텍처를 ..
요구사항 검증 □ 요구사항 검증 요구사항 명세서가 완료됐으면 고객과 작성이 잘 됐는지 한 번 확인해 봐야 한다. 요구사항 명세서는 프로젝트 개발 범위를 결정하는 아주 중요한 문서이기 때문에 고객과 최종 합의 후 요구사항 베이스라인을 결정해야 한다. 요구사항 베이스라인이 결정되면 이후에 추가되거나 변경되는 요구사항에 대해서는 고객사와 개발사 간의 공식적인 협상을 통해 변경관리를 수행해야 한다. 앞 장에서 언급한 폭포수 모델에 따르면 요구분석이 끝나면 요구사항 도출이 완료되고 이후 이 것을 바탕으로 설계가 이루어진다. 따라서 설계 단계에서 요구사항 추가 및 수정을 고려하지 않으며 변경이 발생하더라도 절차가 굉장히 까다롭다. 하지만 현실적으로 볼 때 사람이 하는 일이 완벽할 수 없기 때문에 요구사항은 프로젝트 전 생명주기에..
요구사항 명세 □ 요구사항 명세요구사항 명세는 요구사항 분석 과정이 완료된 후 선별된 기능을 바탕으로 시스템이 제공하는 특성과 기능을 문서화하는 것을 말한다. 요구사항 명세서는 시스템 구현의 가장 기초가 되는 문서이기 때문에 개발사와 고객이 모두 이해할 수 있는 명확한 언어로 작성되어야 한다. 요구사항 명세서 작성 원칙 일반적으로 요구사항 명세서를 작성하는 데는 9가지 원칙이 자주 거론된다. 여기에서 가장 중요한 특성은 정확성과 명확성이다. 요구사항을 검증하고 해석하는 것도 중요하지만 무엇보다 요구사항을 정확하고 명확한 언어로 작성해야 한다. 모호하고 불명확한 언어로 요구사항을 기술한다면 프로젝트 설계가 잘못될 수 있을 뿐만 아니라 검증 과정에서도 고객과 충돌을 빗을 수 있기 때문이다. 요구사항 명세서 구성 요구사항 ..
요구사항 분석 □ 요구사항 분석 ○ 요구사항 분석 요구사항 분석 개념 상위 수준 요구사항을 찾아내는 요구사항 도출 과정이 끝났다면 이제 세부 요구사항을 도출하고 다양한 각도에서 검토하는 요구사항 분석을 해야 한다. 요구사항 분석 과정에서는 요구사항들 간 상충되는 내용이나 중복되는 것들을 정리하고 개발 범위를 명확히 해 업무환경, 개발환경 그리고 개발 범위가 어떻게 상호작용하는지 이해해야 한다. 또한 어떤 요구사항이 중요하고 어떤 요구사항이 보다 절 중요한지 요구사항에 대한 우선순위를 정해야 한다.요구사항 분석 과정에서도 고객과의 커뮤니케이션은 필수적인 과정이다. 분석과 인터뷰를 반복해 가면서 요구사항을 보다 구체적이고 완전하게 파악할 수 있다. 인터뷰 계획서를 만들고 인터뷰 후에 반드시 결과를 기록해 다음 인터뷰 때 ..