Please enable JavaScript.
Coggle requires JavaScript to display documents.
SW 개발방법론 - Coggle Diagram
구조적 방법론
정의: 분할 개발해서 통합, 분할과 정복, 프로세스 중심 하향식
특징: GOTO 분기 대신 순차, 선택, 반복, 도형 중심 다이어그램(DFD)
-
단점: 거시 관점 부족, 단위 프로젝트 위주, 데이터모델링 부족, 로직 중심, 프로젝트 관리 및 조직/역할 등 미정의
정보공학 방법론
기업 대상 정형화된 기법 통합, 적용 데이터 중심 방법론
등장배경
-
구조적 방법론 한계: 데이터 모델링 미흡, 거시적 관점 부족, 방법론적 지침 미흡, 설계와 코딩 강조
특징: ISP, 데이터 중심, 도형중심, 관리 분할/정복, 공학적, 사용자 참여 유도, 개발 자동화 지향
추진 원칙: 관리 분할/정복, 데이터와 프로세스 균형, 모듈화, 하향식, Repository, CASE, 4GL, RAD
수행내용
정보전략계획: 경영전략, 관련 조직, 거시적 분석, 현행 평가
업무영역분석: 데이터 모델링(ERD), 프로세스 모델링(PHD, PDD, DFD)
업무시스템설계: 업무절차 정의, 프리젠테이션 설계, 분산설계
-
장점: 경쟁우위 기회 및 방안 제공, 일관성/통일성, 장기적 발전, 변화에 유연
단점: 장기간, 구조적 방법 SDLC 이용, 소규모X, 독립 시스템 개발에 부적합
객체지향 방법론
정의: 객체간의 인터페이스로 구성, 속성과 메소드 결합된 객체
등장배경: SW 위기와 낮은 생산성, 유사프로그램 오버헤드 최소화, 유지보수/재사용성 필요
특징: 재사용성 높고 유지보수성 좋음, 모형의 적합성(인간의 사고방식과 유사), 일관성/추적성
절차와 작업항목
객체지향분석
객체모델링: 객체다이어그램, 정적 구조, 추상화/분류화/일반화/집단화
동적모델링: 상태다이어그램, 시간흐름에 따른 상태/사건/동작
기능모델링: 자료흐름도, 입력에 대한 처리결과 확인
객체지향설계: 시스템 설계(서브시스템 분해), 객체설계(자료구조와 알고리즘)
객체지향구현: 객체지향언어, C++, JAVA, C# 등
원리
추상화: 문제 중요 측면 주목, 분석 초잠 명확, 클래스(데이터/프로세스)
캡슐화: 내용 숨김, 메시지만으로 상호작용, 내부 변경 여향 최소화, Public/Private
상속성: 서브클래스에 성질 자동 부여, 확장 용이, 클래스 체계화
다형성: 하나의 인터페이스로 서로 다른 구현 방법 제공, 일관된 매개체, 오버로딩, 오버라이딩
CBD 방법론
정의: 컴포넌트 개발 및 조합, 개발생산성과 품질 제고, 유지보수 비용 최소화, 신속한 구축/변경/확장의 용이성/호환성
특징: 생산성, 유용성, 확장성, 유지보수성, 재사용성, 고품질
표준 기술: SUN의 EJB, MS의 COM+, CORBA
개발 프로세스: CD(도메인 분석 핵심), CBSD
컴포넌트 결합 방법
순차 결합: 두 개 컴포넌트 순차적 호출, 외부 애플리케이션 호출
-
-