소프트웨어 개발 도구 및 방법론
·
전공 공부/SW소프트웨어응용설계
소프트웨어 개발은 단순히 코드를 작성하는 것 이상의 과정입니다.오늘은 소프트웨어 개발 도구와 방법론에 대해 살펴보고, 이를 통해 더 나은 소프트웨어를 만드는 방법을 알아보겠습니다!1. 구조적 설계 (Structured Design) 🧩구조적 설계는 소프트웨어를 구성하는 모든 요소들을 논리적인 계층 구조로 설계하는 방법입니다. 이 방법론은 소프트웨어의 복잡성을 줄이고, 효율적인 개발을 가능하게 합니다.데이터 흐름도 (DFD, Data Flow Diagram): 시스템의 프로세스와 데이터 흐름을 시각적으로 표현합니다. 데이터가 시스템 내부에서 어떻게 흐르고 변형되는지 보여주어, 전체적인 이해를 돕습니다. 🏞️구조도 (Structure Chart): 시스템의 모듈 간 계층 관계를 나타내는 도구입니다. 각 ..
전통적인 소프트웨어 개발 모델과 접근법
·
전공 공부/SW소프트웨어응용설계
소프트웨어 개발에는 여러 가지 방법론이 존재합니다.각각의 방법론은 고유한 특성과 장단점을 가지고 있으며, 프로젝트의 성격과 요구사항에 따라 선택할 수 있습니다.오늘은 소프트웨어 개발의 대표적인 모델들인 폭포수 모델, V-모델, 프로토타입 모델, 점진적 접근법, 나선형 모델, 애자일 방법론에 대해 알아보고, 각 방법론의 장단점을 비교해보겠습니다!1. 폭포수 모델 (Waterfall Model) 🌊정의 📝폭포수 모델은 가장 전통적인 소프트웨어 개발 모델로, 각 단계가 순차적으로 진행되는 방식입니다. 한 단계가 완료되어야 다음 단계로 넘어갈 수 있으며, 각 단계는 분석, 설계, 구현, 테스트, 배포로 구성됩니다.장점 👍단순하고 명확: 각 단계가 명확하게 구분되어 있어 이해하기 쉽고 관리가 용이합니다.문서..
🌱 소프트웨어 엔지니어링 라이프사이클
·
전공 공부/SW소프트웨어응용설계
소프트웨어가 탄생하고 성장하며 진화하는 과정, 여러분이 이 여정을 이해하게 된다면, 소프트웨어가 어떻게 세상을 바꾸는지 깨달을 수 있습니다!오늘은 소프트웨어 엔지니어링 라이프사이클(Software Engineering Lifecycle)의 모든 단계를 함께 탐험해 봅시다. 🚀1. 아이디어 엔지니어링 (Idea Engineering) 💡모든 소프트웨어는 아이디어에서 시작됩니다. 아이디어 엔지니어링 단계는 문제를 정의하고, 창의적인 솔루션을 찾아내는 과정입니다.문제 정의: 어떤 문제를 해결할 것인지 명확히 하는 단계입니다. 예를 들어, "사용자들이 더 쉽게 운동 일정을 관리할 수 있도록 돕는 앱을 만들어야겠다!"는 문제 정의가 될 수 있습니다. 🏋️‍♂️아이디어 생성: 브레인스토밍을 통해 가능한 모든 ..
소프트웨어 엔지니어링 이 글로 쉽게 이해하기
·
전공 공부/SW소프트웨어응용설계
소프트웨어는 오늘날 우리가 살아가는 세상을 움직이는 핵심적인 요소입니다.스마트폰에서부터 자율주행차, 인공지능 비서까지 소프트웨어는 모든 곳에 존재합니다.이렇게 중요한 소프트웨어를 어떻게 더 잘 만들 수 있을까요?바로 여기서 소프트웨어 엔지니어링(Software Engineering)을 통해서입니다! 🚀소프트웨어 엔지니어링이란 무엇인가? 🤔소프트웨어 엔지니어링은 단순히 "코딩"하는 것을 넘어, 소프트웨어를 효율적이고, 신뢰성 있게, 유지 보수 가능하게 설계하고 개발하는 모든 과정을 포함합니다. 소프트웨어 엔지니어는 다음과 같은 질문에 답을 찾는 역할을 합니다:사용자가 필요로 하는 소프트웨어는 무엇인가?이 소프트웨어를 어떻게 설계하고 구현할 것인가?어떻게 하면 소프트웨어가 고장 나지 않게 만들 수 있을까..
1.3 네트워크 코어
·
전공 공부/컴퓨터네트워크
네트워크 코어란?네트워크 코어는 라우터들이 서로 연결된 네트워크의 중심부로, 데이터를 효과적으로 전달하기 위한 다양한 메커니즘을 사용한다.네트워크 코어의 주요 기능으로 패킷 교환과 회선 교환이 있다.  1. 패킷 교환데이터 메시지를 작은 패킷 단위로 나눈다. 나눈 패킷을 독립적으로 전송하는 방식을 말한다.패킷들은 발신지에서 목적지까지 개별적으로 전송되며, 중간 라우터를 통해 경로가 결정된다.저장 후 전달: 각 패킷은 다음 링크로 전달되기 전에 라우터에 모두 저장된다. 예를 들어, L비트의 패킷을 R bps의 매체로 전송할 때, 전송 지연 시간은 L/R초이다. L은 보내고자하는 패킷의 길이, R은 전송 대역폭 bpsL/R => S(bit) / R (bit/sec). 2번 가는 경우 2L/R큐잉 지연 및 손..
1.2 네트워크 에지
·
전공 공부/컴퓨터네트워크
네트워크 구성요소!- 네트워크 에지란?호스트(클라이언트와 서버)로 구성되며, 서버는 데이터 센터에 위치합니다.접속 네트워크와 물리 매체는 유선 및 무선 통신 매체로 구성됩니다.- 네트워크의 코어상호 연결된 라우터로 구성된 네트워크의 네트워크 입니다. 에지(Edge) VS 코어(Core) 특징에지(Edge)코어(Core)위치네트워크의 끝부분, 사용자와 가까운 곳네트워크의 중심부, 여러 네트워크를 연결주요 역할데이터 생성 및 소비, 사용자와 직접 상호작용데이터 전송, 네트워크 간의 연결 및 라우팅구성 요소종단 시스템(클라이언트와 서버), 접속 네트워크라우터, 스위치, 고속 전송 네트워크전송 속도상대적으로 낮음매우 높음대역폭제한적매우 넓음주요 기능데이터를 생성하고 소비하며, 사용자에게 서비스 제공데이터를 신속..
1.1 인터넷이란 무엇인가?
·
전공 공부/컴퓨터네트워크
인터넷이란 무엇인가?구성요소부터 알아보자.네트워크에 연결된 다수의 컴퓨팅 장치: 호스트(컴퓨터)는 종단시스템간의 데이터를 주고받기 위한 장치. 종단시스템: 끝과 끝이 연결됨.통신 링크:  데이터를 주고 받을 수 있도록 연결 해준다. 데이터를 얼마나 빨리 주고 받을 수 있어?를 측정하는 것이 전송율, 대역폭이라고 한다.패킷 교환(라우터): 데이터 묶음인 패킷을 전송한다.인터넷: 네트워크를 연결해주는 것.ISP: Internet Service Provider, 돈을 받고 인터넷을 제공해주는 업체들. 그래서 인터넷이 뭔데?인터넷은 "네트워크의 네트워크"로 다수의 컴퓨팅 장치(호스트, 종단 시스템)들이 서로 연결되어 데이터를 주고 받는 시스템이다.이런 연결은 광 케이블, 동축 케이블, 전파, 위성 등을 통해 이..
00 컴퓨터네트워크 수업을 들어가며...
·
전공 공부/컴퓨터네트워크
TCP/IP는 5계층으로 이루어져 있다.Application, Transport, Network, Link, Physical이 5계층을 위에서부터 아래로 차례대로 접근할 식이다.즉, 하향식으로 글을 작성해나갈 것이다.Why? -> 위에있는 것부터 범위가 크고 사용자가 쉽게 접하기 때문에, 더 중요!네트워크에서 사용되는 언어가 낯설다. 나는,,그래서, 다음의 교재로 공부를 시작해보려 한다. TCP/IP 영상은 링크 를 참고하면 좋을 것 같다.The Good Warriors of the Net - IP for Peace (youtube.com)