2014년 1월 26일 일요일

[소프트웨어공학] 2.4 점증정 모델 (Incremental Model) ~ 2.5 나선형 모델 (Spiral Model)

- 게시된 자료를 가지고 개인적인 학습은 가능 하나 무단 배포 및 게시를 금지 합니다.

 

 

2.4  점증정 모델 (Incremental Model)


1) 정의


l  선형 순자 모델 요소 + 프로토타입의 반복성

l  실제 작동하는 결과물을 만들어 냄

l  특징: 재사용, 객체지향, RAD의 기반 제공

l  진화적 개발: 이 접근법은 명세화, 개발, 검증 활동이 서로 중첩된다. 초기 시스템은 추상적인 명세로
  부터 빨리 개발되고 고객의 요구를 만족시키기 위한 시스템을 만들기 위해 고객의 입력과 함께
   개선된다.
 ☞프로토탕핑과 점증적모델의 가장 큰 차이점은 무었일까?
   프로토타이핑은 결과물을 폐기 하고 점증적 모델은 폐기하지 않고 계속 Plus 해
   나가는것이다.

2) 모델 종류


l  점증적인 방법(Incremental Development Model): 기능의 추가, 통합 형식

l  반복적인 방법(Evolutionary Development): 기능을 더 완벽하게, 개선 발전

3) 장점


l  초기에 사용 교육 가능

l  새로운 릴리스에 기능 추가 가능, 기능 향상 가능

l  예상하지 못했던 문제를 신속하게 고칠 수 있음

2.5  나선형 모델 (Spiral Model)


1) 정의


l  폭포수 모델 + 원형 패러다임 + 위험분석(Risk Analysis)

l  Bohem개발

l  소프트웨어 생산 과정을 진화적인 방법으로 접근

2) 기본 가정


l  미리 소프트웨어 개발의 형태를 완벽하게 결정할 수 없음

l  프로토타이핑, 리스크 분석, 시뮬레이션, 모델링, 단가 분석 등은 세부적인 S/W 시스템 설계 전에
  완료

3) 특징


l  선형 모델의 체계적인 측면 + prototyping의 반복적 특성

l  대규모 시스템 및 위험 부담이 큰 시스템 개발에 적합 (위험분석 추가)

l  반복적인 접근법, 위험의 최소화

l  소프트웨어 품질 중에 강인성을 높일 수 있는 방법

4) 단계 (P – RA – E – CE)


l  계획수립(Planning) 목표, 기능 선택, 제약 조건의 결정

l  위험 분석(Risk Analysis): 기능 선택의 우선순위, 위험 요소의 분석/프로젝트 타당성 평가 및
                                             프로젝트 추진 여부 결정

l  개발(Engineering): 선택된 기능의 개발/개선된 한 계 높은 수준의 제품 개발

l  고객 평가(Customer Evaluation): 개발 결과의 평가
 
 

 


5) 장단점


장점
단점
l  정확한 사용자 요구사항 파악
l  위험 부담 감소
l  품질 확보
l  재사용화
l  사용자 요구사항 통제(위험 분석으로 )
l  프로젝트 개발에 많은 시간 소요
  
☞장기.대형 프로젝트에 적합
l  프로젝트 관리에 어려움(복잡함)
l  충분한 검증 미흡 (참조 사이트가 적음)


- 감리사, 기술사, PMP, 소프트웨어공학,

2014년 1월 21일 화요일

[DB] 1. 정보환경

시간 날때마다 데이타베이스(DB)로 함께 정리 하여 올리려 합니다.
강의 자료들 보시고 덧글 한번씩 달아 주세요.. ^^

- 게시된 자료를 가지고 개인적인 학습은 가능 하나 무단 배포 및 게시를 금지 합니다.

 

1. 정보 환경


1.1  정보처리 시스템


1) 정보와 데이터


 
정의
핵심
데이터
l  현실 세계로부터 단순한 관찰이나 측정을 통해 수집된
    사실(facts) or 값(value)
-     (ex) 수치, 스트링
사실적 자료
정보
l  데이터의 유효한 해석(interpretation)이나 상호관계(relationship)
l  정보는 데이터를 처리해서 얻은 결과 (데이터 ¹ 정보)
-     I = P(D): Information, Process, Data
l  정보가 유용성을 갖기 위해서는  정확성 + 현재성 필요
  ☞ 정보가 유용성을 가지기 위해서는 정확성과 현재성이
     필요하다.정보의 사전적 의미는 관찰이나 측정을 통하여 수집
          그 자료라도 되어 있듯이 정보로서의 가치를 가지려면
     정확성과 현재성이 같이 동반되어야 한다.
     그리고 처리 가공되지 않은것은 정보로서으 가치를 
     갖지 못한다. 
처리 가공
지식
l  동종의 정보가 집적되어 일반화된 형태로 정리된 것
l  정보가 의사결정이나 창출에 이용되어 부가가치가 발생
l  지식은 정보로부터 규칙, 일반화 발견을 통해 새로운 가치를 생산해낸 것
-     K = C(I): Knowledge, Creation, Information
부가가치,
일반화,
의사결정
지혜
l  지식을 얻고 이해하고 응용하고 발전해 나가는 정신적인 능력
l  지혜는 지식을 능력화한 것
-     W = K(A): Wisdom, Knowledge, Ability
내재화된 능력

 




2) 정보 시스템 (Information System)


l  조직체 활동에 필요한 데이터를 수집, 조작, 저장해 두었다가 필요시에 처리해서 의사결정에 유용한
    정보를 생성, 분배하는 수단

l  경영 정보 시스템(MIS: Management Information System): 한 기업에서 의사결정을 위해 정확하고
  최신의 정보 제공 수단으로 사용

l  의사 결정 시스템(DSS: Decision Support System): 여러 가지 복합적이고 광범위한 목적을 위해

-     데이터웨어하우스(DataWarehouse): 다양한 소스의 데이터를 별도로 추출하여 관리

-     데이터마이닝(DataMining): 관련된 데이터를 찾아내고 필요한 정보 또는 지식을 생성하는 과정

l  지식 베이스 시스템(Knowledge based System): 인간처럼 사고, 처리하는 시스템(AI)

 

1.2  자료처리 시스템


1) 일괄처리 시스템: 시스템을 효율적으로 운영 (시스템 성능 높임, 처리 비용 낮음), 대기,

                                  사전 준비 작업 필요


l  시스템 중심의 자료 처리 방법

2) 온라인처리 시스템: 사용자 중심 처리 방법, 낮은 시스템 성능, 높은 처리비용


l  실시간(real-time) vs 온라인(on-line)

실시간
사용자의 요구에 대해서 주어진 시간 안에 반드시 처리해주는 시스템 (시간 제약)
종류: 하드 실시간 시스템, 소프트 실시간 시스템
온라인
사용자가 요구하는 즉시 처리해주는 시스템 (지정된 시간 없이 오직 빠른 시간 안에 처리)
일반적으로 소프트 실시간 시스템 =  온라인 시스템
            ☞ 실시간 시스템과 오라인 시스템의 대표적인것이 무엇이 있는지 생각 해보자..

3) 분산처리 시스템: 분산된 처리기와 네트워크로 연결, 확장 가능, 이종 하드웨어 가능, 보안 어려움, 관리 어려움


병행(concurrent)
멀티프로그래밍 시스템에서 하나의 프로세서가 처리 속도 극대화를 위해 사용
à 시분할 기법 이용
병렬(parallel)
다중처리 시스템에서 둘 이상이 프로세서가 여러 프로세스를 동시 수행


- 감리사, 기술사, PMP, 데이타베이스(DB)