1장 요구사항 확인 1. 소프트웨어 생명 주기 1. 소프트웨어 생명 주기
스크럼 기법 * ¹ 스크럼 >🖍️ 스크럼? 럭비에서 양 팀 선수들이 럭비공을 가운데 두고 서로 대치해 있는 대형 팀이 중심이 되어 개발의 효율성을 높인다는 의미 팀원 스스로가 스크럼 팀을 구성해야함 개발에 관한 모든 것을 스스로 해결할 수 있어야함 스크럼 팀
XP 기법 * ¹ XP(eXtreme Programming) >🖍️ XP 수시로 발생하는 고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상시키는 방법 짧고 반복적인 개발주기, 단순한 설계, 고객의 적극적인
요구사항 정의 * 💡 요구사항의 개념과 특징 💡 xp 개발 과정 순서, 단계별 특징 💡 xp 실천 방법 구별 ¹ 요구사항의 개념 및 특징 >🖍️ 요구사항 소프트웨어가 어떤 문제를 해결하기 위해 제공하는 서비스에 대한 설명과 정상적으로 운영되는데 필요한 필요한
요구사항 분석 * 💡 요구사항분석의 특징 💡 요구사항 분석에 이용되는 도구의 특징 💡 자료 흐름도의 네 가지 구성요소, 표기방법, 명칭(영문) 💡 자료 사전에서 사용되는 기호들의 종류와 의미 ¹ 요구사항 분석의 개요 >🖍️ 요구사항 분석 소프트웨어 개발의 실제적인 첫 단계 개발 대상에 대한 사용자의 요구사항을 이해하고 문서화(명세화)하는 활동 ...
UML * 💡 💡 💡 💡 ¹ 요구사항 분석의 개요 ² 구조적 분석 기법 ³ 자료 흐름도(Data Flow Diagram) >🖍️ 자료 흐름도 요구사항 분석에서 자료의 흐름 및 변환 과정과 기능을 도형 중심으로 기술하는 방법 자료 흐름 그래프, 버블 차트
💡 유스케이스 다이어그램의 구성요소의 종류와 기능 알기💡 클래스 다이어그램의 개념, 구성요소, 요소별 기능💡 순차 다이어그램의 구성요소💡 🖍️ 유스케이스 다이어그램개발될 시스템과 관련된 외부 요소들, 즉 사용자와 다른 외부 시스템들이 개발될 시스템을 이용해 수
💡 사용자 인터페이스의 개념, 특징💡 CLI, NUI 중심으로 구분 알아두기💡 모바일 제스처 종류💡 사용자 인터페이스의 기본 원칙 - 종류, 의미💡 사용자 인터페이스의 올바른 설계 지침💡 사용자 인터페이스 개발 시스템의 기능 3가지🖍️ 사용자 인터페이스 U
💡 각 특성 별 하위 특성들 읽기소프트웨어의 기능, 성능, 만족도 등 소프트웨어에 대한 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성의 총체소프트웨어의 품질은 사용자의 요구사항을 충족시킴으로써 확립됨: 소프트웨어의 품질 특성과 평가를 위한 표준 지침으로서 국
소프트웨어 아키텍처 💡 소프트웨어 아키텍처의 특징과 역할, 설계의 기본 원리 💡 모듈화의 특징 💡 추상화의 유형 3가지 💡 정보은닉의 특징 💡 품질 속성 각 측면의 세부 속성들 💡 소프트웨어 아키텍처 설계 과정 순서, 단계별 내용 간단히 ¹ 소프트웨어 아키
아키텍처 패턴 💡 아키텍처 각 패턴들의 특징 !! ¹ 아키텍처 패턴의 개요 > 🖍️ 아키텍처를 설계할 때 참조할 수 있는 전형적인 해결 방식 or 예제 SW 시스템의 구조를 구성하기 위한 기본적인 윤곽 제시 서브시스템들과 그 역할이 정의되어 있음 서브시스템 사이
객체지향 💡 객체지향의 특징 💡 객체와 메시지의 개념 💡 클래스의 개념과 특징 ¹ 객체지향의 개요 > 🖍️ 소프트웨어를 개발할 때, 객체들을 조립해서 작성할 수 있는 기법 구조적 기법의 문제점으로 인한 소프트웨어 위기의 해결책 구조적 기법의 문제점:
💡 객체지향 분석 방법론 개념 간단히💡 럼바우 분석 기법 3가지 - 객동기💡 객체지향 설계 원칙🖍️ 객체지향 분석 OOA: Object Oriented Analysis사용자의 요구사항을 분석하여 요구된 문제와 관련된 모든 클래스, 이와 연관된 속성과 연산, 그들
모듈 💡 모듈의 특징 💡 결합도/응집도 개념, 종류, 순서, 결합도 별 의미 💡 팬인 팬아웃 계산 💡 N-S 차트 특징! ¹ 모듈의 개요 > 🖍️ 모듈 Module 모듈화를 통해 분리된 시스템의 각 기능들로, 서브루틴, 서브시스템, 소프트웨어 내의 프로그램, 작업 단위 등과 같은 의미로 사용됨 모듈은 단독으로 컴파일 가능, 재사용 가능 모듈의 ...
💡 공통 모듈의 개념💡 공통 모듈 구현 시 준수해야할 명세 기법💡 재사용 규모에 따른 분류💡 결합도 낮게, 응집도 높게🖍️ 공통 모듈여러 프로그램에서 공통적으로 사용할 수 있는 모듈EX) 로그인 기능: 메인 화면 or 구매 버튼 클릭시자주 사용되는 계산식이나
💡 코드의 주요 기능 5가지💡 코드의 종류🖍️ 코드컴퓨터를 이용하여 자료를 처리하는 과정에서 분류/조합 및 집계를 용이하게 하고, 특정 자료의 추출을 쉽게 하기 위해 사용하는 기호EX) 주민등록번호, 학번, 전화번호정보를 신속정확명료하게 전달할 수 있음일정한 규칙
💡 디자인 패턴의 구성요소, 유형, 특징🖍️ 디자인 패턴각 모듈의 세분화된 역할이나 모듈들 간의 인터페이스와 같은 코드를 작성하는 수준의 세부적인 구현 방안을 설계할 때 참조할 수 있는 전형적인 해결방식아키텍처 패턴보다 세부적임디자인 패턴은 문제 및 배경, 실제 적
💡 요구사항 검증 방법🖍️ 요구사항 검증인터페이스의 설계 및 구현 전에 사용자들의 요구사항이 요구사항 명세서에 정확하고 완전하게 기술되었는지 검토, 개발 범위의 기준인 베이스라인 설정요구사항 검토 계획 수립 ➡︎ 검토 및 오류 수정 ➡︎ 베이스라인 설정인터페이스 설
💡 미들웨어의 개념과 종류별 특징🖍️ 미들웨어미들 + 소프트웨어분산 컴퓨팅 환경에서 서로 다른 기종 간의 하드웨어나 프로토콜, 통신 환경 등을 연결하여 운영체제와 응용 프로그램, 또는 서버와 클라이언트 사이에서 원만한 통신이 이루어지도록 다양한 서비스 제공표준화된
💡 자료 구조의 분류💡 선형 리스트 특징💡 스택 개념, 오버플로, 언더플로💡 큐 특징💡 그래프 최대 간선 수자료 구조는 자료의 표현과 그것과 관련된 연산일련의 자료들을 조직하고 구조화하는 것어떠한 자료 구조에서도 필요한 모든 연산들을 처리할 수 있음자료 구조에
💡 트리 운행법💡 수식 변환하기🖍️ 정점(Node)과 선분(Branch)을 이용하여 사이클을 이루지 않도록 구성한 그래프의 특수한 형태노드, 링크로 이루어짐족보, 조직도 표현디그리(차수): 각 노드에서 뻗어 나온 가지의 수루트노드: 맨 위에 있는 노드(level(
정렬 💡 ¹ 삽입 정렬 Insertion Sort > 🖍️ 이미 순서화된 파일에 하나의 레코드를 순서에 맞게 삽입시켜 정렬 🖍️ n번째 키를 처음 ~ n-1번째 키와 비교 가장 간단한 정렬 방식 평균, 최악 시간복잡도: O(n²) swap이 아니라 비교 대상
💡 🖍️ 전체 파일을 두 개의 서브파일로 분리해가면서 key 레코드를 검색하는 방식반드시 정렬된 파일이어야 검색 가능찾고자 하는 값을 중간 key 값과 비교하면서 검색비교 횟수를 거듭할 때마다 검색 대상이 되는 데이터의 수가 절반으로 줄어듦➡︎ 탐색 효율이 좋고 탐
소프트웨어 개발 과정에서 다루어야 할 데이터들을 논리적인 구조로 조직화하거나 물리적인 공간에 구축한 것논리, 물리 데이터저장소로 구분논리 데이터저장소: 데이터 간의 연관성, 제약조건을 식별하여 논리적인 구조로 조직화물리 데이터저장소: 논리 데이터저장소에 저장된 데이터와
연속적인 실행이나 분기, 반복 등의 제어가 가능한 SQL일반적인 프로그래밍 언어에 비해 효율은 떨어지지만 단일 SQL 문장으로 처리하기 어려운 연속적인 작업들을 처리하는데 적합다양한 기능을 수행하는 저장 모듈을 생성할 수 있음DBMS 엔진에서 직접 실행되기 때문에 입출
🖍️ 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것사용자 중심으로 진행향후 관리를 고려하여 모듈화(기능별로 나눔)하여 패키징다양한 환경에서 소프트웨어 사용할 수 있도록 일반적인 배포형태로 패키징운영체제, OS, 메모리 등에 필요한 최소 환경 정의U
💡 디지털 저작권 관리 구성요소 각각 특징🖍️ 창작자가 가지는 배타적 독점적 권리, 타인의 침해를 받지 않을 고유한 권한원본 콘텐츠가 아날로그인 경우, 디지털로 변환 후 패키저에 의해 DRM 패키징을 수행패키징을 수행하면 콘텐츠에는 암호화된 저작권자의 전자서명이 포
💡 형상 관리 중요성, 기능, 용어🖍️ 형상 관리 SCM; Software Configuration Management소프트웨어의 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동소프트웨어 변경의 원인을 알아내고 제어, 적절히 변경되고 있는지
💡 화이트박스/블랙박스 테스트 개념, 차이점, 종류🖍️ 화이트박스 테스트모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 ⭐️논리적인 모든 경로를 테스트하여 테스트 케이스를 설계하는 방법설계된 절차에 초점을 둔 구조적 테스트프로시저 설계의 제어 구조를 사용하여 테스
💡 단위 테스트, 인수 테스트개발 단계에 따라 분류(테스트레벨)소프트웨어의 개발 단계에서부터 테스트를 수행하므로 단순히 소프트웨어에 포함된 코드 상의 오류뿐만 아니라 요구 분석의 오류, 설계 인터페이스 오류 등도 발견할 수 있음애플리케이션 테스트와 소프트웨어 개발 단
통합 테스트 💡 하향식, 상향식 💡 테스트 드라이버, 스텁 ¹ 통합 테스트 > 🖍️ 통합 테스트 단위 테스트가 끝난 모듈을 통합하는 과정에서 발생하는 오류 및 결함을 찾는 테스트 비점진적 통합 방식 단계적으로 통합하는 절차 없이 모든 모듈이 미리 결합되어 있는
💡 🖍️ 복잡도 Complexity 시스템이나 시스템 구성 요소 또는 소프트웨어의 복잡한 정도시스템/소프트웨어를 어느 정도의 수준까지 테스트해야하는지개발하는데 어느 정도의 자원이 소요되는지 예측하는데 사용복잡도가 높으면 장애가 발생할 수 있으므로 정밀한 테스트를 통
💡 외계인 코드 개념, 클린 코드 작성 원칙💡 소스 코드 품질 분석 도구🖍️ 나쁜 코드를 배제하고 클린 코드로 작성하는 것클린 코드: 누구나 쉽게 이해하고 수정 및 추가할 수 있는 단순, 명료한 코드나쁜 코드프로그램의 로직이 복잡하고 이해하기 어려운 코드스파게티
💡 💡 인터페이스는 시스템 모듈 간 통신 및 정보 교환을 위한 통로로 사용되므로 충분한 보안 기능을 갖추지 않으면 시스템 모듈 전체에 악영향을 줄 수 있음기능이 수행되는 각 구간들의 구현 현황ㅇ을 확인하고 각 구간에 어떤 보안 취약점이 있는지 분석송수신 영역의 구현
💡 🖍️ 인터페이스가 정상적으로 문제없이 작동하는지 확인구현 검증 도구와 감시 도구를 이용하여 인터페이스의 동작 상태 확인같은 테스트 코드를 여러 번 작성하지 않게 도와줌테스트마다 예상 결과를 기억할 필요가 없게 하는 자동화된 해법을 제공하는 단위 테스트 프레임워크
데이터베이스 설계 💡 설계 단계별 특징(순서, 대표 작업) ¹ 데이터베이스 설계 > 🖍️ 사용자의 요구를 분석하여 그것들을 컴퓨터에 저장할 수 있는 데이터베이스의 구조에 맞게 변형한 후 특정 DBMS로 데이터베이스를 구현하여 일반 사용자들이 사용하게 하는 것 ²
💡 🖍️ 개념적 데이터 모델의 가장 대표적개체 타입과 관계 타입으로 현실세계 표현개체(Entity), 관계(Relationship), 속성(Attribute)특정 DBMS를 고려한 것은 아님☐: 사각형 - 개체◇: 마름모 - 관계⃝: 타원 - 속성◎: 이중 타원 -
💡 키 개념, 종류💡 무결성 종류🖍️ 조건에 만족하는 튜프를 찾거나 순서대로 정렬할 때 튜플들을 서로 구분할 수 있는 기준이 되는 애트리뷰트튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합기본키로 사용할 수 있는 속성들모든 릴레이션에는 반드시 하나 이상의
💡 관계대수 vs 관계해석💡 🖍️ 관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는가를 기술하는 절차적인 언어선택 조건을 만족하는 튜플의 부분집합을 구하여 새로운 릴레이션 만듦수평 연산σ속성 리스트에 제시된 속성 값만을 추출하여 새로
🖍️ 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어가는 과정하나의 종속성이 하나의 릴레이션에 표현될 수 있도록 분해해가는 과정차수가 높아질수록 만족시켜야할 제약 조건이 늘어남논리적 설계
🖍️ 상향식 비용 산정 기법경험적 추정 모형, 실험적 추정 모형 이라고도 함개발 비용 산정의 자동화를 목표로 함과거 유사한 프로젝트를 기반으로하여 경험적으로 유도된 것COCOMO, Putnam, 기능 점수(FP) 모형 등이 있음보헴이 제안한 것원시 프로그램의 규모인
🖍️ 개발 단계에서 수행하는 품질 관리에 사용되는 국제 표준ISO/IEC 12207, CMMI, SPICE🖍️ ISO 국제표준화기구에서 만든 표준 소프트웨어 생명 주기 프로세스개발, 운영, 유지보수 등을 체계적으로 관리하기 위한 소프트웨어 생명 주기 표준을 제공기본
책시나공 2023 정보처리기사 필기공부 기간2024/1/8 ~ 2024/2/192024/2/20 필기 시험한주에 한과목 공부하고 마지막주에는 기출문제 풀기시나공 1, 2, 3, 4, 5과목 순서대로 공부(다시 돌아간다면 1, 2, 5, 3, 4로 공부할 것 같다)한 과