[엘리스QA트랙]SW아키텍처

황인철·2025년 2월 4일

엘리스 QA트랙

목록 보기
6/18

1. 소프트웨어 아키텍처

  1. 시스템의 구성 요소와 그들 간의 관계 및 상호작용을 정의하는 구조
  2. SW시스템의 품질을 유지하고 확작성, 안정성, 보안성을 확보

2. 소프트웨어 아키텍처의 중요성

  • 시스템의 복잡도를 관리 및 유지보수 비용 절감
  • 다양한 팀 간의 협업을 효과적으로 지원
  • 성능, 확장성, 보안성을 보장

3. 앱 아키텍처의 주요 구성 요소

4. 각 구성 요소의 상호 작용

5. 프론트엔드의 역할

  • 사용자 인터페이스 제공
  • 사용자 입력 처리 및 시각적인 콘텐츠 출력
  • API 호출을 통해 백엔드와 데이터 통신

6. 데이터 베이스 설계원칙

  1. 정규화 : 중복 데이터를 최소화하여 데이터 무결성 확보
  2. 인덱스 최적화 : 검색 속도를 높이기 위한 인덱스 설정
  3. 보안 : 민감한 데이터를 암호화하고 접근 권한을 관리

7. 클라이언트 - 서버 모델의 장단점

8. 클라이언트란 무엇인가?

클라이언트
: 서버에 요청을 보내고, 응답을 받아 사용자와 상호작용하는 장치 또는 애플리케이션

주요역할

  • 사용자 인터페이스 제공
  • 사용자 입력 처리 및 시각적인 콘텐츠 출력
  • API 호출을 통해 백엔드와 데이터 통신

9. 서버란 무엇인가?

서버
: 클라이언트의 요청을 처리하고 데이터 연산 및 저장을 담당하는 중앙 컴퓨터 또는 시스템

주요역할

  • 클라이언트의 요청 처리 및 응답 생성
  • 데이터 베이스와 상호작용
  • 비즈니스 로직 실행 및 데이터 검증

10. 서버의 기술적 구성 요소

11. 데이터 통신에서의 보안과 최적화

보안
: SSL/TLS를 사용한 데이터 암호화
: 인증 토큰(JWT, OAuth) 활용

최적화
: 데이터 압축(Gzip)으로 네트워크 사용량 감소
: CDN(Content Delivery Network)으로 데이터 전송 속도 향상
: 캐싱을 통해 반복 요청 최소화

12. RESTful API란 무엇인가?

: Representational State Treansfer 원칙을 준수하는 API

  1. 무상태성 : 서버가 클라이언트 상태를 저장하지않음
  2. 리소스 기반 설계: URL로 리소스를 식별
    .3. HTTP 메서드 활용 : GET, POST, PUT, DELETE

13. API응답 구조

14. 데이터 포맷의 종류와 특징

JASON

  • 경형 데이터 교환 포맷
  • 사람이 읽기 쉬우며 대부분의 언어와 호환
  • 가볍고 처리 속도가 빠름

XML

  • 데이터 저장 및 전송에 사용
  • 태그 기반 구조로 유연성이 높음
  • 복잡한 데이터 표현에 적합

15. API 인증의 필요성

16. 고급 인증 방식

JWT: 클라이언트가 서버와 통신할 때 인증 상태를 유지
OAuth 2.0 : 엑세스 토큰을 통해 인증 및 권한 부여 인증과 권한을 분리하여 보안강화

17. 사용자 인터페이스(UI)란 무엇인가?

UI(User Interface)
: 사용자가 앱과 상호작용하는 시각적, 물리적 구성 요소
1. 사용자가 앱의 기능을 쉽게 접근하고 이해하도록 설계
2. 복잡한 비즈니스 로직이나 데이터 흐름을 추상화하여 사용자 친화적으로 제공

18. UI 설계의 원칙

  1. 일관성 : 버튼, 메뉴 등 디자인 요소가 일관되어야함
  2. 직관성: 사용자사 쉽게 학습하고 사용할 수 있어야함
  3. 응답성 : 사용자 입력에 빠르게 반응
  4. 접근성 : 다양한 사용자(장애인)가 쉽게 사용가능해야함

19. 데이터 저장소 계층이란?

: 데이터를 저장하고 관리하는 계층으로, DB와 연결됨
1. 데이터를 안전하게 저장
2. 빠르고 효율적인 데이터 검색
3. 데이터 일관성 및 무결성 유지

20. 데이터베이스의 주요 구성 요소

21. 관계형 데이터 베이스

: 테이블 간의 관계를 기반으로 데이터를 관리
1. 데이터의 정형화된 구조
2. 관계를 통해 데이터 일관성과 무결성을 유지

22. 비관계 데이터 베이스

: 테이블 구조를 따르지 않고 데이터를 유연하게 저장
1. 비정형 데이터 처리에 유리
2. 스키마가 필요 없으며 확장성이 높음

23. 데이터 모델링

: 데이터베이스 구조를 시각적으로 설계하는 과정
데이터를 효율적으로 저장하고 관계를 정의
1. 데이터 중복 방지
2. 데이터베이스의 일관성과 무결성 보장

24. 데이터 교환 시 고려 사항

profile
열심히하는QA가되고싶어요

0개의 댓글