728x90
반응형

2024/09 59

LIN (Local Interconnect Network) - Introduction

LIN (Local Interconnect Network)이란 무엇인가?"LIN (Local Interconnect Network)"은 차량 내 전자 시스템 간의 저속 통신을 위해 개발된 네트워크 프로토콜입니다. 현대 자동차는 다양한 기능을 지원하기 위해 수많은 전자 제어 장치(ECU)를 탑재하고 있으며, 이러한 장치들 간의 통신을 효율적으로 관리하는 것이 필수적입니다. LIN은 이러한 요구를 충족시키기 위해 설계된 저비용, 저속, 마스터-슬레이브 구조의 통신 네트워크입니다. LIN은 CAN(Controller Area Network)와 같은 고속 네트워크를 보완하기 위해 개발되었으며, 주로 차량의 비핵심 시스템에서 사용됩니다. 예를 들어, 윈도우 리프트, 좌석 제어, 조명 시스템 등과 같은 기능에서 L..

Automotive 2024.09.04

SAE J1939 - Introduction

J1939란 무엇인가?J1939은 차량 네트워킹을 위한 통신 프로토콜로, 주로 상용 차량, 농업 기계, 건설 장비 및 기타 중장비에서 사용됩니다. 이 프로토콜은 SAE(Society of Automotive Engineers)에서 개발했으며, 특히 디젤 엔진 차량에서 널리 채택되고 있습니다. J1939은 CAN(Controller Area Network) 버스를 기반으로 하여 데이터 전송을 처리하며, 차량 시스템 간에 신뢰성 있는 통신을 보장합니다. J1939 프로토콜은 차량 내 다양한 전자 제어 장치(ECU) 간의 실시간 데이터 교환을 가능하게 합니다. 이 데이터는 엔진 제어, 변속기 제어, ABS 제어, 그리고 기타 여러 차량 시스템의 성능을 최적화하는 데 사용됩니다. J1939은 또한 오류 코드 진..

Automotive 2024.09.04

SW 아키텍처 모듈화: 아키텍처 결합도 측정 기법 (Afferent and Efferent Coupling)

"Afferent Coupling (Ca)"와 "Efferent Coupling (Ce)"는 소프트웨어 설계에서 결합도를 측정하는 중요한 메트릭입니다. 이들은 각각 모듈이 외부로부터 얼마나 많은 의존성을 받는지, 그리고 외부 모듈에 얼마나 의존하는지를 정량적으로 평가합니다. 이러한 메트릭은 Robert C. Martin의 저서 “Agile Software Development: Principles, Patterns, and Practices”에서 널리 알려졌으며, 소프트웨어 아키텍처 설계의 품질을 평가하는 데 중요한 역할을 합니다.  SW 아키텍처 모듈화: 아키텍처 결합도 측정 기법 (Coupling Between Objects, CBO)"Coupling Between Objects (CBO)"는 객체 ..

소프트웨어 요구사항을 구성하는 중요 속성 10가지

요구사항 속성은 요구사항에 관한 다양한 정보를 제공하기 때문에 아주 유용하다. 이를 이용하여 이해관계자는 객관적인 의사결정하는데 활용하기도 하고 또는 요구사항간 중요도를 구분하는데도 유용하게 활용될 수 있다. 그럼에도불구하고 이러한 요구사항 속성이 언제 어떻게 정의하는 것이 좋을지에 대한 의견은 여전히 분분한 실정이다. 본 고를 통해 언제 요구사항 속성을 정의하는 것이 좋을지 논의 해 보도록 한다.기본적인 요구사항 속성을 Common Set of Attributes (CRA)라고 한다면, 이 CRA는 요구사항 자체에 대한 메타데이터 설계가 이루어질 때 수행되어야 한다. 다만, 상황에 따라 속성 자체가 추가/변경될 수 있으므로, 이를 위한 확장성을 염두에 두어 최소화된 CRA를 구성하는 것이 필요하다. I..

SW 아키텍처 모듈화: 아키텍처 응집도 측정 기법 (Lack of Cohesion in Methods, LCOM)

"Lack of Cohesion in Methods (LCOM)"은 객체 지향 소프트웨어 설계의 품질을 평가하는 메트릭 중 하나로, 클래스 내 메서드들이 얼마나 응집력이 없는지를 측정합니다. 응집도는 클래스의 내부 요소들이 얼마나 밀접하게 관련되어 있는지를 나타내며, LCOM은 그 반대 개념으로서 응집도가 낮을수록 LCOM 값이 높아집니다.  SW 아키텍처 모듈화: 왜 필요하고, 언제 고려해야 할까?소프트웨어 개발을 하다 보면 ‘아키텍처 모듈화’라는 단어를 자주 듣게 됩니다. 하지만 이게 왜 중요한지, 그리고 언제 모듈화를 고민해야 하는지는 막상 설명하기가 어렵습니다. 그래서 오habana4.tistory.com  SW 아키텍처 모듈화: 어떻게 할 수 있을까? 고려사항은 무엇일까?소프트웨어 개발에서 모듈..

