CISA/3. IS 획득, 개발 및 관리 크램 2017. 9. 5. 11:45
1. 객체 지향 시스템 개발(OOSD: Object Oriented System Development)(1) 의의① 프로그램을 객체(object) 단위로 조직하여 개발하고 유지보수한다.② 객체는 모듈처럼 전체 프로그램에 속해 있는 한 부분이다.③ 하지만 모듈과는 달리 독립적으로 기능하며 다른 객체들과도 상호 작용할 수 있다.④ 이미 개발된 객체는 다른 프로그램에서 재사용할 수 있어서 개발 노력/시간이 절약된다. (2) 객체(Object)① 객체는 메소드(기능) 그리고 객체 식별과 기능 수행에 필요한 데이터 속성 값을 포함한다.② OOSD에서는 프로그램을 일련의 연산 과정이 아니라 객체들 간 상호 작용으로 본다.③ 마치 현실 세계가 다양한 사물들의 상호 작용인 것과 유사하다.④ 한편 객체 안에 메소드와 속..
CISA/3. IS 획득, 개발 및 관리 크램 2017. 9. 5. 11:31
1. 등장 배경① 쇼프트웨어 개발이 증가하면서 이른바 소프트웨어 위기가 발생하였다.② 소프트웨어 위기(Software Crisis)란 기존 소프트웨어의 기능을 변경하거나 하나의 소프트웨어를 다른 소프트웨어의 기능과 연계하는 비용이 급증하는 현상이다.③ 이러한 문제를 해결하기 위해 소프트웨어를 체계적이고 정량적인 접근법으로 개발하고 유지 보수하는 소프트웨어 공학(software engineering)이 등장하였다.④ 소프트웨어 공학 분야가 개척되면서 초기에 등장한 개념이 바로 구조적 방법론이다.⑤ 개념이 제시된 순서는 구조적 프로그래밍, 구조적 설계, 구조적 분석이다. 2. 구조적 프로그래밍(Structured programming)① 구조적 프로그래밍의 핵심은 프로그램의 구획화(compartmentali..
CISA/3. IS 획득, 개발 및 관리 크램 2017. 9. 4. 23:06
1. 소프트웨어 개발 수명 주기 모델(1) 폭포수(Waterfall) 모델① 전통적 개발 방법론이 주로 따르던 접근법이다.② 정형화된 일련의 단계들을 순차적으로 수행하며 한번 수행한 단계는 회귀하지 않는다.③ 대단히 체계적인 방법이지만, 가변적/역동적 환경에는 적합하지 않을 수 있다. (2) 증분적(Incremental) 모델① 전체 개발 범위를 일정 단위로 분할한 후 개발 우선 순위를 결정한다.② 사전 결정한 순서에 따라 각 부분을 분석, 설계, 개발, 테스트하여 완성한다.③ 순차적으로 완성된 각 부분을 통합하여 전체 시스템을 완성한다. (3) 반복적(Iterative) 모델① 전체 개발 범위에 대해 분석, 설계, 개발, 테스트 과정을 반복 수행한다.② 시스템 전체를 기본 구성만 갖춘 형태로 신속하게 ..
CISA/3. IS 획득, 개발 및 관리 크램 2017. 9. 4. 22:55
5. 테스트(1) 연계 테스트(Interface test)① 시스템을 구성하는 하드웨어와 소프트웨어 요소들 간 연결 상태를 평가한다.② 이질적 시스템 요소들 간에 데이터와 명령이 원활하게 이동하는지 확인한다. (2) 통합 테스트(Integration test)① 시스템의 구성 요소들이 하나의 시스템으로 통합되어 유기적으로 작동하는지 확인한다.② 연계 테스트보다 더 넓은 관점에서의 연계와 시스템 전체의 통합성을 확인한다. (3) 시스템 테스트(System test)① 매우 극단적이고 유동적인 환경에서 시스템 신뢰성, 성능, 보안, 복구 능력을 테스트한다.※ 연계 테스트와 통합 테스트는 안정적이고 통제된 기술 환경에서 수행된다. (4) 테스트 관련 용어상향식 테스트(Bottom-up Test)• 개별 모듈을..