분류 전체보기
-
정의 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스 목적 - 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지 - 각 릴레이션에 중복된 종속성을 여러개의 릴레이션에 분할 - 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 함 - 데이터 삽입 시 릴레이션을 재구성할 필요성 감소 - 효과적인 검색 알고리즘을 생성 가능 제 1 정규화의 목적(에드거 F. 커드 정의) 1. 고려되지 않은 삽입, 갱신, 삭제 의존에서부터 관계의 집합을 배제한다. 2. 새로운 자료형이 나타날 때, 관계들의 집합의 재구성의 필요성을 낮추고, 그로 인하여 응용 프로그램의 생명주기를 연장한다. 3. 사용자에게 관계 모델을 더욱 의미있게 한다. 4. 관계들의 집합을 질의의 통계로부터 중립적이게 한..
db - 📝 정규화정의 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스 목적 - 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지 - 각 릴레이션에 중복된 종속성을 여러개의 릴레이션에 분할 - 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 함 - 데이터 삽입 시 릴레이션을 재구성할 필요성 감소 - 효과적인 검색 알고리즘을 생성 가능 제 1 정규화의 목적(에드거 F. 커드 정의) 1. 고려되지 않은 삽입, 갱신, 삭제 의존에서부터 관계의 집합을 배제한다. 2. 새로운 자료형이 나타날 때, 관계들의 집합의 재구성의 필요성을 낮추고, 그로 인하여 응용 프로그램의 생명주기를 연장한다. 3. 사용자에게 관계 모델을 더욱 의미있게 한다. 4. 관계들의 집합을 질의의 통계로부터 중립적이게 한..
2022.03.09 -
정의 데이터 모델링이란 주어진 개념으로부터 논리적인 데이터 모델을 구성하는 작업을 말하며, 일반적으로 이를 물리적인 데이터베이스 모델로 환원하여 고객의 요구에 따라 특정 정보 시스템의 데이터베이스에 반영하는 작업을 포함한다. 후자의 의미로 흔히 데이터베이스 모델링으로 불리기도 한다 데이터 모델의 특징 - 가시화 - 명세화 - 문서화 - 시스템 구축하는 틀 제공 - 기타 등등 데이터 모델링 시 주의점 - 중복이 발생하지 않도록 한다. - 데이터의 정의를 데이터 사용 프로세스와 분리함으로써 작은 실수로 인해 앱 / 데이터베이스에 중대한 변화를 일으킬 수 있는 가능성을 방지한다. - 데이터간 상호연관 관계에 대한 명확한 정의로 모순되는 데이터 업데이트를 방지한다.
db - 🇩 데이터 모델링정의 데이터 모델링이란 주어진 개념으로부터 논리적인 데이터 모델을 구성하는 작업을 말하며, 일반적으로 이를 물리적인 데이터베이스 모델로 환원하여 고객의 요구에 따라 특정 정보 시스템의 데이터베이스에 반영하는 작업을 포함한다. 후자의 의미로 흔히 데이터베이스 모델링으로 불리기도 한다 데이터 모델의 특징 - 가시화 - 명세화 - 문서화 - 시스템 구축하는 틀 제공 - 기타 등등 데이터 모델링 시 주의점 - 중복이 발생하지 않도록 한다. - 데이터의 정의를 데이터 사용 프로세스와 분리함으로써 작은 실수로 인해 앱 / 데이터베이스에 중대한 변화를 일으킬 수 있는 가능성을 방지한다. - 데이터간 상호연관 관계에 대한 명확한 정의로 모순되는 데이터 업데이트를 방지한다.
2022.03.09 -
UML(통합 모델링 언어)이란? 소프트웨어 공학에서 사용되는 표준화된 범용 '모델링 언어'이다. 특징 - 가시화 : SW개념 모델을 시각화하여 작성, 개발자들 사이에서 원활한 의사소통을 돕는다. - 구축화 : 다양한 객체지향 프로그램 언어로 변환가능 - 명세화 : 개발과정마다 프로그램의 구조와 기능을 상세하게 기술함 - 문서화 : 프로젝트 참여자간의 통제/평가/의사소통에 필요한 일련의 과정을 문서로 남겨 계속 유지 보수한다. 적용 분야 - 컴퓨터 비즈니스 설계 - 자동차 개발 - 항공기 개발 - 원자력 발전소
UML - 🇱 UML이란UML(통합 모델링 언어)이란? 소프트웨어 공학에서 사용되는 표준화된 범용 '모델링 언어'이다. 특징 - 가시화 : SW개념 모델을 시각화하여 작성, 개발자들 사이에서 원활한 의사소통을 돕는다. - 구축화 : 다양한 객체지향 프로그램 언어로 변환가능 - 명세화 : 개발과정마다 프로그램의 구조와 기능을 상세하게 기술함 - 문서화 : 프로젝트 참여자간의 통제/평가/의사소통에 필요한 일련의 과정을 문서로 남겨 계속 유지 보수한다. 적용 분야 - 컴퓨터 비즈니스 설계 - 자동차 개발 - 항공기 개발 - 원자력 발전소
2022.03.09 -
기존 방식의 문제점 1. 개발에 적용할 수 있을 수준의 구체적인 요구사항을 작성하는 것이 매우 어렵거나 불가능 2. 규모가 커질수록 설계에 요구되는 시간과 비용이 기하급수적으로 증대 3. 실제로 개발 진행 중 정해진 요구사항이 변경되거나, 다양한 문제점을 발견 4. 위와 같은 문제로 인한 작업 난이도 및 개발일정을 예측하는 것의 어려움 익스트림 프로그래밍의 정의 - 빠르게 고객과 소통하며 개발할 수 있는 방법 - 의사소통, 단순성, 피드백, 용기, 존중을 가치로 내세우고 있다. 기본 원칙 1. 조금씩, 하지만 자주 발표한다. 2. 사이클을 반복해서 돌리면서 개발한다. 3. 스펙에 없는 것은 절대 집어넣지 않는다. 4. 테스트 코드를 먼저 만든다. 5. 야근은 하지 마라. 항상 정규 일과 시간에만 작업한다..
애자일 - 📗익스트림 프로그래밍이란?기존 방식의 문제점 1. 개발에 적용할 수 있을 수준의 구체적인 요구사항을 작성하는 것이 매우 어렵거나 불가능 2. 규모가 커질수록 설계에 요구되는 시간과 비용이 기하급수적으로 증대 3. 실제로 개발 진행 중 정해진 요구사항이 변경되거나, 다양한 문제점을 발견 4. 위와 같은 문제로 인한 작업 난이도 및 개발일정을 예측하는 것의 어려움 익스트림 프로그래밍의 정의 - 빠르게 고객과 소통하며 개발할 수 있는 방법 - 의사소통, 단순성, 피드백, 용기, 존중을 가치로 내세우고 있다. 기본 원칙 1. 조금씩, 하지만 자주 발표한다. 2. 사이클을 반복해서 돌리면서 개발한다. 3. 스펙에 없는 것은 절대 집어넣지 않는다. 4. 테스트 코드를 먼저 만든다. 5. 야근은 하지 마라. 항상 정규 일과 시간에만 작업한다..
2022.03.09 -
정의 소프트웨어 개발 방법론의 하나로, 처음부터 끝까지 계획을 수립하고 개발하는 방식이 아닌 개발과 함께 즉시 피드백을 받아서 유동적으로 개발하는 방법예시 - 익스트림 프로그래밍 - 테스트 주도 개발 - 기타 등등애자일 선언문 원어 전문 We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over c..
애자일 - 📖 애자일 방법론이란?정의 소프트웨어 개발 방법론의 하나로, 처음부터 끝까지 계획을 수립하고 개발하는 방식이 아닌 개발과 함께 즉시 피드백을 받아서 유동적으로 개발하는 방법예시 - 익스트림 프로그래밍 - 테스트 주도 개발 - 기타 등등애자일 선언문 원어 전문 We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over c..
2022.03.09 -
사용자 요구사항 시스템의 목적, 주어진 환경과 제한 조건, 변경의 유효성과 적합성의 관점에서 시스템의 기대 사항을 정의하는 사실 및 가정을 서술한 것 - 시스템과 제약 조건에 대한 서비스의 추상적인 형태 - 주로 관리자의 이해를 위해 쓰여진다. - 시스템이 어떻게 개발 되는지 보다는, 시스템의 자세한 흥미가 없는 고객 관리자 등이 읽는다. 시스템 요구사항 기능 요구사항은 반드시 구현되어야 할 필수적인 작업과 동작 등을 정의함으로써 어떤 기능이 구현되어야 하는지를 설명한다. - 시스템과 제약 조건에 대한 서비스의 자세한 설명 - 주로 개발자를 위해 쓰여진다. - 시스템이 작동하는 원리를 자세하게 알 필요가 있고, 시스템 개발과 관련된 소프트웨어 개발자 / 시스템 설계자 등이 읽는다.
소프트웨어 공학 - 💡 사용자 요구사항과 시스템 요구사항사용자 요구사항 시스템의 목적, 주어진 환경과 제한 조건, 변경의 유효성과 적합성의 관점에서 시스템의 기대 사항을 정의하는 사실 및 가정을 서술한 것 - 시스템과 제약 조건에 대한 서비스의 추상적인 형태 - 주로 관리자의 이해를 위해 쓰여진다. - 시스템이 어떻게 개발 되는지 보다는, 시스템의 자세한 흥미가 없는 고객 관리자 등이 읽는다. 시스템 요구사항 기능 요구사항은 반드시 구현되어야 할 필수적인 작업과 동작 등을 정의함으로써 어떤 기능이 구현되어야 하는지를 설명한다. - 시스템과 제약 조건에 대한 서비스의 자세한 설명 - 주로 개발자를 위해 쓰여진다. - 시스템이 작동하는 원리를 자세하게 알 필요가 있고, 시스템 개발과 관련된 소프트웨어 개발자 / 시스템 설계자 등이 읽는다.
2022.03.09 -
정의 컴퓨터 과학에서 커널(kernel)은 컴퓨터 운영 체제의 핵심이 되는 컴퓨터 프로그램으로, 시스템의 모든 것을 완전히 통제한다. 역할 보안 하드웨어와 프로세스의 보안을 책임진다. 자원 관리 한정된 시스템 자원을 효율적으로 관리하여 프로그램의 실행을 원활하게 한다. 추상화 프로그래머가 여러 장비에서 작동하는 프로그램을 개발하는 것을 돕는다. 종류 단일형 커널, 마이크로 커널, 혼합형 커널, 나노 커널, 엑소 커널 등
커널 - 🖥️커널이란?정의 컴퓨터 과학에서 커널(kernel)은 컴퓨터 운영 체제의 핵심이 되는 컴퓨터 프로그램으로, 시스템의 모든 것을 완전히 통제한다. 역할 보안 하드웨어와 프로세스의 보안을 책임진다. 자원 관리 한정된 시스템 자원을 효율적으로 관리하여 프로그램의 실행을 원활하게 한다. 추상화 프로그래머가 여러 장비에서 작동하는 프로그램을 개발하는 것을 돕는다. 종류 단일형 커널, 마이크로 커널, 혼합형 커널, 나노 커널, 엑소 커널 등
2022.03.09 -
임베디드란 정의 - 기계장치를 사용하기 위해 기계 내부에 탑재된 컴퓨터를 뜻한다. - 범용 컴퓨터(일반 pc)의 반대 개념 - 특정 목적을 가지고 만들어진 프로그래밍 가능한 컴퓨터 예시 - 세탁기나 냉장고 등 가전제품에 들어가는 단일목적 컴퓨터 특징 - 프로그램 최적화 - 임베디드 시스템의 하드웨어는 성능이 열악하기 때문에 코드를 최대한 압축시켜 최고의 효율을 내야한다. - 복잡한 알고리즘 - 마이크로프로세서에 의해 수행되는 명령이 고도의 정교함을 요할때가 있다. - GUI, 실시간 처리 지원, 멀티레이트, 하드웨어 지식 등등 1. 가전제품 냉장고, 세탁기, 전자레인지 등2. 자동화 시스템 산업 기계 제어, 온도 모니터링, 3D 프린팅 등3. 의료기기 혈압 모니터, 심장 박동 모니터, 맥박 조정기, 스캐..
🏧 우리가 사용중인 임베디드 시스템 5가지 예시임베디드란 정의 - 기계장치를 사용하기 위해 기계 내부에 탑재된 컴퓨터를 뜻한다. - 범용 컴퓨터(일반 pc)의 반대 개념 - 특정 목적을 가지고 만들어진 프로그래밍 가능한 컴퓨터 예시 - 세탁기나 냉장고 등 가전제품에 들어가는 단일목적 컴퓨터 특징 - 프로그램 최적화 - 임베디드 시스템의 하드웨어는 성능이 열악하기 때문에 코드를 최대한 압축시켜 최고의 효율을 내야한다. - 복잡한 알고리즘 - 마이크로프로세서에 의해 수행되는 명령이 고도의 정교함을 요할때가 있다. - GUI, 실시간 처리 지원, 멀티레이트, 하드웨어 지식 등등 1. 가전제품 냉장고, 세탁기, 전자레인지 등2. 자동화 시스템 산업 기계 제어, 온도 모니터링, 3D 프린팅 등3. 의료기기 혈압 모니터, 심장 박동 모니터, 맥박 조정기, 스캐..
2022.03.09