본문 바로가기
개인공부

소프트웨어(프로젝트) 개발 방법론

by 유혁. 2019. 6. 7.

 

스프트웨어(프로젝트) 개발 방법론이란

소프트웨어 개발에 필요한 반복적인 과정 절차, 방법, 산출물, 기법, 도구를 체계적으로 정리한 것.

소프트웨어 개발에 대한 계획, 분석, 설계, 구축에 대한 정형화된 방법과 기법.

프로젝트 진행방법과 수행 노하우를 체계화 하고 표준화 시킨것을 의미함.

 

 

개발 방법론의 종류

 

1. 구조적 방법론

- 설명 : 구조, 흐름, 간결, 간단 이 구조적 개발방법의 특징

           요구사항 분석 > 구조적 분석 > 구조적 설계 > 구조적 프로그래밍

           요구사항 분석 : 고객이 원하는 요구사항을 끌어내며 명세화 하는것.

           구조적 분석 : 고객이 원하는 기능과 시스템환경, 데이터 종합하여, 데이터 흐름도(Data Flow Diagram)를 작성

           구조적 설계 : 모듈 중심으로 설계를 하는 단계. 모듈의 목적은 재활용. 결합도를 낮춰 독립성을 높힘

           구조적 프로그래밍 : 프로그램 복잡성을 최소화 하기위하여 순차, 조건, 반복 3개의 논리구조로 구성

 

 

 

- 구성요소

데이터흐름도 DFD : 각 기능을 분할하여 표현한 구조도.

 

 

 

자료사전 DD : 자료의 의미나 자료의 단위 및 값에 대한 사항을 정의하는 도구

자료항목 : 직원 가족 관계 명세 = 직원성명 + 성별 [ 남  여 ] + 주소 + 사번 + {가족이름 + 관계 [ 본인배우자부모자녀 ] + 생년월일}6 + (특기사항)

 

 

상태 전이도 STD : 어떤 상태에서 다른 상태로 변경되는 과정과 그 프로세스를 명세하는 것.

 

 

소단위 명세 : 쪼갤수 없는 정도 까지의 기능으로 분리한 뒤 해당기능에 대한 명세를 하는 것.

 

- 방법론 : 폭포수

- 장점 :

     정형화/체계화, 모듈화

- 단점 : 

     인식부족, 단위프로젝트에서만 사용

     거시적 관점이 부족함, 거시적 관점이란 크게보고 멀리보는 것인데, 이 방법론에대해 다양한 시도를 하지 않음.

     재사용, 보수성 낮음

 

 

 

 

 

2. 정보공학적 방법론

설명 : 기업의 정보시스템을 구축하기 위해 계획, 분석, 설계 등 전과정을 정형화시킨 절차 및 방법론

           단순한 sw 개발이 아닌 기업의 경영전략과의 초점을 맞춤

 

 

ISP : 정보시스템 구축 단계의 초기 단계에서 경영층의 요구와 견해를 반영하는것을 중시

데이터 중심 : 기업의 프로세스는 수시로 변경, 데이터변경은 미비, 프로세스와 데이터를 분리하여 잦은 변화에 적극적으로 대응하고자 하는 기법

분할과 정복 : 문제 영역을 세문화, Top-Down 방식으로 문제를 해결

 

개발 프로세스 

1) ISP : 전사적인 전략과 시스템의 Align 단계
 - 경영전략 분석 -> 현행 업무 프로세스 분석 -> 현행 시스템 분석/평가 -> 아키텍처 개발 -> 전략 계획 (우선 순위 도출)
2) BAA : ISP에서 수집된 자료를 기반으로 세부적으로 확장하는 단계
- 데이터 모델 다이어그램, 프로세스 분할 다이어그램, 프로세스/데이터 매트릭스 (CRUD 매트릭스)
3) BSD : 비지니스 시스템 설계
- ERD, DFD 등의 비지니스 시스템 설계
4) SD : 시스템 설계를 기반으로 정보시스템을 구축하는 단계
- 연관분석, 물리적 데이터베이스 설계, 코딩등의 작업 수행

 

- 장점 : 일관성 있고 통이된 정보시스템 구축 가능, 데이터 중심으로 업무절차 및 환경변화에 유연

- 단점 : 정보공학의 효과를 위해 장기간 필요, 특정 사업영역으로부터 독립된 시스템 개발에는 부적합.

 

3. 객체 지향 방법론

설명 : 프로그램을 객체와 객체간의 인터페이스 형태로 구성하기 위하여 문제영역에서 객체, 클래스 간의 관계를 식별            하여 설계모델로 변환하는 방법론

          추상화, 캡슐화, 정보은폐, 상속, 다형성의 특징을 가짐

          계획 > 분석 > 설계 > 구현> 테스트 단계를 거쳐 개발

 

- 장점 : 상속에 의한 재사용성이 높음, 실 세계의 반영을 통한 분석 설계의 갭을 최소화, 유지보수가 쉬움

- 단점 : s/w기술 필요

 

 

 

 

4. CBD 분석 방법론

설명 : 재사용 가능한 컴포넌트의 개발 또는 상용 컴포넌트를 조합해 애플리케이션 개발생산성과 품질을 높이고, 시스             템 유지보수 비용을 최소화 할 수 있는 개발방법 프로세스이다. 

 

 

- 장점 : 생산성, 품질, 비용, 위험개선

- 단점 : 컴포넌트 평가, 인증환경 미흡

 

 

 

참고 블로그 : https://m.blog.naver.com/PostView.nhn?blogId=seilius&logNo=130186081957&proxyReferer=https%3A%2F%2Fwww.google.com%2F

 

http://i-somnium.blogspot.com/2014/09/blog-post_18.html

 

https://sw-tech.tistory.com/entry/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EA%B0%9C%EB%B0%9C-%EB%B0%A9%EB%B2%95%EB%A1%A0-%EA%B0%9D%EC%B2%B4%EC%A7%80%ED%96%A5-%EA%B0%9C%EB%B0%9C-%EB%B0%A9%EB%B2%95%EB%A1%A0

 

https://middleware.tistory.com/entry/%EA%B0%9D%EC%B2%B4-%EC%A7%80%ED%96%A5-%EB%B0%A9%EB%B2%95%EB%A1%A0

 

http://blog.daum.net/_blog/BlogTypeView.do?blogid=0TjSz&articleno=28&categoryId=5®dt=20190208210333