반응형

소프트웨어 설계 8

정보처리기사 1과목 소프트웨어 설계 (미들웨어 솔루션)

미들웨어 솔루션 운영체제(OS)와 해당 운영체제에서 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어 DB (Database) 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어, 2-Tier* 아키텍처 2-Tier : 데이터베이스 미들웨어를 사용한 아키텍쳐 (클라이언트가 직접 서버의 DB에 접속해 자원 활용) RPC (Remote Procedure Call, 원격 프로시저 호출) 응용 프로그램의 프로시저를 사용해 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어 MOM (Message Oriented Middleware, 메시지 지향 미들웨어) 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어 TP-Monitor (Transa..

정보처리기사 1과목 소프트웨어 설계 (인터페이스 요구사항 검증 / 처리유형과 통신유형)

요구사항 검증 (Requirements Verification) 인터페이스 요구사항 검토 계획 수립 → 검토 및 오류 수정 → 베이스라인 설정 요구사항 검증 방법 동료 검토 (Peer Review) 요구사항 명세서 작성자가 내용을 직접 설명하고 동료들이 이를 들으면서 결함을 발견하는 검토 방법 워크 스루 (Walk Through) 검토회의 전에 요구사항 명세서를 미리 배포하여 사전 검토 후, 짧은 검토 회의를 통해 결함을 발견하는 검토 방법 인스펙션 (Inspection) 제 3자가 검토하는 방법 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 확인하면서 결함을 발견하는 검토 방법 인터페이스 요구사항 검증 주요 항목 완전성 (Completeness) 사용자의 모든 요구사항이 누락되지 않고 완전하게 ..

정보처리기사 1과목 소프트웨어 설계 (뒷목을 잡게 만드는 디자인 패턴 외우는 꿀팁)

정보처리기사 시험 1과목 소프트웨어 설계에서 비전공자인 나의 뒷목을 잡을 만한 내용은 [애플리케이션 설계] - [디자인 패턴] 부분이라고 생각한다. 혹시 나와 같은 사람이 이 글을 만난다면 조금이라도 도움이 되고싶다. '확실히 알아서 설명한다' 보다는 조심스럽게 내가 이해하려고 노력한 과정을 공유하고자 한다. 디자인 패턴 아키텍처 패턴이 디자인 패턴보다 상위 수준의 설계에 사용 서브 시스템에 속하는 컴포넌트들과 그 관계를 설계하기 위한 참조 모델 생성 패턴 (Creational Pattern) - 기존 코드의 유연성과 재사용을 증가시키는 다양한 객체 생성 매커니즘들을 제공 추상 팩토리 (Abstract Factory) 서로 연관, 의존하는 객체들을 그룹으로 생성해 추상적으로 표현 빌더 (Builder) ..

정보처리기사 1과목 소프트웨어 설계 (정처기 필기시험 때 무조건 알아야 하는 기본 용어 정리)

기본적인 내용이라 당연히 알고 있다 생각해도 시험 풀 때 갑자기 헷갈린다면? 내가 고른 정답에 확신이 없다면? 이런 것도 헷갈려하는 내 자신을 원망하기 싫다면 필수적으로 알아야 한다. 객체 (Object) 독립적으로 식별 가능한 이름을 갖고 있다. 객체와 객체는 상호 연관성에 의한 관계가 형성 객체는 행위의 특징을 나타내며, 객체가 반응할 수 있는 메세지의 집합을 행위(연산, Method)라고 한다. 클래스 (Class) 하나 이상의 유사한 객체들을 묶어 하나의 공통된 특성을 표현한 것 공통된 속성과 연산(행위)를 갖는 객체의 집합 객체지향 프로그램에서 유사한 객체들을 묶어 공통된 특성을 표현한 데이터를 추상화하는 단위 각각의 객체들이 갖는 속성과 연산(Method)을 정의하고 있는 틀 Super Cla..

정보처리기사 1과목 소프트웨어 설계 (소프트웨어 아키텍처 패턴 종류)

소프트웨어 아키텍처 사용자의 비기능적 요구사항으로 나타난 제약 반영 기능적 요구사항을 구현하는 방법을 찾는 해결 과정 모듈화(Modularity) - 시스템 기능들을 모듈 단위로 나눠 소프트웨어의 성능 및 재사용성을 향상시키는 것 추상화(Abstraction) - 전체적이고 포괄적인 개념을 설계한 후 차례대로 세분화하여 구체화 시키는 것 과정 추상화 (자세한 수행과정 정의 없이 전반적인 흐름만 파악) 데이터 추상화 (데이터의 세부적인 속성이나 용도를 정의하지 않고 데이터 구조를 대표하는 것으로 대체 제어 추상화 (이벤트 발생의 정확한 절차나 방법을 정의하지 않고 대표하는 표현으로 대체) 단계적 분해(Stepwise Refinement) - Niklaus Wirth에 의해 제안된 하향식 설계 전략 (상세한..

정보처리기사 1과목 소프트웨어 설계 (User Interface / UI 설계 도구)

사용자 인터페이스(UI; user Interface) 사용자가 사용하는 서비스나 제품의 화면 안의 디자인, 레이아웃 등 모든 것을 의미 UX/UI 관련 내용을 정리하려다가 글의 목적과 멀어지는 것 같아 괜찮게 정리된 링크만 걸어두고 계속 이어나가도록 하겠다. UX/UI 디자인 정의, 특징, 차이점 완벽하게 파악해봅시다 UX/UI의 정의와 특징, 차이점, 좋은 UX 디자인을 위한 3가지 원칙에 대해 알아봅니다. modulabs.co.kr UI 구분 CLI (Command Line Interface) 텍스트 형태로 이루어진 인터페이스 GUI (Graphical User Interface) 마우스로 선택해 작업을 하는 그래픽 환경의 인터페이스 NUI (Natural User Interface) 사용자의 말이나..

정보처리기사 1과목 소프트웨어 설계 (UML / 구조적 다이어그램 (Structural Diagram) / 행위 다이어그램 (Behavioral Diagram))

UML(Unified Modeling Language) 시스템 분석, 설계, 구현 등 시스템 개발과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어 구성 요소 사물(Things) (다이어그램 안에서 관계가 형성될 수 있는 대상, 모델을 구성하는 가장 중요한 기본 요소) 관계(Relationship) (연관(ㅡ), 집합(◇), 포함(◆), 일반화(자식▷부모 사물 방향으로 연결), 의존(짧은 시간 동안만 연관 유지)) 다이어그램(Diagram) 다이어그램 종류 구조적 다이어그램 (Structural Diagram) 클래스 다이어그램 (Class Diagram) 클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현 객체 다이어그램 ..

정보처리기사 1과목 소프트웨어 설계 (폭포수 모형과 애자일 모형 / 스크럼(Scrum) / XP(eXtreme Programming))

소프트웨어 생명 주기, SDLC(Software Development Life Cycle) 폭포수 모형(Waterfall Model) 가장 오래되고 가장 폭넓게 사용된 고전적 생명 주기 모형 한 단계가 끝나야만 다음 단계로 넘어가는 선형 순차적 모형 개발 중간에 요구사항 변경이 용이하지 않음 타당성 검토 → 계획 → 요구분석 → 설계 → 구현(코딩) → 테스트(검사) → 유지보수 애자일 모형(Agile Model) 변화에 유연하게 대응 일정한 주기(Iteration, Sprint)를 반복하면서 개발과정 진행 절차와 도구보다 고객(개인)과의 소통에 초점을 맞춤 ex) XP(eXtreme Programming), 스크럼(Scrum), 칸반(Kanban), 크리스탈(Crystal), 린(LEAN) 스크럼(Sc..

반응형