ChatGPT가 말하는 소프트웨어 아키텍처가 필요한 이유

소프트웨어 아키텍처를 이해하고 학습하는 것은 여러 가지 중요한 이유가 있습니다. 그래서 오늘은 ChatGPT에게 소프트웨어 아키텍처를 알아야 하는 이유를 물어 보았습니다. 다음은 ChatGPT가 말하는 소프트웨어 아키텍처가 필요한 이유입니다.목차 1. 시스템의 전반적인 구조 이해소프트웨어 아키텍처는 시스템의 구조적 청사진이라고 할 수 있습니다. 아키텍처를 이해함으로써 개발자는 시스템이 어떻게 구성되어 있으며, 각 구성 요소가 어떤 역할을 하는지, 그리고 이들이 어떻게 상호작용하는지를 명확하게 파악할 수 있습니다. 이는 복잡한 시스템의 전체적인 그림을 이해하는 데 필수적입니다. 2. 유지보수성과 확장성 확보좋은 아키텍처는 시스템이 변경될 때 쉽게 유지보수할 수 있고, 확장할 수 있는 기반을 제공합니다. 아..

국가 의전: 나라의 얼굴을 보여주는 중요한 절차

국가 "의전"이란 무엇일까요? 국가 의전이란 나라와 나라 사이에서 이루어지는 공식적인 절차나 행사들을 말해요. 의전이란 타인에 대한 상식과 배려를 바탕으로, 국가간의 관계 또는 국가가 관여되는 공식행사에서 개인 및 국가가 지켜야 할 일련의 규범(a set of Rules)을 뜻합니다. 쉽게 말해, 한 나라가 다른 나라를 어떻게 대접하는지를 보여주는 과정이라고 할 수 있죠. 의전은 나라의 격식을 차리는 중요한 방법이기 때문에, 외교 관계를 더욱 돈독히 하거나 때로는 실수로 인해 긴장감을 조성할 수도 있어요. 마치 자동차의 윤활유가 각 부분의 흐름을 잘 연결시켜 전체적인 운행이 조화롭게 진행될 수 있도록 도와주는 것처럼 의전은 국가간 각종 행사 진행을 매끄럽게 하여 최선의 성과를 얻도록 하는 역할을 담당하고..

Daily Life 2024.09.01

SW 아키텍처 모듈화: 어떻게 할 수 있을까? 고려사항은 무엇일까?

소프트웨어 개발에서 모듈화는 시스템의 유지보수성과 확장성을 크게 향상시킬 수 있는 중요한 기법입니다. 하지만 막상 모듈화를 시도할 때는 어떻게 해야 할지 막막할 수 있습니다. 이 글에서는 소프트웨어 아키텍처를 모듈화하는 방법과, 모듈화를 고려할 때 신경 써야 할 주요 특성에 대해 알아보겠습니다.  SW 아키텍처 모듈화: 왜 필요하고, 언제 고려해야 할까?소프트웨어 개발을 하다 보면 ‘아키텍처 모듈화’라는 단어를 자주 듣게 됩니다. 하지만 이게 왜 중요한지, 그리고 언제 모듈화를 고민해야 하는지는 막상 설명하기가 어렵습니다. 그래서 오habana4.tistory.com목차 소프트웨어 아키텍처 모듈화: 어떻게 할 수 있을까?기능별 분리 (Functional Decomposition)모듈화의 첫걸음은 시스템을..

SW 아키텍처 모듈화: 왜 필요하고, 언제 고려해야 할까?

소프트웨어 개발을 하다 보면 ‘아키텍처 모듈화’라는 단어를 자주 듣게 됩니다. 하지만 이게 왜 중요한지, 그리고 언제 모듈화를 고민해야 하는지는 막상 설명하기가 어렵습니다. 그래서 오늘은 아키텍처 모듈화가 왜 필요한지, 어떤 문제들이 모듈화를 고민하게 만드는지에 대해 쉽게 풀어보려고 합니다.소프트웨어 아키텍처 모듈화란?먼저, 소프트웨어 아키텍처 모듈화가 뭔지 간단히 짚고 넘어가 볼까요? 모듈화란 소프트웨어를 작은 단위, 즉 모듈로 쪼개서 관리하는 방법이에요. 이렇게 나눠진 모듈들은 각기 다른 기능을 수행하며, 독립적으로 개발, 테스트, 배포할 수 있어요. 핵심은 이게 코드의 복잡함을 줄여주고, 유지보수와 확장을 훨씬 쉽게 만들어준다는 거죠. 왜 모듈화가 필요할까요?모듈화가 필요한 이유는 여러 가지가 있지..

728x90
반응형