80/20은 스케줄링에도 영향을 미칩니다.

우리는 모두 성공 (효과)의 80 %가 우리 행동 (원인)의 20 %에서 비롯된다고 말하는 80/20 규칙에 대해 들어 봤습니다. 글쎄요,이 보편적 인 진실은 소프트웨어 개발에도 영향을 미치며,이 글에서 우리는이 성명서의 기본 사항들 중 일부를 다루겠습니다.

BPM

비즈니스 프로세스 관리 (영어로 된 약어)는 비즈니스 (또는 다른 여러 장소)에서 수행해야하는 프로세스를 시각적으로 이해할 수있게 해주는 관리 원칙입니다. 주요 특징 중 하나는 복잡한 프로세스를 분석하여 "단순"하게 만들 수 있다는 사실입니다.

BPM 다이어그램을 개발할 수있는 많은 오픈 소스 도구가 있으며,이 기사에서 사용한 것은 BonitaSoft입니다. 프로세스 관리에 대해 조금 더 배우고 싶다면 인터넷에있는 많은 튜토리얼과 주제에 대한 책이 있습니다. 이제 중심 주제로 돌아 갑시다.

소프트웨어 프로젝트

오늘날에는 프로젝트를 개발하기위한 많은 방법론이 있으며, 애자일, 전통적, 혼합 등이 있습니다. 그들 모두의 공통점은 준비. 이것이 무슨 뜻입니까? 이 소프트웨어 프로젝트에서 성공의 80 %는 전체 프로세스의 처음 20 %를 기반으로합니다. 준비. 

프로젝트 준비

이것은 실제로는 거의 적용되지 않는 논리적 인 것입니다 (실제로 비논리적 인 다른 많은 논리적 인 것들처럼). 준비에 대해 말할 때 우리는 문제를 이해하고 해결책을 이해하는 능력을 이해해야합니다. 과정 솔루션이 적용됩니다. 전문가가 아닌 소프트웨어 프로젝트에서 가장 적게 발견되는 것 중 하나는 주제에 대한 문서가 부족하다는 것입니다. 이것은 일반적으로 판매 욕구가 생성 과정을 초과하기 때문에 민간 기업에서 나타납니다.

이 기사를 읽는 많은 사람들이 일하거나 기술과 관련이 있기 때문에, 일하는 삶의 어느 시점에서 좋은 준비를 충족하지 못하는 회사 / 공급 업체를 찾으면 거의 80 % 확신한다는 것을 언급 할 가치가 있습니다. 😛 프로젝트 잘 안될거야.

추상화가 핵심

이것은 제가 GNU / 리눅스를 사용하면서 배웠던 것입니다. 그리고 이것은 소프트웨어 생성 과정에서 핵심이되는 것을 몇 번이고 증명합니다. 용량 요약 보다 "단순한"것으로 바꾸는 문제는 우아한 코드를 생성하는 데 필수적이며 무엇보다도 내구성. 그리고 아마도 이것은 대규모 전문 프로젝트와 통제 할 수없는 프로젝트의 주요 차이점 중 하나 일 것입니다. 전자의 생각, 이해 및 구조 과정 초 동안 그들은 유지 이해할 필요없이 일.

스테이저

이것은 Gentoo 설치 프로그램이 개발하는 프로젝트의 이름입니다. 여러분이 상상할 수 있듯이 이것은 많은 아키텍처를 지원하기 때문에 상당히 복잡한 과정입니다. 고려해야 할 또 다른 요소는 커널 수준, init 시스템 등에서 지원하는 구성의 수입니다. 공부를 마치기 전에 끝내야하는 논문 프로젝트이기 때문에이 모든 것을 말씀드립니다. 당연히 그렇게 짧은 시간 (내년 XNUMX 월까지)에 가능한 모든 옵션을 포함하는 프로그램을 만들 수는 없지만 최소한 기능 시스템을 매우 기본적인 방식으로 설치할 수있는 프로그램을 생성 할 수 있습니다.

설치 과정 이해

BPM 도구 덕분에 컴퓨터에 젠투를 성공적으로 설치하는 데 필요한 단계를 이해할 수있는 프로세스 다이어그램이 생성 될 수 있습니다.

젠투 설치 과정

개인적인. 크리스토퍼 디아즈 리베로 스

여러 프로세스와 하위 프로세스가 포함되어 있음에도 불구하고 분명히 요약되어 있으며 18 개의 선형 단계가 있음을 알 수 있습니다. 선형 구조를 가진 애플리케이션은 구현이 간단하고 동시에 필요한 경우 하나 이상의 스레드에서 병렬 처리를 생성 할 수 있기 때문에 중요합니다.

