[Quality Assurance] QA vs QC: 품질 보증과 품질 관리의 차이
·
CS(Computer Science)/Quality Assurance
1. 품질이란 무엇인가?품질(Quality)이란 제품 또는 서비스가 특정한 요구 사항이나 고객의 기대를 얼마나 충족하는지를 의미한다. 소프트웨어 개발에서는 정확성, 안정성, 사용성, 성능, 보안성 등이 품질을 구성하는 핵심 요소다. 품질 관리를 위해 기업은 일반적으로 QA(Quality Assurance, 품질 보증)와 QC(Quality Control, 품질 관리)를 병행하여 적용한다. 두 개념은 유사해 보이지만, 역할과 목적에서 본질적인 차이가 있다. 또한 품질 관리는 단일 활동이 아니라, 조직 전반에 걸친 단계적이고 체계적인 접근 방식이다. 일반적으로 다음과 같은 순서로 품질 활동이 발전한다: 품질 검사(QT) → 품질 관리(QC) → 품질 보증(QA) → 품질 경영(QM) → 전사적 품질 경영(T..
[Quality Assurance] ISO/IEC 25010 소프트웨어 품질 특성 완전 정리
·
CS(Computer Science)/Quality Assurance
ISO/IEC 25010: 소프트웨어 품질 특성 정리1. ISO/IEC 25010이란?ISO/IEC 25010은 소프트웨어 제품의 품질을 정의하고 평가하기 위한 국제 표준 품질 모델입니다. 기존 ISO/IEC 9126 모델을 개정한 것으로, 기능 적합성뿐만 아니라 성능, 사용성, 보안성, 유지보수성, 이식성 등 포괄적인 품질 특성을 포함합니다.이 표준은 두 가지 품질 모델을 정의합니다:제품 품질(Product Quality)사용 시 품질(Quality in Use)이 글에서는 제품 품질 모델에 중점을 두고 설명합니다.2. 제품 품질: 8가지 핵심 특성제품 품질은 8개의 상위 특성과 각 하위 요소로 구성되며, 소프트웨어의 기능적 완성도와 운영 적합성을 종합적으로 평가하는 기준으로 활용됩니다.3. 품질 특성..
[Computer Architecture] 비트와 바이트 쉽게 이해하기: 컴퓨터 데이터의 최소 단위
·
CS(Computer Science)/Computer Architecture
1. 왜 알아야 할까?컴퓨터는 사용자가 입력한 문자, 이미지, 음악, 영상 등 모든 데이터를 어떻게 저장하고 처리할까요?바로 1과 0, 두 가지 상태를 통해 모든 정보를 표현하는 것입니다. 이러한 표현 방식의 최소 단위가 비트(Bit)이며,이를 실질적인 단위로 다루기 위해 사용하는 것이 바이트(Byte)입니다. 프로그래밍, 데이터 분석, 시스템 설계, 파일 최적화 등 다양한 기술 분야에서비트와 바이트는 기본이자 핵심 개념입니다.이 글에서는 이 두 단위의 개념과 활용 방식을 쉽게 정리해보겠습니다. 2. 비트(Bit)란?Bit는 Binary Digit의 줄임말이며, 이진수 한 자리를 뜻합니다.즉, 하나의 비트는 오직 두 가지 값만 가질 수 있습니다.0 : 꺼짐, OFF, 전류 없음1 : 켜짐, ON, 전류 ..
[ETC, R] RStudio 자주 쓰는 단축키 정리 (Windows & macOS 포함)
·
ETC
1. 단축키 기본 이해WindowsmacOS의미Ctrl⌘ (Command)기본 조합 키Alt⌥ (Option)보조 조합 키Ctrl + Shift⌃ (Control)일부 고급 단축키에 사용 단축키는 운영체제에 따라 표기가 다르며, 본문에서는 Windows → macOS 순서로 병기키보드 설정은 메뉴바의 Tools → Modify Keyboard Shortcuts에서 변경 가능전체 단축키 목록 보기: Alt + Shift + K (macOS: ⌥ + Shift + K)2. 자주 쓰는 기본 단축키 모음기능WindowsmacOS현재 줄 / 선택 영역 실행Ctrl + Enter⌘ + Enter전체 코드 실행Ctrl + Alt + R⌥ + ⌘ + RR Markdown KnitCtrl + Shift + K⌘ + Sh..
[Git] 컨벤셔널 커밋 (Conventional Commits) 작성법과 도입 이유 정리
·
VCS(Version Control System)/Git & GitHub
1. 컨벤셔널 커밋이란 ❓컨벤셔널 커밋은 Git 커밋 메시지를 일정한 규칙으로 작성해 커밋 기록을 정형화하고 배포 자동화까지 연결하도록 만든 공개 규격이다.feat, fix 같은 키워드를 제목 앞에 붙여 메시지만 읽어도 변경 의도를 파악할 수 있다.2019 년 공식 스펙이 발표된 이후 Commitlint·semantic-release 등 주요 도구의 기본값으로 채택되었고, Angular·Vue·React Native 등 다양한 오픈소스와 기업 레포지터리가 활용한다.2. 메시지 기본 형식 ✏️구성 요소설명규칙type변경 유형아래 ‘주요 타입’ 키워드 사용scope영향 범위모듈·폴더 (선택)subject변경 요약50 자 이내 · 현재 시제 · 명령형body상세 설명변경 이유·세부 사항 (선택)footer부가..
[iOS] iOS 프로그래밍 실무 12주차 정리
·
Study/iOS
Navigation Controller vs Root View Controller iOS 앱 개발에서 root view controller와 navigation controller는 서로 다른 역할을 수행합니다.Root View Controller는 앱 실행 시 UIWindow에 가장 처음 설정되는 최상위 뷰 컨트롤러입니다. 사용자에게 가장 먼저 보여지는 화면이며, 앱의 진입점을 정의합니다.보통 UINavigationController나 UITabBarController와 같은 컨테이너 뷰 컨트롤러가 root view controller로 설정됩니다.위 그림에서는 Navigation Controller가 루트로 설정되어 있고, 그 내부에 실제 화면을 담당할 View Controller가 포함되어 있습니다..
[iOS] iOS 프로그래밍 실무 11주차 정리
·
Study/iOS
JSON 디코딩 시 발생하는 오류 iOS 앱 개발 중 URLSession과 JSONDecoder를 이용하여 API로부터 데이터를 가져오고 파싱할 때, 흔히 마주치는 에러 중 하나가 다음과 같습니다: 🔧 해결 방법 1: do-catch를 사용한 에러 처리let decoder = JSONDecoder()do { let decodedData = try decoder.decode(MovieData.self, from: JSONdata) // decodedData 활용} catch { print("Decoding failed with error: \(error)")} 이렇게 하면 JSON 파싱이 실패할 경우에도 앱이 크래시 없이 동작하며, 실패 원인을 로그로 확인할 수 있습니다.🧹 해결 방법 ..
[iOS] iOS 프로그래밍 실무 10주차 정리
·
Study/iOS
작성일자(250507) 기준 영화진흥위원회 박스오피스 순위 Table View, Auto Layout Constraints 프로토콜을 선언, 요구되는 메서드를 미구현 오류 UITableView의 delegate와 dataSourcetable.dataSource = selftable.delegate = self 이 두 줄은 UITableView가 데이터를 어떻게 표시하고, 사용자 반응에 어떻게 대응할지를 정하는 핵심 코드다.dataSource테이블에 무엇을 얼마나 보여줄지 결정하는 역할.예: 몇 줄인지, 각 셀에 어떤 텍스트를 넣을지.delegate사용자의 행동에 대한 반응을 처리.예: 셀을 눌렀을 때 어떤 동작을 할지 지정.self를 할당하는 이유ViewController가 직접 이 두 역할을..
[iOS] iOS 프로그래밍 실무 9주차 정리
·
Study/iOS
🌐 API란 무엇인가?웹 개발이나 앱 개발에서 자주 등장하는 용어, API.많이 들어봤지만 정확히 무엇을 의미하고, 왜 사용하는지 명확히 짚고 넘어가는 것이 중요합니다.🔧 API란?API (Application Programming Interface)는소프트웨어와 소프트웨어 사이의 통신을 가능하게 하는 연결 인터페이스입니다.사용자가 **프로그램과 대화하는 도구가 UI(User Interface)**라면,프로그램끼리 데이터나 기능을 주고받기 위한 연결창구가 API입니다.예를 들어, 영화진흥위원회(KOBIS)에서 제공하는 영화 순위 정보를 앱에서 사용하려면,앱은 KOBIS 서버에 데이터 요청(Request)을 보내고, 서버는 응답(Response)으로 JSON 데이터를 전달합니다.이 전체 흐름을 담당하는..
[iOS] iOS 프로그래밍 실무 7주차 정리
·
Study/iOS
UITableViewCell.CellStyleUITableView는 iOS 개발에서 가장 널리 사용되는 컴포넌트 중 하나입니다. 특히 UITableViewCell은 사용자에게 정보를 보여주는 핵심 요소입니다. 이 셀의 스타일을 정의하는 UITableViewCell.CellStyle 열거형(enum)은 각기 다른 레이아웃을 제공해 사용성 높은 UI를 구성할 수 있게 도와줍니다. 📌 UITableViewCell.CellStyle이란?UITableViewCell.CellStyle은 UITableViewCell의 콘텐츠 배치를 정의하는 열거형입니다. Apple 공식 문서에 따르면, 이 열거형은 다음과 같은 스타일들을 제공합니다:defaultsubtitlevalue1value2이들 각각은 textLabel과 d..
[iOS] iOS 프로그래밍 실무 6주차 정리
·
Study/iOS
Swift 옵셔널 체이닝 (Optional Chaining)Swift에서 옵셔널 체이닝은 옵셔널 값의 속성, 메서드, 서브스크립트에 접근할 때 사용하는 안전한 문법입니다. ?를 통해 중첩된 옵셔널 구조에 안전하게 접근할 수 있어 코드가 간결하고 안정적입니다. 🔓 옵셔널 언래핑 방식 비교var x: String? = "Hi"1. 강제 언래핑 (x!) → ❌ 위험, nil이면 crash2. 옵셔널 바인딩 (if let) → ✅ 안전3. nil 병합 연산자 (??) → ✅ 기본값 제공4. 옵셔널 체이닝 (x?.count) → ✅ 가장 간결하고 안전한 방법let b = x?.count // Optional(2)🤖 Optional Chaining이란?cell.textLabel?.texttextLabel은 UI..
[Data Analysis] R vs Python, 데이터 분석에 더 강력한 언어는?
·
Data Analysis
데이터 분석을 시작하려 할 때 가장 많이 받는 질문 중 하나는 바로 이거죠.“R이 좋아요, 아니면 Python이 좋아요?”둘 다 데이터 분석에서 널리 사용되는 언어지만, 목적과 상황에 따라 장단점이 분명히 다릅니다.이 글에서는 Python과 R의 특징을 비교 분석하고, 어떤 상황에서 어떤 언어가 더 적합한지 자세히 알려드릴게요.또한, 이 두 언어 외에도 함께 사용하면 시너지를 내는 언어들도 소개해 드립니다.📊 Python vs R: 데이터 분석 언어 비교표항목PythonR주 사용 분야데이터 분석, 머신러닝, 웹개발, 자동화 등 범용통계 분석, 시각화, 생물정보학, 학술 연구학습 곡선쉽고 직관적 (범용 언어답게 배우기 좋음)통계 개념 요구로 다소 가파를 수 있음통계 분석 능력기본 통계는 가능, 고급 통계..