[카테고리:] 소프트웨어공학

정보 은닉 (Information Hiding)

I. 인터페이스로만 객체 접근, 정보 은닉 가. 정보 은닉(Information Hiding)의 개념 코드 내부 데이터와 메서드를 숨기고 공개 인터페이스를 통해서만 접근이 가능하도록 하는 코드 보안 기술 나. 정보 은닉의 목적 – 객체에 포함된 정보의 손상과 오용 방지 – 데이터 변경 시에도 다른 객체에 영향 없이 독립성 유지 – 객체를 부품화하여 이식성과 호환성 확보   II. 정보 은닉을 위한 접근제한자 및 코드 가. 정보 은닉을 위한 접근제한자 접근제한자 접근 권한 특징 public 모든 클래스, 패키지 모든 권한 부여

객체지향 설계원칙 (Object Oriented Model)

I. Object Oriented Paradigm, 객체지향 설계원칙 가. 객체지향 설계원칙 개념 객체, 클래스간의 높은 응집도, 낮은 결합도 기반 모델 구축 소프트웨어 설계원칙 나. 객체지향 설계원칙 특징 특징 세부 설명 캡슐화 (Encapsulation) – 관련 Data, Operation을 부분적 공개 – 접근 제한 및 시스템 영향 최소화 추상화 (Abstraction) – 공통 속성이나 기능을 묶어 명명 – 클래스를 이용하여 추상 모델 생성 다형성 (Polymorphism) – 동일한 외부 명령을 다른 방식으로 수행 – Method Overriding,

정보공학 (IE) 방법론

I. 소프트웨어 개발방법론의 개요 가. S/W 개발방법론의 개념 개발에 관한 계획~구축의 정형적 방법과 절차, 도구 등 공학적 기법으로 체계화/표준화한 이론 나. 개발방법론의 발전배경   II. 정보공학 (IE) 방법론의 개요 가. 정보공학 방법론의 개념 기업의 정보시스템을 구축하기 위해 계획, 분석, 설계 등 전 과정을 정형화 시킨 방법론 나. 정보공학 방법론의 특징 특징 설명 기업 중심 – 적용 대상이 기업의 비즈니스 중심 ISP 중심 – 경영층의 요구와 견해를 시스템에 반영 데이터 중심 – 프로세스/데이터를 분리 설계, 상호검증 분할과 정복

RAD (Rapid Application Development) Model

I. 초고속 제품 개발 모델, RAD의 개요 가. RAD (Rapid Application Development) Model의 개념 2~3개월 짧은 개발 주기로 제품 개발을 위한 순차적인 프로세스 모델로 빠른 개발을 위해 Visual Tool, Code Generation Tool을 사용 나. RAD의 특징 특징 내용 사용자 참여 프로토타이핑 사용 및 요구사항 정의 등 적극 참여 도구 활용 CASE 도구, RDB, 재사용 Library 등 도구 활용 단기적 합성 단기에 기술적 위험이 적고 빠른 개발 요구에

반복적 모델 (Iteration Model) 

I. 높은 품질의 소프트웨어 개발 모델, 반복적 모델 가. 반복적 모델 (Iterative Model)의 개념 사용자의 요구사항 일부분 혹은 제품의 일부분을 반복적으로 개발하여 고품질의 최종 시스템으로 완성해 가는 모델 나. 반복적 모델의 종류 구분 내용 증분형 (Incremental) 사용자의 요구사항의 일부분을 반복적으로 개발하여 대상 범위를 확대해 가며 최종 제품을 완성해가는 과정 진화형 (Evolutional) 시스템의 프로토타입을 개발하면서 지속적으로 개선하여 발전시켜 나가는 방법 II. 증분형 모델의 개념도 및 특징 가.증분형 모델 개념도 시스템의 일부분을

나선형 모델 (Spiral Model)

I. 프로토타이핑 모델 진화, 나선형 모델의 개요 가. 나선형 모델(Spiral Model)의 개념 시스템을 개발하면서 생기는 위험을 최소화하기위해 나선을 돌면서 완벽한 시스템으로 개발하는 모델 나. 나선형 모델의 특징 특징 내용 대규모 대규모 시스템 및 위험 부담이 큰 시스템 개발에 적합 위험감소 프로젝트 완전성 및 위험감소와 유지보수 용이 장기화 관리가 중요하나 매우 어렵고 개발시간이 장기화 가능   II. 나선형 모델의 구성도 및 구성요소 가. 나선형 모델의 구성도 계획 및 정의, 위험분석, 개발, 고객

프로토타이핑 모델 (Prototyping Model)

I. 사용자 중심 SDLC, 프로토타이핑 모델의 개요 가. 프로토타이핑 모델 (Prototyping Model)의 정의 사용자의 요구사항에 따라 프로토타입 제품을 신속히 개발하여 제공한 후 사용자의 피드백을 통해 개선하고 보완해가는 SDLC 모델 나. 프로토타이핑 모델의 특징 특징 내용 점진적 개발 빠르게 모형을 개발하여 피드백을 통해 시스템을 개선, 보완 사용자 참여 사용자 참여를 유도하여 요구 분석의 어려움을 해결  

폭포수 모델 (Waterfall Model)

I. 순차적 SDLC, 폭포수 모델의 개요 가. 폭포수 모델 (Waterfall Model)의 정의 분석, 설계, 개발/구현, 시험, 운영 및 유지보수 등 전 과정(SDLC)을 순차적으로 접근하는 개발 모델 나. 폭포수 모델의 특징 특징 내용 순차적 SW 개발을 단계적, 순차적, 체계적으로 접근 각 단계를 철저히 매듭 짓고 다음 단계를 진행 단계 검증 개발 방법, 관리 방법론과 연계하여 효과적인

SDLC (Software Development Life Cycle)

I. 소프트웨어 공학의 패러다임, SDLC의 개요 가. SDLC(Software Development Life Cycle)의 정의 소프트웨어 개발부터 폐기까지 전 과정을 하나의 생명주기로 정의하고 단계 별 공정을 체계화 한 모델 나. SDLC의 특징 특징 내용 효율적 자원사용 프로젝트 비용의 산정, 일정 계획 수립 지원 산출물 표준화 용어, 산출물 등 일관성 있도록 산출물 표준화 프로젝트 관리 원활한 프로젝트 수행을 위한