CS
![[컴퓨터 구조] 시스템 버스(System Bus) 및 동작 방식](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Flnr7t%2FbtsFKRIf91D%2FAAAAAAAAAAAAAAAAAAAAAFlUFV-8MkqGZ7zbdYptS6X2xjagmir4vEGk4lXAxB4s%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DYAvuhNgrvOE%252FMkpnTLyxGvXz0%252FE%253D)
[컴퓨터 구조] 시스템 버스(System Bus) 및 동작 방식
목차시스템 버스(System Bus) 란?제어 버스 (Contol Bus)주소 버스 (Address Bus)데이터 버스 (Data Bus)CPU와 기억 장치간의 통신CPU와 I/O 장치간의 통신전체 시스템 구성시스템 버스(System Bus) 란?시스템 버스란 컴퓨터의 구성요소(CPU, 기억장치, I/O장치)간의 Data/신호 교환을 위한 통로입니다.제어 버스 / 주소 버스 / 데이터 버스 라는 하부 버스로 이루어집니다.쉽게 이해하자면 시스템 버스라는 버스 터미널 안에 버스가 지나다니고, 데이터와 신호들이 각 버스를 타고 이동한다고 이해하면 쉽습니다. 제어 버스 (Control Bus)제어 버스는 CPU가 시스템 내의 각종 요소들의 동작을 제어하는데 필요한 신호들을 전달하는 통로입니다.제어 선의 개수는 ..
![[소프트웨어 공학] 블랙박스 테스트-1](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FlS93N%2FbtrQtVnP5SR%2FAAAAAAAAAAAAAAAAAAAAAFdrTydr7BnFF2O5hd3rj_SVkOnebxpoG2PFOprWfs5r%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DeIhfiLLToEJaCJ4PP6AYaHtAtSw%253D)
[소프트웨어 공학] 블랙박스 테스트-1
블랙박스 테스트 명세 기반 테스트(ISO/IEC/IEEE 29119) 명세에 따른 올바른 구현여부 테스트 명세 정보 등을 이용하여 테스트 케이스 설계 요구사항 분석 / 시스템 인터페이스 / UI 명세 원시 코드 정보를 이용하지 않음 사용자 입장에서 테스트 케이스 설계 가능 개발 초기 단계부터 테스트 케이스 설계 가능 단위, 통합, 시스템, 인수 테스트 전 과정에 사용 동일 명세로 구현된 여러 시스템에 재사용 가능 기능 (누락) 오류 / 명세 오류 검출 예시 입력이 1024 이하이면 입력 값, 크면 1 증가 값 반환 // BlackBoxTest.java public class BlackBoxTest { public int bTest(int x) { return x; } } 명세에 따라 1024 이하인 경우..
![[소프트웨어 공학] JUnit](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fn29bV%2FbtrN4OrLvkc%2FAAAAAAAAAAAAAAAAAAAAAAD14PmCKS88tIohFlU-iS-AzJU2Wekd20MVdnYPe_hL%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DchmZULW8hVNBEbCeSm6ziMKf1ng%253D)
[소프트웨어 공학] JUnit
JUnit 이란? 자바 프로그램의 단위 테스트 프레임워크 어노테이션으로 쉽고 간결한 테스트 코드 테스트를 위해 코드에 출력문을 삽입할 필요 없음 예시 src/main/java(kr.se) 폴더에서 Calc 클래스 생성 -> File -> New -> Class 선택 package kr.se; public class Calc { //Calc.java private int res=0; public void add(int x, int y) { res=x+y; } public void sub(int x, int y) { res=x-y; } public int getResult( ) { return res; } } src/test/java(kr.se) 폴더에서 CalcTest 클래스 생성 -> Flie -> N..
![[소프트웨어 공학] 소프트웨어 테스트 - 2](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FqLuMI%2FbtrNAw5fACM%2FAAAAAAAAAAAAAAAAAAAAAMxtu4BHuHcNtqtEZpag-6fymFWbe_xA88_1rciQswtD%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DjyNR7s1EGRVXTBfy5JTmTB2w%252BMA%253D)
[소프트웨어 공학] 소프트웨어 테스트 - 2
테스트 프로세스 ISO/IEC/IEEE 29119 테스트 프로세스 조직 테스트 프로세스 조직 수준의 테스트 정책 및 전략 수립 테스트 목표, 원칙, 접근 방식 1년 동안 심각도 레벨1 오류 수를 5% 줄인다. 테스트 관리 프로세스 테스트 계획에 따른 수행여부 모니터링, 대응 진행 상태 측정/통제, 자원 재분배, 우선순위 조정 동적 테스트 프로세스 테스트 케이스 설계, 테스트 환경 구축하여 테스트 이슈 발생 시 레포팅 개발 단계에 따른 테스트 분류 단위 테스트(JUnit, 구글테스트, Python) 모의(Mock) 객체 사용(클래스의 객체 의존성 배제) 통합 테스트 모듈 간 상호 작용 테스트 빅뱅 통합 전략 단위 테스트 후에 한꺼번에 모듈의 통합 테스트 오류 원인 찾기 곤란 점진적 통합 전략 하향식(스텁 ..
![[소프트웨어공학] 소프트웨어 테스트 - 1](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FPC5np%2FbtrNILmEeqs%2FAAAAAAAAAAAAAAAAAAAAAMVUDXGyx6HUL-P3rL4qCHCcFqqFFOujDdIqyxPThojw%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DgV9Bp9NFbQNw%252BQA6e2kfnu8edho%253D)
[소프트웨어공학] 소프트웨어 테스트 - 1
소프트웨어 테스트의 중요성 소프트웨어는 일상생활을 편리하게 하지만 문제가 발생하면 위험 사전에 문제 발생 최소화를 위한 충분한 시험 필요 소프트웨어 테스트의 정의 정적 테스팅 오류 발견 및 방지 목적의 프로그램, 문서 분석과정 동적 테스팅 오류를 발견하기 위해 프로그램을 실행하는 과정 품질 평가, 향상을 위해 프로그램을 실행하는 과정 신뢰성, 성능, 편의성, 접근성, 보안성, 안전성 등 테스트 진화 과정 오류, 결함, 오작동 용어 정의 실수(mistake): 요구사항 잘못 파악 / 오해, 철자 오류 오류(error): 프로그램의 올바르지 않은 내부 상태 선행 및 후속 조건, 무결성 위배 상태 기대 값과 실제 계산 값의 차이 결함(fault): 오류를 발생시키는 프로그램 부분 잘못된 정보 반영, 올바른 정..
![[소프트웨어 공학] 디자인 패턴 Design Pattern](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fbucu4A%2FbtrMYTGCBD4%2FAAAAAAAAAAAAAAAAAAAAAMd7vR-uzWJvKLJ0gxiQ1k3Y7Gsg4R5cx2NHn8gyqaYx%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3Dz8ayf3APQxbHpLEfGdE0C0x6p7E%253D)
[소프트웨어 공학] 디자인 패턴 Design Pattern
디자인 패턴 전형적인 문제들에 대한 재사용 가능한 해결책 축적된 경험 활용, 불필요한 시행착오 감소 이름을 부여해서 설계 문제와 해법 및 결과 기술 문제: 고려할 제약 사항 기술 해법: 구성 요소, 요소 간 관계 및 책임, 협력관계 기술 결과: 패턴을 적용해서 얻는 결과, 장단점 기술 공통 언어 역할, 효율적인 협업 가능 디자인한 시스템의 안정성과 성능 향상 GoF (Gang of Four) 패턴 (생성/구조/행동 패턴) Factory Method 어떤 객체를 생성할 지를 기반 클래스로부터 분리하여 파생 클래스에서 결정 (캡슐화하여 분리처리) Singleton 어디서든 참조할 수 있는 객체를 하나만 생성 Adapter 클래스의 인터페이스를 다른 인터페이스로 변환 Composite 복합 객체와 단일 객체를..