목록CS/SE (3)
습관처럼
소프트웨어는 크게 두 가지로 분류할 수 있다. 시스템 소프트웨어(System software) 응용 소프트웨어(Application software) 시스템 소프트웨어는 하드웨어를 컨트롤할 수 있는 소프트웨어로, 대표적으로 운영체제(OS)가 있다. 예를 들어, 곰플레이어로 영상을 보고 싶다고 가정해보자. 곰플레이어는 모니터에게 '영상을 출력해'라고 말할 권한이 없기 때문에 운영체제에게 요청해야 한다. 곰플레이어가 운영체제에게 '운영체제야, 모니터에 영상을 출력해주면 안될까?'라고 요청하면 운영체제는 받아들인다. 그제야 하드웨어는 운영체제의 명령을 받아 모니터에 영상을 출력한다. 이렇게 하드웨어를 컨트롤할 수 있는 소프트웨어가 '시스템 소프트웨어'이다. 즉, 장치를 움직이게 하는 소프트웨어다. 그리고 시스..
화이트 박스 테스트란~ 화이트박스 검사(White Box Test) 기법은 소프트웨어 내부 소스 코드를 테스트하는 기법이다. 소프트웨어를 테스트하는 방법은 크게 블랙박스 검사(Black-Box Test) 기법과 화이트박스 검사(White-Box Test) 기법이 있다. 블랙박스 검사 기법은 소프트웨어의 내부를 보지 않고, 입력과 출력값을 확인하여,기능의 유효성을 판단하는 테스트 기법이며, 화이트박스 검사 기법은 소프트웨어 내부 소스코드를 확인하는 기법이다. 화이트박스 테스트를 하는 이유는 내부 소스코드의 동작을 개발자가 추적 할 수 있기 때문에, 동작의 유효성 뿐만아니라 실행 되는 과정을 살펴봄으로써, 코드가 어떤경로로 실행되며, 불필요한 코드 혹은 테스트 되지 못한 부분을 살펴볼 수 있다. 화이트박스 ..
6. 컴포넌트 기반 소프트웨어공학 ■ 배경 - 객체지향 개발 방법이 광범위한 재사용을 유도하지 못했다. - 클래스 단위는 효과적으로 재사용하기에는 너무 크기가 작고 상세하고 구체적이었기 때문에 어려움이 있었다. - 컴포넌트가 클래스보다 훨씬 추상적이었으며 개별적으로 재사용하기가 용이했다. - CBSE는 느슨히 연결된 독립적 컴포넌트들을 정의하고 구현한 다음 통합하거나 조합함으로써 시스템을 만드는 프로세스로 중요한 소프트웨어 개발 방법이 되었다. (1) 컴포넌트와 컴포넌트 모델 ■ 컴포넌트란? 컴포넌트 모델을 따르는 소프트웨어 요소로서, 독립적으로 배포될 수 있고 컴포넌트 조합(composition) 표준에 따라 수정 없이 조합될 수 있는 것(Council & Heineman) 계약으로(contractua..