또 다른 중요한 요소는 요약 예를 들어, 커널 스레드를 정의하면 커널 스레드를 정의하면 커널을 성공적으로 설치하는 과정과 직접 관련된 특정 작업이 있음을 알 수 있습니다.

하위 프로세스 "커널"

개인적인. 크리스토퍼 디아즈 리베로 스

이러한 방식으로 각 "복잡한"단계는 필요한 세부 사항을 잃지 않고 글로벌 방식으로 "단순한"단계가됩니다. 이렇게하면 프로세스를 성공적으로 완료하는 데 필요한 사양 수준을 낮추지 않고도 어셈블리를 쉽게 볼 수 있습니다. 그리고 우리는 핸드북 전체를 한 번에 읽는 것보다 이미지를 보는 것이 더 쉽다는 것을 부정 할 수 없습니다.

시간을 절약

또 다른 분명한 이점은 프로그래밍 언어가 직접 연결되지 않아 언어 구현에 시간을 낭비하지 않고도 논리 분석을 수행 할 수 있다는 것입니다. 이것은 더 효율적인 솔루션이 있기 때문에 폐기 될 것이라는 것을 알아 내기 위해서만 기능을 구현하는 데 소요될 수있는 시간과 비교할 때 이점입니다. 의사 코드의 솔루션 (많은 "개발자"도 무시하지만 그렇게해서는 안되는 것)의 솔루션이 될 수 있습니다.

손쉬운 프로젝트 연출

이러한 개념을 고려하면 프로젝트 관리 (모든 종류)가 더 쉬워집니다. 왜냐하면 우리가 실제로 필요한 부분에 우리의 노력을 집중하고이 부분이 올바르게 수행되면 나머지는 자체 무게에 속하기 때문입니다. 나는 그것이 당신의 호기심을 돕고 BPM, 알고리즘 및 누가 아는지를 연구하도록 동기를 부여하기를 바랍니다. 어쩌면 그것은 당신이 내 논문으로 저를 도울 수 있도록 격려 할 것입니다 😛 여기에와 주셔서 대단히 감사하며 곧 만날 것입니다. 건배


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   알렉산더 마요가 무뇨 즈

    안녕. 지식을 공유해 주셔서 감사합니다. 흥미 진진한 주제 인 것 같지만 그것을 내재화하기 위해서는 많은 연구와 개념을 실천에 옮기는 작업이 필요합니다. 처음에 문제는 시스템 요구 사항을 식별하는 측면에서 더 많이 연관되는 경향이 있으며 반드시 회사의 비즈니스 프로세스, 즉 회사가 작동하는 방식과는 관련이 없기 때문에 혼란 스럽습니다. 결국 기업의 경영을보다 효율적이고 효과적으로 만들기 위해 소프트웨어 개발자가 회사의 사업을 모델링하는 역할에 더 가깝다고 생각합니다.

    1.    크리스ADR

      안녕하세요 Alexander, 공유해 주셔서 대단히 감사합니다. 사실을 말하면 작은 공간에 모든 것을 요약하는 것은 다소 복잡한 주제이지만, 귀하의 의견과 혼동을 피하기 위해 조금만 기여할 수 있다면 시스템이 요구 사항을 해결하려고 노력해야한다는 것은 사실입니다. 가장 가능한 기본 기능이며, 그 시점에서 개발자는 더 높은 수준에 집중해야합니다.
      프로세스에 대한 지식을 통해 개발자는 가능한 최소 요구 사항을 충족하는 것으로 충분히 이해하면서 충분한 시스템을 제시 할 수 있습니다.
      코드의 우아함은 전체 프로세스를 이해하고 가능한 최상의 솔루션이 적용되는 더 깊은 방식으로 생성 할 수 있다는 점에 있습니다. 이것은 잘 언급했듯이 요구 사항이 아닌 프로세스를 실제로 이해해야 만 가능합니다. 🙂
      FOSS를 중심으로 모델링하면 소프트웨어 요구 사항을 아는 것뿐만 아니라 그이면의 철학과 효율적인 솔루션을 생성 할뿐만 아니라 프로세스에 대한 모든 지식이 어떻게 유지되는지, 누구에 의해 유지되는지를 아는 것을 의미합니다. .,하지만 시간이 지남에 따라 유지가 가능합니다 🙂
      다시 한번 감사 드리며 인사드립니다.