지난 정기 기사 시험 2회차에 필기를 합격했다.CBT로 진행되는 시험이라 모의고사가 마땅치 않아 걱정했지만 기출 문제에서 꽤 많이 출제가 되어 문제 풀이는 수월했다.그러나 정처기를 준비하는 모든 사람들이 알듯이 진짜 고비는 실기다. 이제부터 실기 준비에 전념할 것이다.
설계 기법 중 하향식 설계 방법과 상향식 설계 방법에 대한 비교 설명으로 가장 옳지 않은 것은? ① 하향식 설계에서는 통합 검사 시 인터페이스가 이미 정의 되어 있어 통합이 간단하다. ② 하향식 설계에서 레벨이 낮은 데이터 구조의 세부 사항은 설계초기 단계에서 필요하다. ③ 상향식 설계는 최하위 수준에서 각각의 모듈들을 설계하고 이러한 모듈이 완성되면 이들을 결합하여 검사한다. ④ 상향식 설계에서는 인터페이스가 이미 성립되어 있지 않더라도 기능 추가가 쉽다. ☞ 하향식 설계 방법의 장점 *** 설명 상향식 설계 : 구체적이고 작은 것부터 만드는 설계 방식 개별 알고리즘이나 전체 프로그램의 구성 요소를 설계할 때 유용 문제를 관리하기 쉬운 작은 덩어리로 나누면 각 부분을 개별적으로 작업하고 최종적으로 완전..
다형성이란 하나의 객체가 여러가지 형상을 가질 수 있는 것을 말함 거기에는 오버로딩과 오버라이딩이 있는데 이의 차이점을 아는 것 또한 중요함 오버로딩 메소드의 이름은 같지만 인수를 받는 자료형과 개수를 달리하여 여러 기능을 정의 오버라이딩 상위 클래스에서 정의한 메소드와 이름은 같지만 메소드 안의 실행 코드를 달리하여 자식 클래스에서 재정의하여 사용 오버로딩 오버로딩을 이용하면 같은 이름의 함수를 여러 개 정의할 수 있고, 각 함수는 다른 매개변수 형식이나 개수를 가질 수 있음. 이를 통해 프로그래머는 동일한 작업을 수행하는 함수를 하나로 묶을 수 있음. 오버라이딩 도와줘 챗지피티 오버라이딩(Overriding)은 객체 지향 프로그래밍에서 상속 관계에 있는 클래스들 간에 발생하는 개념입니다. 상속이란, ..
UI의 구분 CLI(Command Line Interface) : 텍스트 형태로 이루어진 인터페이스 GUI(Graphical User Interface) : 마우스로 선택해 작업을 하는 그래픽 환경의 인터페이스 NUI(Natural User Interface) : 사용자의 말이나 행동으로 기기를 조작하는 인터페이스 VUI(Voice User Interface) : 사람의 음성으로 기기를 조작하는 인터페이스 OUI(Organic User Interface) : 모든 사물과 사용자 간의 상호작용을 위한 인터페이스 UI의 기본 원칙 직관성 유효성 : 사용자가 원하는 행동을 정확하고 완벽하게 달성해야 함 학습성 : 누구나 쉽게 배우고 익힐 수 있어야 함 유연성 : 사용자의 요구사항을 최대한 포용하고 실수를 방지..
UML의 정의 : 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원활하게 이루어지도록 표준화한 객체지향 모델링 언어 UML의 구성 요소 : 사물(Things), 관계(Relationship), 다이어그램(Diagram) [사관다] 사물 구조 사물 : 시스템의 개념적, 물리적 요소를 표현 / 클래스, 유스케이스, 컴포넌트, 노드 등 행동 사물 : 시간과 공간에 따른 요소들의 행위 표현 / 상호작용, 상태머신 등 그룹 사물 : 요소들의 그룹으로 묶어서 표현 / 패키지(그룹화) 주해 사물 : 부가적인 설명이나 제약조건 등 표현 / 부가설명 관계 구조적, 정적 다이어그램(Diagram) 클래스 다이어그램(Class Diagram) 객체 다이어그램(Object Diagram) 컴포넌..
CASE(Computer Aided Software Engineering) : 자동화 도구 표준화와 보고를 통한 문서의 품질 개선 명세에 대한 유지보수 비용 축소 요구사항 변경이 주는 영향 추적 용이 종류 : SADT, SREM, PSL/PSA 등 HIPO(Hierachy Input Process Output) : 시스템의 분석/설계, 문서화 시 사용하는 기법으로 시스템의 입력, 처리, 출력 기능을 나타냄 기본 시스템 모델은 입력, 처리, 출력으로 구성되며, 하향식 소프트웨어 개발을 위한 문서화 도구 체계적인 문서 관리 가능 기호, 도표 등을 사용하므로 보기 쉽고 이해하기 쉬움 기능과 자료의 의존 관계 동시에 표현 가능 가시적 도표(Visual Table of Contents) :: 목차 총체적 도표(O..
요구사항 : 소프트웨어가 어떤 문제를 해결하기 위해 제공하는 서비스에 대한 설명과 정상적으로 운영되는데 필요한 제약 조건 등 - 시스템 개발 분야에서 어떤 과제를 수행하기 위하여 필요한 조건이나 능력 - 요구사항이 제대로 정립되어야 이를 토대로 이후 과정의 목표와 계획의 수립이 가능함 요구사항의 유형 1. 기능적 요구사항 - 시스템이 무엇을 하고 어떤 기능을 하는 지에 대한 사항 - 기능, 입력, 출력, 저장, 수행 등등 2. 비기능적 요구사항 - 성능, 장비구성 등 품질이나 제약사항에 대한 사항 3. 사용자 요구사항 : 사용자의 관점에서 본 시스템이 제공해야 할 사항 4. 시스템 요구사항 : 개발자의 관점에서 본 시스템 전체가 사용자와 다른 시스템에 제공해야 할 사항 요구사항 개발 프로세스 - 도출 →..
1) 운영체제(OS; Operating System) - 소프트웨어 - 고려사항 : 가용성, 성능, 기술 지원, 주변 기기, 구축 비용 - Windows, Unix, Linux 등 2) 미들웨어(Middleware) - 운영체제와 응용 프로그램 사이에서 추가적인 서비스를 제공하는 소프트웨어 3) 데이터베이스 관리 시스템(DBMS; Database Management System) - 사용자와 DB 사이에서 정보를 생성하고 관리하는 소프트웨어 - 고려사항 : 가용성, 성능, 기술 지원, 구축 비용, 상호 호환 4) 웹 어플리케이션(WAS; Web Application Server) - 동적인 컨텐츠를 처리하기 위해 사용되는 미들웨어 - 고려사항 : 가용성, 성능, 기술 지원, 구축 비용 - Tomcat, ..
1) 5가지 핵심 가치 a. 용기(Courage) b. 단순성(Simplicity) c. 의사소통(Communication) d. 피드백(Feedback) e. 존중(Respect) 용단의피존 2) 개발 프로세스 a. 사용자 스토리 : 고객의 요구사항을 간단한 시나리오로 표현한 것 b. 릴리즈 계획 수립 c. 스파이크 : 요구사항의 신뢰성을 높이고 기술 문제에 대한 위험을 감소시키기 위해 별도로 만드는 프로그램 d. 이터레이션(Iteration) : 하나의 릴리즈를 더 세분화한 단위 [뜻 : 반복] e. 승인 검사 : 일종의 테스트(고객이 직접 수행) f. 소규모 릴리즈 : 고객 반응 확인 및 대응 3) 주요 실천 방법 a. Pair Programming 짝 프로그래밍 : 다른 사람과 함께 프로그래밍 수..
팀끼리 협업하면서 개발 애자일 중의 하나 팀이 중심이 됨 팀원 스스로 모든 것을 해결해야 함 스프린트는 2 ~ 4주 정도의 기간으로 진행됨 1) 제품 책임자(PO; Product Owner) - 요구 사항이 담긴 백로그(Backlog)를 작성 - 백로그에 대한 우선 순위를 지정 2) 스크럼 마스터(SM; Scrum Master) - 팀을 위해 조언을 해주는 가이드 역할 - 일일 스크럼 회의 주관 3) 개발팀(DT; Development Team) - PO와 SM을 제외한 모든 팀원 - 최대 인원 7 ~ 8명이 적당 4) 제품 백로그 - 개발에 필요한 요구사항을 우선수위에 따라 나열한 목록이며 지속적으로 업데이트됨 - 작성된 사용자 스토리를 기반으로 릴리즈 계획 수립 5) 스크럼 개발 프로세스 a. 스프린..
애자일 Agile : 민첩함, 기민함 변화에 유연하게 대응하기 위함 일정한 주기(Iteration, Sprint)를 반복하면서 개발 고객과의 소통에 중점 ex) XP(eXtreme Programming), 스크럼(Scrum), 칸반(Kanban), 크리스탈(Crystal), 린(LEAN)
폭포수 모형 가장 오래되고 폭넓게 사용된 생명 주기 모형 선형 순차적 모형 매뉴얼 작성 필요 단계를 끝내고 다음 단계로 가기 위해서는 결과물이 명확히 나와야함 프로토타입 모형(Prototype Model) 폭포수 모형의 단점을 보완하기 위해 만들어짐 사용자와 시스템 사이 인터페이스에 중점을 두어 개발 나선형 모형(Spiral Model) 폭포수 + 프로토타입 + 위험 분석 기능 나선을 따라 돌 듯 여러 번의 개발 과정을 거쳐 점진적으로 최종 버전을 개발 위험 관리 및 이를 최소화하는 것이 목적 누락되거나 추가된 요구사항 첨가 가능 정밀하며 유지보수 과정 필요 X 대규모 프로젝트에 주로 쓰임 프로세스 과정 : 1) 목표설정 2) 위험분석 3) 개발과 검증 4)고객평가/다음단계수립