ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಚಿತ್ರ: ಅನ್ಪ್ಲಾಶ್

ಎಲ್ಲರಿಗು ನಮಸ್ಖರ! ನಾವು ಕಂಪನಿಯಿಂದ ಆಟೋಮೇಷನ್ ಎಂಜಿನಿಯರ್‌ಗಳು ಧನಾತ್ಮಕ ತಂತ್ರಜ್ಞಾನಗಳು ಮತ್ತು ಕಂಪನಿಯ ಉತ್ಪನ್ನಗಳ ಅಭಿವೃದ್ಧಿಯನ್ನು ನಾವು ಬೆಂಬಲಿಸುತ್ತೇವೆ: ಡೆವಲಪರ್‌ಗಳ ಕೋಡ್‌ನ ರೇಖೆಯ ಬದ್ಧತೆಯಿಂದ ಪೂರ್ಣಗೊಂಡ ಉತ್ಪನ್ನಗಳು ಮತ್ತು ನವೀಕರಣ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಪರವಾನಗಿಗಳ ಪ್ರಕಟಣೆಯವರೆಗೆ ನಾವು ಸಂಪೂರ್ಣ ಅಸೆಂಬ್ಲಿ ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತೇವೆ. ಅನೌಪಚಾರಿಕವಾಗಿ, ನಮ್ಮನ್ನು DevOps ಎಂಜಿನಿಯರ್‌ಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಈ ಲೇಖನದಲ್ಲಿ, ನಾವು ಸಾಫ್ಟ್‌ವೇರ್ ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯ ತಾಂತ್ರಿಕ ಹಂತಗಳ ಬಗ್ಗೆ ಮಾತನಾಡಲು ಬಯಸುತ್ತೇವೆ, ನಾವು ಅವುಗಳನ್ನು ಹೇಗೆ ನೋಡುತ್ತೇವೆ ಮತ್ತು ನಾವು ಅವುಗಳನ್ನು ಹೇಗೆ ವರ್ಗೀಕರಿಸುತ್ತೇವೆ.

ವಸ್ತುಗಳಿಂದ ನೀವು ಬಹು-ಉತ್ಪನ್ನ ಅಭಿವೃದ್ಧಿಯನ್ನು ಸಂಘಟಿಸುವ ಸಂಕೀರ್ಣತೆಯ ಬಗ್ಗೆ ಕಲಿಯುವಿರಿ, ತಾಂತ್ರಿಕ ನಕ್ಷೆ ಎಂದರೇನು ಮತ್ತು ಪರಿಹಾರಗಳನ್ನು ಸುಗಮಗೊಳಿಸಲು ಮತ್ತು ಪುನರಾವರ್ತಿಸಲು ಅದು ಹೇಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ, ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಯ ಮುಖ್ಯ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳು ಯಾವುವು, ಜವಾಬ್ದಾರಿಯ ಕ್ಷೇತ್ರಗಳು ಹೇಗೆ ನಮ್ಮ ಕಂಪನಿಯಲ್ಲಿ DevOps ಮತ್ತು ತಂಡಗಳ ನಡುವೆ.

ಚೋಸ್ ಮತ್ತು DevOps ಬಗ್ಗೆ

ಸಂಕ್ಷಿಪ್ತವಾಗಿ, DevOps ಪರಿಕಲ್ಪನೆಯು ಅಭಿವೃದ್ಧಿ ಪರಿಕರಗಳು ಮತ್ತು ಸೇವೆಗಳನ್ನು ಒಳಗೊಂಡಿದೆ, ಜೊತೆಗೆ ಅವುಗಳ ಬಳಕೆಗಾಗಿ ವಿಧಾನಗಳು ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. ಜಾಗತಿಕವನ್ನು ಪ್ರತ್ಯೇಕಿಸೋಣ ಗುರಿ ನಮ್ಮ ಕಂಪನಿಯಲ್ಲಿ DevOps ಕಲ್ಪನೆಗಳ ಅನುಷ್ಠಾನದಿಂದ: ಇದು ಪರಿಮಾಣಾತ್ಮಕ ಪರಿಭಾಷೆಯಲ್ಲಿ ಉತ್ಪನ್ನಗಳ ಉತ್ಪಾದನೆ ಮತ್ತು ನಿರ್ವಹಣೆಯ ವೆಚ್ಚದಲ್ಲಿ ಸ್ಥಿರವಾದ ಕಡಿತವಾಗಿದೆ (ಮಾನವ-ಗಂಟೆಗಳು ಅಥವಾ ಯಂತ್ರದ ಗಂಟೆಗಳು, CPU, RAM, ಡಿಸ್ಕ್, ಇತ್ಯಾದಿ). ಸಂಪೂರ್ಣ ಕಂಪನಿಯ ಮಟ್ಟದಲ್ಲಿ ಅಭಿವೃದ್ಧಿಯ ಒಟ್ಟಾರೆ ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಸುಲಭವಾದ ಮತ್ತು ಸ್ಪಷ್ಟವಾದ ಮಾರ್ಗವಾಗಿದೆ ವಿಶಿಷ್ಟವಾದ ಸರಣಿ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುವ ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು ಉತ್ಪಾದನೆಯ ಎಲ್ಲಾ ಹಂತಗಳಲ್ಲಿ. ಆದರೆ ಈ ಹಂತಗಳು ಯಾವುವು, ಸಾಮಾನ್ಯ ಪ್ರಕ್ರಿಯೆಯಿಂದ ಅವುಗಳನ್ನು ಹೇಗೆ ಪ್ರತ್ಯೇಕಿಸುವುದು, ಅವು ಯಾವ ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ?

ಕಂಪನಿಯು ಒಂದು ಉತ್ಪನ್ನವನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದಾಗ, ಎಲ್ಲವೂ ಹೆಚ್ಚು ಅಥವಾ ಕಡಿಮೆ ಸ್ಪಷ್ಟವಾಗಿರುತ್ತದೆ: ಸಾಮಾನ್ಯವಾಗಿ ಸಾಮಾನ್ಯ ಮಾರ್ಗಸೂಚಿ ಮತ್ತು ಅಭಿವೃದ್ಧಿ ಯೋಜನೆ ಇರುತ್ತದೆ. ಆದರೆ ಉತ್ಪನ್ನದ ಸಾಲು ವಿಸ್ತರಿಸಿದಾಗ ಮತ್ತು ಹೆಚ್ಚಿನ ಉತ್ಪನ್ನಗಳು ಇದ್ದಾಗ ಏನು ಮಾಡಬೇಕು? ಮೊದಲ ನೋಟದಲ್ಲಿ, ಅವರು ಒಂದೇ ರೀತಿಯ ಪ್ರಕ್ರಿಯೆಗಳು ಮತ್ತು ಅಸೆಂಬ್ಲಿ ಸಾಲುಗಳನ್ನು ಹೊಂದಿದ್ದಾರೆ ಮತ್ತು ಲಾಗ್‌ಗಳು ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳಲ್ಲಿ "ಎಕ್ಸ್ ವ್ಯತ್ಯಾಸಗಳನ್ನು ಹುಡುಕಿ" ಆಟವು ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಆದರೆ ಸಕ್ರಿಯ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ ಈಗಾಗಲೇ 5+ ಯೋಜನೆಗಳಿದ್ದರೆ ಮತ್ತು ಹಲವಾರು ವರ್ಷಗಳಿಂದ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಹಲವಾರು ಆವೃತ್ತಿಗಳಿಗೆ ಬೆಂಬಲದ ಅಗತ್ಯವಿದೆಯೇ? ಉತ್ಪನ್ನದ ಪೈಪ್‌ಲೈನ್‌ಗಳಲ್ಲಿ ಗರಿಷ್ಠ ಸಂಭವನೀಯ ಸಂಖ್ಯೆಯ ಪರಿಹಾರಗಳನ್ನು ಮರುಬಳಕೆ ಮಾಡಲು ನಾವು ಬಯಸುತ್ತೇವೆಯೇ ಅಥವಾ ಪ್ರತಿಯೊಂದಕ್ಕೂ ಅನನ್ಯ ಅಭಿವೃದ್ಧಿಗಾಗಿ ಹಣವನ್ನು ಖರ್ಚು ಮಾಡಲು ನಾವು ಸಿದ್ಧರಿದ್ದೇವೆಯೇ?

ಅನನ್ಯತೆ ಮತ್ತು ಸರಣಿ ಪರಿಹಾರಗಳ ನಡುವಿನ ಸಮತೋಲನವನ್ನು ಹೇಗೆ ಕಂಡುಹಿಡಿಯುವುದು?

ಈ ಪ್ರಶ್ನೆಗಳು 2015 ರಿಂದ ಹೆಚ್ಚಾಗಿ ನಮ್ಮ ಮುಂದೆ ಉದ್ಭವಿಸಲು ಪ್ರಾರಂಭಿಸಿದವು. ಉತ್ಪನ್ನಗಳ ಸಂಖ್ಯೆಯು ಬೆಳೆಯಿತು ಮತ್ತು ಈ ಉತ್ಪನ್ನಗಳ ಅಸೆಂಬ್ಲಿ ಸಾಲುಗಳನ್ನು ಬೆಂಬಲಿಸುವ ನಮ್ಮ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ವಿಭಾಗವನ್ನು (DevOps) ಕನಿಷ್ಠಕ್ಕೆ ವಿಸ್ತರಿಸಲು ನಾವು ಪ್ರಯತ್ನಿಸಿದ್ದೇವೆ. ಅದೇ ಸಮಯದಲ್ಲಿ, ಉತ್ಪನ್ನಗಳ ನಡುವೆ ಸಾಧ್ಯವಾದಷ್ಟು ಪರಿಹಾರಗಳನ್ನು ಪುನರಾವರ್ತಿಸಲು ನಾವು ಬಯಸುತ್ತೇವೆ. ಎಲ್ಲಾ ನಂತರ, ಹತ್ತು ಉತ್ಪನ್ನಗಳಲ್ಲಿ ಒಂದೇ ವಿಷಯವನ್ನು ವಿವಿಧ ರೀತಿಯಲ್ಲಿ ಏಕೆ ಮಾಡಬೇಕು?

ಅಭಿವೃದ್ಧಿ ನಿರ್ದೇಶಕ: "ಗೈಸ್, ಉತ್ಪನ್ನಗಳಿಗೆ DevOps ಏನು ಮಾಡುತ್ತದೆ ಎಂಬುದನ್ನು ನಾವು ಹೇಗಾದರೂ ಮೌಲ್ಯಮಾಪನ ಮಾಡಬಹುದೇ?"

ನಾವು: "ನಮಗೆ ಗೊತ್ತಿಲ್ಲ, ನಾವು ಅಂತಹ ಪ್ರಶ್ನೆಯನ್ನು ಕೇಳಲಿಲ್ಲ, ಆದರೆ ಯಾವ ಸೂಚಕಗಳನ್ನು ಪರಿಗಣಿಸಬೇಕು?"

ಅಭಿವೃದ್ಧಿ ನಿರ್ದೇಶಕ: "ಯಾರಿಗೆ ಗೊತ್ತು! ಯೋಚಿಸಿ..."

ಆ ಪ್ರಸಿದ್ಧ ಚಲನಚಿತ್ರದಲ್ಲಿರುವಂತೆ: "ನಾನು ಹೋಟೆಲ್‌ನಲ್ಲಿದ್ದೇನೆ! .." - "ಉಹ್ ... ನೀವು ನನಗೆ ದಾರಿ ತೋರಿಸಬಹುದೇ?" ಪ್ರತಿಬಿಂಬದ ಮೇಲೆ, ನಾವು ಮೊದಲು ಉತ್ಪನ್ನಗಳ ಅಂತಿಮ ಸ್ಥಿತಿಗಳನ್ನು ನಿರ್ಧರಿಸುವ ತೀರ್ಮಾನಕ್ಕೆ ಬಂದಿದ್ದೇವೆ; ಇದು ನಮ್ಮ ಮೊದಲ ಗುರಿಯಾಯಿತು.

ಆದ್ದರಿಂದ, ನೀವು 10 ರಿಂದ 200 ಜನರಿಂದ ಸಾಕಷ್ಟು ದೊಡ್ಡ ತಂಡಗಳೊಂದಿಗೆ ಒಂದು ಡಜನ್ ಉತ್ಪನ್ನಗಳನ್ನು ಹೇಗೆ ವಿಶ್ಲೇಷಿಸುತ್ತೀರಿ ಮತ್ತು ಪರಿಹಾರಗಳನ್ನು ಪುನರಾವರ್ತಿಸುವಾಗ ಅಳೆಯಬಹುದಾದ ಮೆಟ್ರಿಕ್‌ಗಳನ್ನು ಹೇಗೆ ನಿರ್ಧರಿಸುತ್ತೀರಿ?

1:0 ಚೋಸ್ ಪರವಾಗಿ, ಅಥವಾ ಭುಜದ ಬ್ಲೇಡ್‌ಗಳಲ್ಲಿ DevOps

BPwin ಸರಣಿಯಿಂದ IDEF0 ರೇಖಾಚಿತ್ರಗಳು ಮತ್ತು ವಿವಿಧ ವ್ಯವಹಾರ ಪ್ರಕ್ರಿಯೆ ರೇಖಾಚಿತ್ರಗಳನ್ನು ಅನ್ವಯಿಸುವ ಪ್ರಯತ್ನದೊಂದಿಗೆ ನಾವು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ. ಮುಂದಿನ ಯೋಜನೆಯ ಮುಂದಿನ ಹಂತದ ಐದನೇ ಚೌಕದ ನಂತರ ಗೊಂದಲ ಪ್ರಾರಂಭವಾಯಿತು ಮತ್ತು ಪ್ರತಿ ಯೋಜನೆಗೆ ಈ ಚೌಕಗಳನ್ನು 50+ ಹಂತಗಳ ಅಡಿಯಲ್ಲಿ ಉದ್ದನೆಯ ಹೆಬ್ಬಾವಿನ ಬಾಲದಲ್ಲಿ ಎಳೆಯಬಹುದು. ನಾನು ದುಃಖಿತನಾಗಿದ್ದೆ ಮತ್ತು ಚಂದ್ರನಲ್ಲಿ ಕೂಗಲು ಬಯಸುತ್ತೇನೆ - ಇದು ಸಾಮಾನ್ಯವಾಗಿ ಸರಿಹೊಂದುವುದಿಲ್ಲ.

ವಿಶಿಷ್ಟ ಉತ್ಪಾದನಾ ಕಾರ್ಯಗಳು

ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಮಾಡೆಲಿಂಗ್ ಮಾಡುವುದು ಬಹಳ ಸಂಕೀರ್ಣ ಮತ್ತು ಶ್ರಮದಾಯಕ ಕೆಲಸವಾಗಿದೆ: ನೀವು ವಿವಿಧ ವಿಭಾಗಗಳು ಮತ್ತು ಉತ್ಪಾದನಾ ಸರಪಳಿಗಳಿಂದ ಸಾಕಷ್ಟು ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಬೇಕು, ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಬೇಕು ಮತ್ತು ವಿಶ್ಲೇಷಿಸಬೇಕು. ಲೇಖನದಲ್ಲಿ ನೀವು ಇದರ ಬಗ್ಗೆ ಇನ್ನಷ್ಟು ಓದಬಹುದು "ಐಟಿ ಕಂಪನಿಯಲ್ಲಿ ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಗಳ ಮಾಡೆಲಿಂಗ್».

ನಾವು ನಮ್ಮ ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಮಾಡೆಲಿಂಗ್ ಮಾಡಲು ಪ್ರಾರಂಭಿಸಿದಾಗ, ನಾವು ನಿರ್ದಿಷ್ಟ ಗುರಿಯನ್ನು ಹೊಂದಿದ್ದೇವೆ - ನಮ್ಮ ಕಂಪನಿಯ ಉತ್ಪನ್ನಗಳ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ ತೊಡಗಿರುವ ಪ್ರತಿಯೊಬ್ಬ ಉದ್ಯೋಗಿಗಳಿಗೆ ಮತ್ತು ಯೋಜನಾ ವ್ಯವಸ್ಥಾಪಕರಿಗೆ ತಿಳಿಸಲು:

  • ಉತ್ಪನ್ನಗಳು ಮತ್ತು ಅವುಗಳ ಘಟಕಗಳು, ಕೋಡ್‌ನ ರೇಖೆಯ ಬದ್ಧತೆಯಿಂದ ಪ್ರಾರಂಭಿಸಿ, ಸ್ಥಾಪಕರು ಮತ್ತು ನವೀಕರಣಗಳ ರೂಪದಲ್ಲಿ ಗ್ರಾಹಕರನ್ನು ಹೇಗೆ ತಲುಪುತ್ತವೆ,
  • ಉತ್ಪನ್ನಗಳ ಉತ್ಪಾದನೆಯ ಪ್ರತಿ ಹಂತಕ್ಕೆ ಯಾವ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಒದಗಿಸಲಾಗಿದೆ,
  • ಪ್ರತಿ ಹಂತದಲ್ಲಿ ಯಾವ ಸೇವೆಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ,
  • ಪ್ರತಿ ಹಂತದ ಜವಾಬ್ದಾರಿಯ ಕ್ಷೇತ್ರಗಳನ್ನು ಹೇಗೆ ವಿಂಗಡಿಸಲಾಗಿದೆ,
  • ಪ್ರತಿ ಹಂತದ ಪ್ರವೇಶ ಮತ್ತು ನಿರ್ಗಮನದಲ್ಲಿ ಯಾವ ಒಪ್ಪಂದಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ.

ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಚಿತ್ರದ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡುವುದರಿಂದ ಅದು ಪೂರ್ಣ ಗಾತ್ರದಲ್ಲಿ ತೆರೆಯುತ್ತದೆ.

ಕಂಪನಿಯಲ್ಲಿನ ನಮ್ಮ ಕೆಲಸವನ್ನು ಹಲವಾರು ಕ್ರಿಯಾತ್ಮಕ ಕ್ಷೇತ್ರಗಳಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ. ಮೂಲಸೌಕರ್ಯದ ನಿರ್ದೇಶನವು ಇಲಾಖೆಯ ಎಲ್ಲಾ "ಕಬ್ಬಿಣ" ಸಂಪನ್ಮೂಲಗಳ ಕಾರ್ಯಾಚರಣೆಯ ಆಪ್ಟಿಮೈಸೇಶನ್‌ನಲ್ಲಿ ತೊಡಗಿಸಿಕೊಂಡಿದೆ, ಜೊತೆಗೆ ವರ್ಚುವಲ್ ಯಂತ್ರಗಳ ನಿಯೋಜನೆಯ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಮತ್ತು ಅವುಗಳ ಮೇಲೆ ಪರಿಸರವನ್ನು ಹೊಂದಿದೆ. ಮೇಲ್ವಿಚಾರಣೆಯ ನಿರ್ದೇಶನವು 24/7 ಸೇವೆಯ ಕಾರ್ಯಕ್ಷಮತೆಯ ನಿಯಂತ್ರಣವನ್ನು ಒದಗಿಸುತ್ತದೆ; ಡೆವಲಪರ್‌ಗಳಿಗೆ ಸೇವೆಯಾಗಿ ನಾವು ಮೇಲ್ವಿಚಾರಣೆಯನ್ನು ಸಹ ಒದಗಿಸುತ್ತೇವೆ. ವರ್ಕ್‌ಫ್ಲೋ ನಿರ್ದೇಶನವು ಅಭಿವೃದ್ಧಿ ಮತ್ತು ಪರೀಕ್ಷಾ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು, ಕೋಡ್‌ನ ಸ್ಥಿತಿಯನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ಯೋಜನೆಗಳಲ್ಲಿ ವಿಶ್ಲೇಷಣೆಯನ್ನು ಪಡೆಯಲು ತಂಡಗಳಿಗೆ ಸಾಧನಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಮತ್ತು ಅಂತಿಮವಾಗಿ, ವೆಬ್‌ದೇವ್ ನಿರ್ದೇಶನವು GUS ಮತ್ತು FLUS ಅಪ್‌ಡೇಟ್ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಬಿಡುಗಡೆಗಳ ಪ್ರಕಟಣೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ, ಜೊತೆಗೆ ಪರವಾನಗಿ ಲ್ಯಾಬ್ ಸೇವೆಯನ್ನು ಬಳಸುವ ಉತ್ಪನ್ನಗಳ ಪರವಾನಗಿಯನ್ನು ಒದಗಿಸುತ್ತದೆ. ಪ್ರೊಡಕ್ಷನ್ ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ಬೆಂಬಲಿಸಲು, ನಾವು ಡೆವಲಪರ್‌ಗಳಿಗಾಗಿ ಹಲವಾರು ವಿಭಿನ್ನ ಬೆಂಬಲ ಸೇವೆಗಳನ್ನು ಹೊಂದಿಸುತ್ತೇವೆ ಮತ್ತು ನಿರ್ವಹಿಸುತ್ತೇವೆ (ಹಳೆಯ ಸಭೆಗಳಲ್ಲಿ ಅವುಗಳಲ್ಲಿ ಕೆಲವು ಕಥೆಗಳನ್ನು ನೀವು ಕೇಳಬಹುದು: Op!DevOps! 2016 и Op!DevOps! 2017) ನಾವು ಸೇರಿದಂತೆ ಆಂತರಿಕ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಪರಿಕರಗಳನ್ನು ಸಹ ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತೇವೆ ಮುಕ್ತ ಮೂಲ ಪರಿಹಾರಗಳು.

ಕಳೆದ ಐದು ವರ್ಷಗಳಲ್ಲಿ, ನಮ್ಮ ಕೆಲಸವು ಒಂದೇ ರೀತಿಯ ಮತ್ತು ದಿನನಿತ್ಯದ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಸಂಗ್ರಹಿಸಿದೆ ಮತ್ತು ಇತರ ವಿಭಾಗಗಳಿಂದ ನಮ್ಮ ಡೆವಲಪರ್‌ಗಳು ಮುಖ್ಯವಾಗಿ ಕರೆಯಲ್ಪಡುವವರು ವಿಶಿಷ್ಟ ಕಾರ್ಯಗಳು, ಇದರ ಪರಿಹಾರವು ಸಂಪೂರ್ಣವಾಗಿ ಅಥವಾ ಭಾಗಶಃ ಸ್ವಯಂಚಾಲಿತವಾಗಿರುತ್ತದೆ, ಪ್ರದರ್ಶಕರಿಗೆ ತೊಂದರೆಗಳನ್ನು ಉಂಟುಮಾಡುವುದಿಲ್ಲ ಮತ್ತು ಗಮನಾರ್ಹ ಪ್ರಮಾಣದ ಕೆಲಸದ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ. ಪ್ರಮುಖ ಕ್ಷೇತ್ರಗಳೊಂದಿಗೆ, ನಾವು ಅಂತಹ ಕಾರ್ಯಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಿದ್ದೇವೆ ಮತ್ತು ಕೆಲಸದ ಪ್ರತ್ಯೇಕ ವರ್ಗಗಳನ್ನು ಗುರುತಿಸಲು ಸಾಧ್ಯವಾಯಿತು, ಅಥವಾ ಉತ್ಪಾದನಾ ಹಂತಗಳು, ಹಂತಗಳನ್ನು ಅವಿಭಾಜ್ಯ ಹಂತಗಳಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ ಮತ್ತು ಹಲವಾರು ಹಂತಗಳನ್ನು ಸೇರಿಸಲಾಗುತ್ತದೆ ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆ ಸರಪಳಿ.

ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಕಂಪನಿಯೊಳಗೆ ನಮ್ಮ ಪ್ರತಿಯೊಂದು ಉತ್ಪನ್ನಗಳ ಜೋಡಣೆ, ನಿಯೋಜನೆ ಮತ್ತು ಪರೀಕ್ಷೆಯ ಹಂತಗಳು ತಾಂತ್ರಿಕ ಸರಪಳಿಯ ಸರಳ ಉದಾಹರಣೆಯಾಗಿದೆ. ಪ್ರತಿಯಾಗಿ, ಉದಾಹರಣೆಗೆ, ನಿರ್ಮಾಣ ಹಂತವು ಹಲವು ಪ್ರತ್ಯೇಕ ವಿಶಿಷ್ಟ ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿದೆ: GitLab ನಿಂದ ಮೂಲಗಳನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡುವುದು, ಅವಲಂಬನೆಗಳು ಮತ್ತು 3 ನೇ-ಪಕ್ಷದ ಲೈಬ್ರರಿಗಳನ್ನು ಸಿದ್ಧಪಡಿಸುವುದು, ಘಟಕ ಪರೀಕ್ಷೆ ಮತ್ತು ಸ್ಥಿರ ಕೋಡ್ ವಿಶ್ಲೇಷಣೆ, GitLab CI ನಲ್ಲಿ ಬಿಲ್ಡ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದು, ರೆಪೊಸಿಟರಿಯಲ್ಲಿ ಕಲಾಕೃತಿಗಳನ್ನು ಪ್ರಕಟಿಸುವುದು ನಮ್ಮ ಆಂತರಿಕ ಚೇಂಜ್ಲಾಗ್ ಬಿಲ್ಡರ್ ಉಪಕರಣದ ಮೂಲಕ ಆರ್ಟಿಫ್ಯಾಕ್ಟರಿ ಮತ್ತು ಬಿಡುಗಡೆ ಟಿಪ್ಪಣಿಗಳ ಉತ್ಪಾದನೆ.

Habré ನಲ್ಲಿನ ನಮ್ಮ ಇತರ ಲೇಖನಗಳಲ್ಲಿ ವಿಶಿಷ್ಟವಾದ DevOps ಕಾರ್ಯಗಳ ಕುರಿತು ನೀವು ಓದಬಹುದು: "ವೈಯಕ್ತಿಕ ಅನುಭವ: ನಮ್ಮ ನಿರಂತರ ಏಕೀಕರಣ ವ್ಯವಸ್ಥೆಯು ಹೇಗೆ ಕಾಣುತ್ತದೆ"ಮತ್ತು"ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಗಳ ಆಟೊಮೇಷನ್: ನಾವು ಧನಾತ್ಮಕ ತಂತ್ರಜ್ಞಾನಗಳಲ್ಲಿ DevOps ಕಲ್ಪನೆಗಳನ್ನು ಹೇಗೆ ಕಾರ್ಯಗತಗೊಳಿಸಿದ್ದೇವೆ».

ಅನೇಕ ವಿಶಿಷ್ಟ ಉತ್ಪಾದನಾ ಸರಪಳಿಗಳು ರೂಪುಗೊಳ್ಳುತ್ತವೆ ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆ. ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ವಿವರಿಸುವ ಪ್ರಮಾಣಿತ ವಿಧಾನವೆಂದರೆ ಕ್ರಿಯಾತ್ಮಕ IDEF0 ಮಾದರಿಗಳನ್ನು ಬಳಸುವುದು.

ಉತ್ಪಾದನಾ CI ಪ್ರಕ್ರಿಯೆಯನ್ನು ಮಾಡೆಲಿಂಗ್ ಮಾಡುವ ಉದಾಹರಣೆ

ನಿರಂತರ ಏಕೀಕರಣ ವ್ಯವಸ್ಥೆಗಾಗಿ ಪ್ರಮಾಣಿತ ಯೋಜನೆಗಳ ಅಭಿವೃದ್ಧಿಗೆ ನಾವು ವಿಶೇಷ ಗಮನ ನೀಡಿದ್ದೇವೆ. ಇದು ಯೋಜನೆಗಳ ಏಕೀಕರಣವನ್ನು ಸಾಧಿಸಲು ಸಾಧ್ಯವಾಗಿಸಿತು, ಕರೆಯಲ್ಪಡುವದನ್ನು ಎತ್ತಿ ತೋರಿಸುತ್ತದೆ ಪ್ರಚಾರಗಳೊಂದಿಗೆ ನಿರ್ಮಾಣ ಯೋಜನೆಯನ್ನು ಬಿಡುಗಡೆ ಮಾಡಿ.

ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಇದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ ಎಂಬುದು ಇಲ್ಲಿದೆ. ಎಲ್ಲಾ ಯೋಜನೆಗಳು ವಿಶಿಷ್ಟವಾಗಿ ಕಾಣುತ್ತವೆ: ಅವು ಆರ್ಟಿಫ್ಯಾಕ್ಟರಿಯಲ್ಲಿ ಸ್ನ್ಯಾಪ್‌ಶಾಟ್ ರೆಪೊಸಿಟರಿಯಲ್ಲಿ ಬೀಳುವ ಅಸೆಂಬ್ಲಿಗಳ ಸಂರಚನೆಯನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ, ನಂತರ ಅವುಗಳನ್ನು ಪರೀಕ್ಷಾ ಬೆಂಚುಗಳಲ್ಲಿ ನಿಯೋಜಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ನಂತರ ಬಿಡುಗಡೆ ರೆಪೊಸಿಟರಿಗೆ ಬಡ್ತಿ ನೀಡಲಾಗುತ್ತದೆ. ಆರ್ಟಿಫ್ಯಾಕ್ಟರಿ ಸೇವೆಯು ತಂಡಗಳು ಮತ್ತು ಇತರ ಸೇವೆಗಳ ನಡುವೆ ಎಲ್ಲಾ ನಿರ್ಮಾಣ ಕಲಾಕೃತಿಗಳಿಗೆ ಒಂದೇ ವಿತರಣಾ ಕೇಂದ್ರವಾಗಿದೆ.

ನಮ್ಮ ಬಿಡುಗಡೆಯ ಯೋಜನೆಯನ್ನು ನಾವು ಹೆಚ್ಚು ಸರಳಗೊಳಿಸಿದರೆ ಮತ್ತು ಸಾಮಾನ್ಯೀಕರಿಸಿದರೆ, ಅದು ಈ ಕೆಳಗಿನ ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ:

  • ಅಡ್ಡ-ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಉತ್ಪನ್ನ ಜೋಡಣೆ,
  • ಪರೀಕ್ಷಾ ಬೆಂಚುಗಳಿಗೆ ನಿಯೋಜನೆ,
  • ಕ್ರಿಯಾತ್ಮಕ ಮತ್ತು ಇತರ ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸುವುದು,
  • ಆರ್ಟಿಫ್ಯಾಕ್ಟರಿಯಲ್ಲಿ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಬಿಡುಗಡೆ ಮಾಡಲು ಪರೀಕ್ಷಿತ ನಿರ್ಮಾಣಗಳನ್ನು ಉತ್ತೇಜಿಸುವುದು,
  • ನವೀಕರಣದ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಬಿಡುಗಡೆಯ ನಿರ್ಮಾಣಗಳ ಪ್ರಕಟಣೆ,
  • ಅಸೆಂಬ್ಲಿಗಳ ವಿತರಣೆ ಮತ್ತು ಉತ್ಪಾದನೆಗೆ ನವೀಕರಣಗಳು,
  • ಉತ್ಪನ್ನದ ಸ್ಥಾಪನೆ ಮತ್ತು ನವೀಕರಣವನ್ನು ಪ್ರಾರಂಭಿಸುವುದು.

ಉದಾಹರಣೆಗೆ, ಕ್ರಿಯಾತ್ಮಕ IDEF0 ಮಾದರಿಯ ರೂಪದಲ್ಲಿ ಈ ವಿಶಿಷ್ಟ ಬಿಡುಗಡೆ ಯೋಜನೆಯ (ಇನ್ನು ಮುಂದೆ ಸರಳವಾಗಿ ಮಾದರಿ) ತಾಂತ್ರಿಕ ಮಾದರಿಯನ್ನು ಪರಿಗಣಿಸಿ. ಇದು ನಮ್ಮ CI ಪ್ರಕ್ರಿಯೆಯ ಮುಖ್ಯ ಹಂತಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ. IDEF0 ಮಾದರಿಗಳು ಕರೆಯಲ್ಪಡುವದನ್ನು ಬಳಸುತ್ತವೆ ICOM ಸಂಕೇತ (ಇನ್‌ಪುಟ್-ಕಂಟ್ರೋಲ್-ಔಟ್‌ಪುಟ್-ಮೆಕ್ಯಾನಿಸಂ) ಪ್ರತಿ ಹಂತದಲ್ಲಿ ಯಾವ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ, ಯಾವ ನಿಯಮಗಳು ಮತ್ತು ಅವಶ್ಯಕತೆಗಳ ಕೆಲಸವನ್ನು ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ, ಔಟ್‌ಪುಟ್ ಏನು ಮತ್ತು ಯಾವ ಕಾರ್ಯವಿಧಾನಗಳು, ಸೇವೆಗಳು ಅಥವಾ ಜನರು ನಿರ್ದಿಷ್ಟ ಹಂತವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತಾರೆ ಎಂಬುದನ್ನು ವಿವರಿಸಲು.

ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಚಿತ್ರದ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡುವುದರಿಂದ ಅದು ಪೂರ್ಣ ಗಾತ್ರದಲ್ಲಿ ತೆರೆಯುತ್ತದೆ.

ನಿಯಮದಂತೆ, ಕ್ರಿಯಾತ್ಮಕ ಮಾದರಿಗಳಲ್ಲಿ ಪ್ರಕ್ರಿಯೆಗಳ ವಿವರಣೆಯನ್ನು ಕೊಳೆಯುವುದು ಮತ್ತು ವಿವರಿಸುವುದು ಸುಲಭವಾಗಿದೆ. ಆದರೆ ಅಂಶಗಳ ಸಂಖ್ಯೆಯು ಬೆಳೆದಂತೆ, ಅವುಗಳಲ್ಲಿ ಏನನ್ನಾದರೂ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಹೆಚ್ಚು ಕಷ್ಟಕರವಾಗುತ್ತದೆ. ಆದರೆ ನೈಜ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ, ಸಹಾಯಕ ಹಂತಗಳು ಸಹ ಇವೆ: ಮೇಲ್ವಿಚಾರಣೆ, ಉತ್ಪನ್ನ ಪ್ರಮಾಣೀಕರಣ, ಕೆಲಸದ ಹರಿವಿನ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಮತ್ತು ಇತರರು. ಸ್ಕೇಲಿಂಗ್ ಸಮಸ್ಯೆಯಿಂದಾಗಿ ನಾವು ಈ ವಿವರಣೆಯನ್ನು ಕೈಬಿಟ್ಟಿದ್ದೇವೆ.

ಭರವಸೆಯ ಜನನ

ಒಂದು ಪುಸ್ತಕದಲ್ಲಿ, ತಾಂತ್ರಿಕ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ವಿವರಿಸುವ ಹಳೆಯ ಸೋವಿಯತ್ ನಕ್ಷೆಗಳನ್ನು ನಾವು ನೋಡಿದ್ದೇವೆ (ಇದರಿಂದಾಗಿ, ಇಂದಿಗೂ ಅನೇಕ ಸರ್ಕಾರಿ ಸ್ವಾಮ್ಯದ ಉದ್ಯಮಗಳು ಮತ್ತು ವಿಶ್ವವಿದ್ಯಾಲಯಗಳಲ್ಲಿ ಇದನ್ನು ಬಳಸಲಾಗುತ್ತದೆ). ನಿರೀಕ್ಷಿಸಿ, ನಿರೀಕ್ಷಿಸಿ, ಏಕೆಂದರೆ ನಮ್ಮಲ್ಲಿ ವರ್ಕ್‌ಫ್ಲೋ ಇದೆ! ಒಂದು ಭಾವನೆ ಇತ್ತು: “ಇದು ಅದು! ನಾವು ಸರಿಯಾದ ಥ್ರೆಡ್ ಅನ್ನು ಕಂಡುಕೊಂಡಿದ್ದೇವೆ, ಅದನ್ನು ಚೆನ್ನಾಗಿ ಎಳೆಯುವ ಸಮಯ!

ಸರಳ ಕೋಷ್ಟಕದಲ್ಲಿ, ಉತ್ಪನ್ನಗಳನ್ನು ಕಾಲಮ್‌ಗಳು ಮತ್ತು ತಾಂತ್ರಿಕ ಹಂತಗಳು ಮತ್ತು ಉತ್ಪನ್ನ ಪೈಪ್‌ಲೈನ್ ಹಂತಗಳ ಮೂಲಕ ಸಾಲುಗಳ ಮೂಲಕ ರೆಕಾರ್ಡ್ ಮಾಡಲು ನಾವು ನಿರ್ಧರಿಸಿದ್ದೇವೆ. ಮೈಲಿಗಲ್ಲುಗಳು ಉತ್ಪನ್ನ ನಿರ್ಮಾಣ ಹಂತದಂತಹ ದೊಡ್ಡದಾಗಿದೆ. ಮತ್ತು ಹಂತಗಳು ಚಿಕ್ಕದಾದ ಮತ್ತು ಹೆಚ್ಚು ವಿವರವಾದವುಗಳಾಗಿವೆ, ಉದಾಹರಣೆಗೆ ಬಿಲ್ಡ್ ಸರ್ವರ್‌ಗೆ ಮೂಲ ಕೋಡ್ ಅನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡುವ ಹಂತ ಅಥವಾ ಕೋಡ್ ಅನ್ನು ಕಂಪೈಲ್ ಮಾಡುವ ಹಂತ.

ನಕ್ಷೆಯ ಸಾಲುಗಳು ಮತ್ತು ಕಾಲಮ್‌ಗಳ ಛೇದಕಗಳಲ್ಲಿ, ನಾವು ನಿರ್ದಿಷ್ಟ ಹಂತ ಮತ್ತು ಉತ್ಪನ್ನದ ಸ್ಥಿತಿಗಳನ್ನು ಕೆಳಗೆ ಇಡುತ್ತೇವೆ. ಸ್ಥಾನಮಾನಗಳಿಗಾಗಿ, ರಾಜ್ಯಗಳ ಗುಂಪನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ:

  1. ಯಾವುದೇ ಮಾಹಿತಿ ಇಲ್ಲ - ಅಥವಾ ಅನುಚಿತ. ಉತ್ಪನ್ನದಲ್ಲಿ ಒಂದು ಹಂತದ ಬೇಡಿಕೆಯನ್ನು ವಿಶ್ಲೇಷಿಸುವುದು ಅವಶ್ಯಕ. ಒಂದೋ ವಿಶ್ಲೇಷಣೆಯನ್ನು ಈಗಾಗಲೇ ನಡೆಸಲಾಗಿದೆ, ಆದರೆ ಹಂತವು ಪ್ರಸ್ತುತ ಅಗತ್ಯವಿಲ್ಲ ಅಥವಾ ಆರ್ಥಿಕವಾಗಿ ಸಮರ್ಥಿಸಲ್ಪಟ್ಟಿಲ್ಲ.
  2. ಮುಂದೂಡಲಾಗಿದೆ - ಅಥವಾ ಸದ್ಯಕ್ಕೆ ಪ್ರಸ್ತುತವಲ್ಲ. ಪೈಪ್ಲೈನ್ನಲ್ಲಿ ಒಂದು ಹಂತದ ಅಗತ್ಯವಿದೆ, ಆದರೆ ಈ ವರ್ಷ ಅನುಷ್ಠಾನಕ್ಕೆ ಯಾವುದೇ ಶಕ್ತಿಗಳಿಲ್ಲ.
  3. ಯೋಜಿಸಲಾಗಿದೆ. ಹಂತವನ್ನು ಈ ವರ್ಷ ಜಾರಿಗೆ ತರಲು ಯೋಜಿಸಲಾಗಿದೆ.
  4. ಅಳವಡಿಸಲಾಗಿದೆ. ಪೈಪ್ಲೈನ್ನಲ್ಲಿನ ಹಂತವನ್ನು ಅಗತ್ಯವಿರುವ ಪರಿಮಾಣದಲ್ಲಿ ಅಳವಡಿಸಲಾಗಿದೆ.

ಟೇಬಲ್ ಅನ್ನು ಭರ್ತಿ ಮಾಡುವುದು ಯೋಜನೆಯ ಮೂಲಕ ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಿತು. ಮೊದಲನೆಯದಾಗಿ, ಒಂದು ಯೋಜನೆಯ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳನ್ನು ವರ್ಗೀಕರಿಸಲಾಗಿದೆ ಮತ್ತು ಅವುಗಳ ಸ್ಥಿತಿಗಳನ್ನು ದಾಖಲಿಸಲಾಗಿದೆ. ನಂತರ ಅವರು ಮುಂದಿನ ಯೋಜನೆಯನ್ನು ತೆಗೆದುಕೊಂಡರು, ಅದರಲ್ಲಿ ಸ್ಥಿತಿಗಳನ್ನು ಸರಿಪಡಿಸಿದರು ಮತ್ತು ಹಿಂದಿನ ಯೋಜನೆಗಳಲ್ಲಿ ಕಾಣೆಯಾದ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳನ್ನು ಸೇರಿಸಿದರು. ಪರಿಣಾಮವಾಗಿ, ನಾವು ನಮ್ಮ ಸಂಪೂರ್ಣ ಉತ್ಪಾದನಾ ಪೈಪ್‌ಲೈನ್‌ನ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳನ್ನು ಮತ್ತು ನಿರ್ದಿಷ್ಟ ಯೋಜನೆಯಲ್ಲಿ ಅವುಗಳ ಸ್ಥಿತಿಗಳನ್ನು ಪಡೆದುಕೊಂಡಿದ್ದೇವೆ. ಇದು ಉತ್ಪನ್ನದ ಪೈಪ್‌ಲೈನ್ ಸಾಮರ್ಥ್ಯದ ಮ್ಯಾಟ್ರಿಕ್ಸ್‌ಗೆ ಹೋಲುತ್ತದೆ. ಅಂತಹ ಮ್ಯಾಟ್ರಿಕ್ಸ್ ಅನ್ನು ನಾವು ತಾಂತ್ರಿಕ ನಕ್ಷೆ ಎಂದು ಕರೆಯುತ್ತೇವೆ.

ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ, ನಾವು ಮಾಪನಶಾಸ್ತ್ರೀಯವಾಗಿ ತಂಡಗಳೊಂದಿಗೆ ವರ್ಷದ ಕೆಲಸದ ಯೋಜನೆಗಳು ಮತ್ತು ನಾವು ಒಟ್ಟಿಗೆ ಸಾಧಿಸಲು ಬಯಸುವ ಗುರಿಗಳನ್ನು ಸಮಂಜಸವಾಗಿ ಸಂಯೋಜಿಸುತ್ತೇವೆ: ಈ ವರ್ಷ ನಾವು ಯೋಜನೆಗೆ ಯಾವ ಹಂತಗಳನ್ನು ಸೇರಿಸುತ್ತೇವೆ ಮತ್ತು ನಂತರ ನಾವು ಯಾವ ಹಂತಗಳನ್ನು ಬಿಡುತ್ತೇವೆ. ಅಲ್ಲದೆ, ಕೆಲಸದ ಸಂದರ್ಭದಲ್ಲಿ, ನಾವು ಕೇವಲ ಒಂದು ಉತ್ಪನ್ನಕ್ಕಾಗಿ ನಾವು ಪೂರ್ಣಗೊಳಿಸಿದ ಹಂತಗಳಲ್ಲಿ ಸುಧಾರಣೆಗಳನ್ನು ಹೊಂದಿರಬಹುದು. ನಂತರ ನಾವು ನಮ್ಮ ನಕ್ಷೆಯನ್ನು ವಿಸ್ತರಿಸುತ್ತೇವೆ ಮತ್ತು ಈ ಸುಧಾರಣೆಯನ್ನು ಹಂತ ಅಥವಾ ಹೊಸ ಹಂತವಾಗಿ ಪರಿಚಯಿಸುತ್ತೇವೆ, ನಂತರ ನಾವು ಪ್ರತಿ ಉತ್ಪನ್ನವನ್ನು ವಿಶ್ಲೇಷಿಸುತ್ತೇವೆ ಮತ್ತು ಸುಧಾರಣೆಯನ್ನು ಪುನರಾವರ್ತಿಸುವ ಕಾರ್ಯಸಾಧ್ಯತೆಯನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತೇವೆ.

ಅವರು ನಮ್ಮನ್ನು ಆಕ್ಷೇಪಿಸಬಹುದು: “ಇದೆಲ್ಲವೂ ಒಳ್ಳೆಯದು, ಕಾಲಾನಂತರದಲ್ಲಿ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳ ಸಂಖ್ಯೆಯು ನಿಷಿದ್ಧವಾಗಿ ದೊಡ್ಡದಾಗುತ್ತದೆ. ಹೇಗಿರಬೇಕು?

ನಾವು ಪ್ರತಿ ಹಂತ ಮತ್ತು ಹಂತಗಳ ಅವಶ್ಯಕತೆಗಳ ಪ್ರಮಾಣಿತ ಮತ್ತು ತಕ್ಕಮಟ್ಟಿಗೆ ಸಂಪೂರ್ಣ ವಿವರಣೆಯನ್ನು ಪರಿಚಯಿಸಿದ್ದೇವೆ, ಇದರಿಂದಾಗಿ ಕಂಪನಿಯೊಳಗಿನ ಪ್ರತಿಯೊಬ್ಬರೂ ಒಂದೇ ರೀತಿಯಲ್ಲಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತಾರೆ. ಕಾಲಾನಂತರದಲ್ಲಿ, ಸುಧಾರಣೆಗಳನ್ನು ಪರಿಚಯಿಸಿದಂತೆ, ಒಂದು ಹಂತವನ್ನು ಮತ್ತೊಂದು ಹಂತ ಅಥವಾ ಹಂತಕ್ಕೆ ಹೀರಿಕೊಳ್ಳಬಹುದು ಮತ್ತು ನಂತರ ಅವು "ಕುಸಿಯುತ್ತವೆ". ಅದೇ ಸಮಯದಲ್ಲಿ, ಎಲ್ಲಾ ಅವಶ್ಯಕತೆಗಳು ಮತ್ತು ತಾಂತ್ರಿಕ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳು ಸಾಮಾನ್ಯೀಕರಿಸುವ ಹಂತ ಅಥವಾ ಹಂತದ ಅವಶ್ಯಕತೆಗಳಿಗೆ ಹೊಂದಿಕೊಳ್ಳುತ್ತವೆ.

ಪರಿಹಾರಗಳನ್ನು ಪುನರಾವರ್ತಿಸುವ ಪರಿಣಾಮವನ್ನು ಹೇಗೆ ಮೌಲ್ಯಮಾಪನ ಮಾಡುವುದು? ನಾವು ಅತ್ಯಂತ ಸರಳವಾದ ವಿಧಾನವನ್ನು ಬಳಸುತ್ತೇವೆ: ಹೊಸ ಹಂತದ ಅನುಷ್ಠಾನಕ್ಕೆ ನಾವು ಆರಂಭಿಕ ಬಂಡವಾಳ ವೆಚ್ಚವನ್ನು ವಾರ್ಷಿಕ ಸಾಮಾನ್ಯ ಉತ್ಪನ್ನ ವೆಚ್ಚಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತೇವೆ ಮತ್ತು ನಂತರ ಪುನರಾವರ್ತಿಸುವಾಗ ಎಲ್ಲರಿಂದ ಭಾಗಿಸುತ್ತೇವೆ.

ಅಭಿವೃದ್ಧಿಯ ಭಾಗಗಳನ್ನು ಈಗಾಗಲೇ ನಕ್ಷೆಯಲ್ಲಿ ಮೈಲಿಗಲ್ಲುಗಳು ಮತ್ತು ಹಂತಗಳಾಗಿ ತೋರಿಸಲಾಗಿದೆ. ವಿಶಿಷ್ಟ ಹಂತಗಳಿಗೆ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಪರಿಚಯದ ಮೂಲಕ ಉತ್ಪನ್ನದ ವೆಚ್ಚದ ಕಡಿತವನ್ನು ನಾವು ಪ್ರಭಾವಿಸಬಹುದು. ಅದರ ನಂತರ, ನಾವು ಗುಣಾತ್ಮಕ ಗುಣಲಕ್ಷಣಗಳಲ್ಲಿನ ಬದಲಾವಣೆಗಳನ್ನು ಪರಿಗಣಿಸುತ್ತೇವೆ, ಪರಿಮಾಣಾತ್ಮಕ ಮೆಟ್ರಿಕ್ಸ್ ಮತ್ತು ತಂಡಗಳಿಂದ ಪಡೆದ ಲಾಭ (ಮಾನವ-ಗಂಟೆಗಳಲ್ಲಿ ಅಥವಾ ಉಳಿತಾಯದ ಯಂತ್ರ-ಗಂಟೆಗಳಲ್ಲಿ).

ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯ ತಾಂತ್ರಿಕ ನಕ್ಷೆ

ನಾವು ನಮ್ಮ ಎಲ್ಲಾ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳನ್ನು ತೆಗೆದುಕೊಂಡರೆ, ಅವುಗಳನ್ನು ಟ್ಯಾಗ್‌ಗಳೊಂದಿಗೆ ಎನ್ಕೋಡ್ ಮಾಡಿ ಮತ್ತು ಅವುಗಳನ್ನು ಒಂದು ಸರಪಳಿಯಾಗಿ ವಿಸ್ತರಿಸಿದರೆ, ಅದು ತುಂಬಾ ಉದ್ದವಾಗಿದೆ ಮತ್ತು ಗ್ರಹಿಸಲಾಗದಂತಾಗುತ್ತದೆ (ಲೇಖನದ ಆರಂಭದಲ್ಲಿ ನಾವು ಮಾತನಾಡಿದ “ಪೈಥಾನ್ ಬಾಲ”) :

[Production] — [InfMonitoring] — [SourceCodeControl] — [Prepare] — [PrepareLinuxDocker] — [PrepareWinDocker] — [Build] — [PullSourceCode] — [PrepareDep] — [UnitTest] — [CodeCoverage] — [StaticAnalyze] — [BuildScenario] — [PushToSnapshot] — [ChangelogBuilder] — [Deploy] — [PrepareTestStand] — [PullTestCode] — [PrepareTestEnv] — [PullArtifact] — [DeployArtifact] — [Test] — [BVTTest] — [SmokeTest] — [FuncTest] — [LoadTest] — [IntegrityTest] — [DeliveryTest] — [MonitoringStands] — [TestManagement] — [Promote] — [QualityTag] — [MoveToRelease] — [License] — [Publish] — [PublishGUSFLUS] — [ControlVisibility] — [Install] — [LicenseActivation] — [RequestUpdates] — [PullUpdates] — [InitUpdates] — [PrepareEnv] — [InstallUpdates] — [Telemetry] — [Workflow] — [Communication] — [Certification] — [CISelfSufficiency]

ಇವುಗಳು ನಿರ್ಮಾಣ ಉತ್ಪನ್ನಗಳ [ಬಿಲ್ಡ್] ಹಂತಗಳಾಗಿವೆ, ಅವುಗಳನ್ನು ಪರೀಕ್ಷಾ ಸರ್ವರ್‌ಗಳಿಗೆ ನಿಯೋಜಿಸುವುದು [ನಿಯೋಜನೆ], ಪರೀಕ್ಷೆ [ಪರೀಕ್ಷೆ], ಪರೀಕ್ಷೆಯ ಫಲಿತಾಂಶಗಳ ಆಧಾರದ ಮೇಲೆ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಬಿಡುಗಡೆ ಮಾಡಲು ನಿರ್ಮಾಣಗಳನ್ನು ಉತ್ತೇಜಿಸುವುದು [ಪ್ರಮೋಟ್], ಪರವಾನಗಿಗಳನ್ನು ಉತ್ಪಾದಿಸುವುದು ಮತ್ತು ಪ್ರಕಟಿಸುವುದು, ಪ್ರಕಟಣೆ [ಪರವಾನಗಿ] GUS ಅಪ್‌ಡೇಟ್ ಸರ್ವರ್‌ನಲ್ಲಿ ಪ್ರಕಟಿಸಿ ಮತ್ತು FLUS ಅಪ್‌ಡೇಟ್ ಸರ್ವರ್‌ಗಳಿಗೆ ವಿತರಣೆ, ಉತ್ಪನ್ನ ಕಾನ್ಫಿಗರೇಶನ್ ಮ್ಯಾನೇಜ್‌ಮೆಂಟ್ [ಇನ್‌ಸ್ಟಾಲ್] ಬಳಸಿಕೊಂಡು ಗ್ರಾಹಕರ ಮೂಲಸೌಕರ್ಯದಲ್ಲಿ ಉತ್ಪನ್ನ ಘಟಕಗಳ ಸ್ಥಾಪನೆ ಮತ್ತು ಅಪ್‌ಡೇಟ್, ಹಾಗೆಯೇ ಸ್ಥಾಪಿಸಲಾದ ಉತ್ಪನ್ನಗಳಿಂದ ಟೆಲಿಮೆಟ್ರಿ [ಟೆಲಿಮೆಟ್ರಿ] ಸಂಗ್ರಹ.

ಅವುಗಳ ಜೊತೆಗೆ, ಪ್ರತ್ಯೇಕ ಹಂತಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸಬಹುದು: ಮೂಲಸೌಕರ್ಯ ಸ್ಥಿತಿ ಮೇಲ್ವಿಚಾರಣೆ [ಇನ್ಫ್ಮಾನಿಟರಿಂಗ್], ಮೂಲ ಕೋಡ್ ಆವೃತ್ತಿ ನಿಯಂತ್ರಣ [ಸೋರ್ಸ್‌ಕೋಡ್ ಕಂಟ್ರೋಲ್], ನಿರ್ಮಾಣ ಪರಿಸರ ತಯಾರಿಕೆ [ತಯಾರಿ], ಯೋಜನಾ ನಿರ್ವಹಣೆ [ವರ್ಕ್‌ಫ್ಲೋ], ಸಂವಹನ ಸಾಧನಗಳೊಂದಿಗೆ ತಂಡಗಳನ್ನು ಒದಗಿಸುವುದು [ಸಂವಹನ], ಉತ್ಪನ್ನ ಪ್ರಮಾಣೀಕರಣ [ಪ್ರಮಾಣೀಕರಣ] ಮತ್ತು CI ಪ್ರಕ್ರಿಯೆಗಳ ಸ್ವಯಂಪೂರ್ಣತೆಯನ್ನು ಖಾತ್ರಿಪಡಿಸುವುದು [CISelfSufficiency] (ಉದಾಹರಣೆಗೆ, ಇಂಟರ್ನೆಟ್‌ನಿಂದ ಅಸೆಂಬ್ಲಿಗಳ ಸ್ವಾತಂತ್ರ್ಯ). ನಮ್ಮ ಪ್ರಕ್ರಿಯೆಗಳಲ್ಲಿನ ಹತ್ತಾರು ಹಂತಗಳನ್ನು ಸಹ ಪರಿಗಣಿಸಲಾಗುವುದಿಲ್ಲ, ಏಕೆಂದರೆ ಅವು ತುಂಬಾ ನಿರ್ದಿಷ್ಟವಾಗಿವೆ.

ಸಂಪೂರ್ಣ ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯನ್ನು ರೂಪದಲ್ಲಿ ಪ್ರಸ್ತುತಪಡಿಸಿದರೆ ಅದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಮತ್ತು ನೋಡಲು ಹೆಚ್ಚು ಸುಲಭವಾಗುತ್ತದೆ ತಾಂತ್ರಿಕ ನಕ್ಷೆ; ಇದು ಒಂದು ಕೋಷ್ಟಕವಾಗಿದ್ದು, ಮಾದರಿಯ ಪ್ರತ್ಯೇಕ ಉತ್ಪಾದನಾ ಹಂತಗಳು ಮತ್ತು ಕೊಳೆತ ಹಂತಗಳನ್ನು ಸಾಲುಗಳಲ್ಲಿ ಬರೆಯಲಾಗುತ್ತದೆ ಮತ್ತು ಕಾಲಮ್‌ಗಳಲ್ಲಿ ಪ್ರತಿ ಹಂತ ಅಥವಾ ಹಂತದಲ್ಲಿ ಏನು ಮಾಡಲಾಗುತ್ತದೆ ಎಂಬುದರ ವಿವರಣೆ. ಪ್ರತಿ ಹಂತವನ್ನು ಒದಗಿಸುವ ಸಂಪನ್ಮೂಲಗಳು ಮತ್ತು ಜವಾಬ್ದಾರಿಯ ಕ್ಷೇತ್ರಗಳ ಡಿಲಿಮಿಟೇಶನ್‌ಗೆ ಮುಖ್ಯ ಒತ್ತು ನೀಡಲಾಗುತ್ತದೆ.

ನಮಗೆ ನಕ್ಷೆಯು ಒಂದು ರೀತಿಯ ವರ್ಗೀಕರಣವಾಗಿದೆ. ಇದು ಉತ್ಪನ್ನಗಳ ಉತ್ಪಾದನೆಯ ದೊಡ್ಡ ತಾಂತ್ರಿಕ ಭಾಗಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ. ಇದಕ್ಕೆ ಧನ್ಯವಾದಗಳು, ನಮ್ಮ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ತಂಡವು ಡೆವಲಪರ್‌ಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುವುದು ಮತ್ತು ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಹಂತಗಳ ಅನುಷ್ಠಾನವನ್ನು ಜಂಟಿಯಾಗಿ ಯೋಜಿಸುವುದು ಸುಲಭವಾಯಿತು, ಜೊತೆಗೆ ಇದಕ್ಕಾಗಿ ಯಾವ ಕಾರ್ಮಿಕ ವೆಚ್ಚಗಳು ಮತ್ತು ಸಂಪನ್ಮೂಲಗಳು (ಮಾನವ ಮತ್ತು ಯಂತ್ರಾಂಶ) ಬೇಕಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ.

ನಮ್ಮ ಕಂಪನಿಯ ಒಳಗೆ, ನಕ್ಷೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಜಿಂಜಾ ಟೆಂಪ್ಲೇಟ್‌ನಿಂದ ಸಾಮಾನ್ಯ HTML ಫೈಲ್‌ನಂತೆ ರಚಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ನಂತರ GitLab ಪುಟಗಳ ಸರ್ವರ್‌ಗೆ ಅಪ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತದೆ. ಸಂಪೂರ್ಣವಾಗಿ ರಚಿಸಲಾದ ನಕ್ಷೆಯ ಉದಾಹರಣೆಯೊಂದಿಗೆ ಸ್ಕ್ರೀನ್‌ಶಾಟ್ ಅನ್ನು ವೀಕ್ಷಿಸಬಹುದು ಲಿಂಕ್.

ಅವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ವಹಿಸುವುದು: ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಸಹಾಯದಿಂದ ವಿಷಯಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇರಿಸುವುದು

ಚಿತ್ರದ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡುವುದರಿಂದ ಅದು ಪೂರ್ಣ ಗಾತ್ರದಲ್ಲಿ ತೆರೆಯುತ್ತದೆ.

ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಹೇಳುವುದಾದರೆ, ತಾಂತ್ರಿಕ ನಕ್ಷೆಯು ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯ ಸಾಮಾನ್ಯೀಕೃತ ಚಿತ್ರವಾಗಿದೆ, ಇದು ವಿಶಿಷ್ಟ ಕ್ರಿಯಾತ್ಮಕತೆಯೊಂದಿಗೆ ಸ್ಪಷ್ಟವಾಗಿ ವರ್ಗೀಕರಿಸಿದ ಬ್ಲಾಕ್ಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ.

ನಮ್ಮ ರಸ್ತೆ ನಕ್ಷೆಯ ರಚನೆ

ನಕ್ಷೆಯು ಹಲವಾರು ಭಾಗಗಳನ್ನು ಒಳಗೊಂಡಿದೆ:

  1. ಶೀರ್ಷಿಕೆ ಪ್ರದೇಶ - ಇಲ್ಲಿ ನಕ್ಷೆಯ ಸಾಮಾನ್ಯ ವಿವರಣೆಯಾಗಿದೆ, ಮೂಲ ಪರಿಕಲ್ಪನೆಗಳನ್ನು ಪರಿಚಯಿಸಲಾಗಿದೆ, ಮುಖ್ಯ ಸಂಪನ್ಮೂಲಗಳು ಮತ್ತು ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯ ಫಲಿತಾಂಶಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ.
  2. ಡ್ಯಾಶ್‌ಬೋರ್ಡ್ - ಇಲ್ಲಿ ನೀವು ವೈಯಕ್ತಿಕ ಉತ್ಪನ್ನಗಳಿಗೆ ಡೇಟಾದ ಪ್ರದರ್ಶನವನ್ನು ನಿಯಂತ್ರಿಸಬಹುದು, ಎಲ್ಲಾ ಉತ್ಪನ್ನಗಳಿಗೆ ಸಾಮಾನ್ಯವಾಗಿ ಅಳವಡಿಸಲಾದ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳ ಸಾರಾಂಶವನ್ನು ಒದಗಿಸಲಾಗಿದೆ.
  3. ತಾಂತ್ರಿಕ ನಕ್ಷೆ - ತಾಂತ್ರಿಕ ಪ್ರಕ್ರಿಯೆಯ ಕೋಷ್ಟಕ ವಿವರಣೆ. ನಕ್ಷೆಯಲ್ಲಿ:
    • ಎಲ್ಲಾ ಹಂತಗಳು, ಹಂತಗಳು ಮತ್ತು ಅವುಗಳ ಸಂಕೇತಗಳನ್ನು ನೀಡಲಾಗಿದೆ;
    • ಹಂತಗಳ ಸಂಕ್ಷಿಪ್ತ ಮತ್ತು ಸಂಪೂರ್ಣ ವಿವರಣೆಯನ್ನು ನೀಡಲಾಗಿದೆ;
    • ಪ್ರತಿ ಹಂತದಲ್ಲಿ ಬಳಸಲಾದ ಇನ್ಪುಟ್ ಸಂಪನ್ಮೂಲಗಳು ಮತ್ತು ಸೇವೆಗಳನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ;
    • ಪ್ರತಿ ಹಂತದ ಫಲಿತಾಂಶಗಳು ಮತ್ತು ಪ್ರತ್ಯೇಕ ಹಂತವನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ;
    • ಪ್ರತಿ ಹಂತ ಮತ್ತು ಹಂತಕ್ಕೆ ಜವಾಬ್ದಾರಿಯ ಪ್ರದೇಶವನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ;
    • ತಾಂತ್ರಿಕ ಸಂಪನ್ಮೂಲಗಳಾದ HDD (SSD), RAM, vCPU, ಮತ್ತು ಈ ಹಂತದಲ್ಲಿ ಕೆಲಸವನ್ನು ಬೆಂಬಲಿಸಲು ಅಗತ್ಯವಾದ ಮಾನವ-ಗಂಟೆಗಳು, ಪ್ರಸ್ತುತ ಕ್ಷಣದಲ್ಲಿ - ವಾಸ್ತವವಾಗಿ ಮತ್ತು ಭವಿಷ್ಯದಲ್ಲಿ - ಯೋಜನೆಯನ್ನು ನಿರ್ಧರಿಸಲಾಗಿದೆ;
    • ಪ್ರತಿ ಉತ್ಪನ್ನಕ್ಕೆ, ಯಾವ ತಾಂತ್ರಿಕ ಹಂತಗಳು ಅಥವಾ ಅದರ ಹಂತಗಳನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ, ಅನುಷ್ಠಾನಕ್ಕೆ ಯೋಜಿಸಲಾಗಿದೆ, ಅಪ್ರಸ್ತುತ ಅಥವಾ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿಲ್ಲ ಎಂದು ಸೂಚಿಸಲಾಗುತ್ತದೆ.

ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಆಧಾರದ ಮೇಲೆ ನಿರ್ಧಾರ ತೆಗೆದುಕೊಳ್ಳುವುದು

ನಕ್ಷೆಯನ್ನು ಪರಿಶೀಲಿಸಿದ ನಂತರ, ಕೆಲವು ಕ್ರಮಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಸಾಧ್ಯವಿದೆ - ಕಂಪನಿಯಲ್ಲಿನ ಉದ್ಯೋಗಿಯ ಪಾತ್ರವನ್ನು ಅವಲಂಬಿಸಿ (ಅಭಿವೃದ್ಧಿ ವ್ಯವಸ್ಥಾಪಕ, ಉತ್ಪನ್ನ ನಿರ್ವಾಹಕ, ಡೆವಲಪರ್ ಅಥವಾ ಪರೀಕ್ಷಕ):

  • ನಿಜವಾದ ಉತ್ಪನ್ನ ಅಥವಾ ಯೋಜನೆಯಲ್ಲಿ ಯಾವ ಹಂತಗಳು ಕಾಣೆಯಾಗಿವೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ ಮತ್ತು ಅವುಗಳ ಅನುಷ್ಠಾನದ ಅಗತ್ಯವನ್ನು ನಿರ್ಣಯಿಸಿ;
  • ವಿವಿಧ ಹಂತಗಳಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದರೆ ಹಲವಾರು ಇಲಾಖೆಗಳ ನಡುವಿನ ಜವಾಬ್ದಾರಿಯ ಕ್ಷೇತ್ರಗಳನ್ನು ಡಿಲಿಮಿಟ್ ಮಾಡಿ;
  • ಹಂತಗಳ ಪ್ರವೇಶ ಮತ್ತು ನಿರ್ಗಮನಗಳಲ್ಲಿ ಒಪ್ಪಂದಗಳನ್ನು ಒಪ್ಪಿಕೊಳ್ಳಿ;
  • ಒಟ್ಟಾರೆ ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ನಿಮ್ಮ ಕೆಲಸದ ಹಂತವನ್ನು ಸಂಯೋಜಿಸಿ;
  • ಪ್ರತಿಯೊಂದು ಹಂತಗಳನ್ನು ಒದಗಿಸುವ ಸಂಪನ್ಮೂಲಗಳ ಅಗತ್ಯವನ್ನು ಹೆಚ್ಚು ನಿಖರವಾಗಿ ನಿರ್ಣಯಿಸಿ.

ಮೇಲಿನ ಎಲ್ಲಾ ಸಾರಾಂಶ

ರೂಟಿಂಗ್ ಬಹುಮುಖ, ವಿಸ್ತರಿಸಬಹುದಾದ ಮತ್ತು ನಿರ್ವಹಿಸಲು ಸುಲಭವಾಗಿದೆ. ಕಟ್ಟುನಿಟ್ಟಾದ ಶೈಕ್ಷಣಿಕ IDEF0 ಮಾದರಿಗಿಂತ ಈ ರೂಪದಲ್ಲಿ ಪ್ರಕ್ರಿಯೆಗಳ ವಿವರಣೆಯನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವುದು ಮತ್ತು ನಿರ್ವಹಿಸುವುದು ತುಂಬಾ ಸುಲಭ. ಹೆಚ್ಚುವರಿಯಾಗಿ, ಕೋಷ್ಟಕ ವಿವರಣೆಯು ಕ್ರಿಯಾತ್ಮಕ ಮಾದರಿಗಿಂತ ಸರಳವಾಗಿದೆ, ಹೆಚ್ಚು ಪರಿಚಿತವಾಗಿದೆ ಮತ್ತು ಉತ್ತಮ ರಚನೆಯಾಗಿದೆ.

ಹಂತಗಳ ತಾಂತ್ರಿಕ ಅನುಷ್ಠಾನಕ್ಕಾಗಿ, ನಾವು ವಿಶೇಷ ಆಂತರಿಕ ಉಪಕರಣವನ್ನು ಹೊಂದಿದ್ದೇವೆ CrossBuilder - CI ವ್ಯವಸ್ಥೆಗಳು, ಸೇವೆಗಳು ಮತ್ತು ಮೂಲಸೌಕರ್ಯಗಳ ನಡುವಿನ ಲೇಯರ್ ಉಪಕರಣ. ಡೆವಲಪರ್ ತನ್ನ ಬೈಕು ಕತ್ತರಿಸುವ ಅಗತ್ಯವಿಲ್ಲ: ನಮ್ಮ CI ವ್ಯವಸ್ಥೆಯಲ್ಲಿ, ಕ್ರಾಸ್‌ಬಿಲ್ಡರ್ ಉಪಕರಣದ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳಲ್ಲಿ ಒಂದನ್ನು (ಟಾಸ್ಕ್ ಎಂದು ಕರೆಯಲ್ಪಡುವ) ಚಲಾಯಿಸಲು ಸಾಕು, ಅದು ನಮ್ಮ ಮೂಲಸೌಕರ್ಯದ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಗಣನೆಗೆ ತೆಗೆದುಕೊಂಡು ಅದನ್ನು ಸರಿಯಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ. .

ಫಲಿತಾಂಶಗಳು

ಲೇಖನವು ಸಾಕಷ್ಟು ಉದ್ದವಾಗಿದೆ, ಆದರೆ ಸಂಕೀರ್ಣ ಪ್ರಕ್ರಿಯೆಗಳ ಮಾದರಿಯನ್ನು ವಿವರಿಸುವಾಗ ಇದು ಅನಿವಾರ್ಯವಾಗಿದೆ. ಕೊನೆಯಲ್ಲಿ, ನಮ್ಮ ಮುಖ್ಯ ಆಲೋಚನೆಗಳನ್ನು ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಸರಿಪಡಿಸಲು ನಾನು ಬಯಸುತ್ತೇನೆ:

  • ನಮ್ಮ ಕಂಪನಿಯಲ್ಲಿ DevOps ಕಲ್ಪನೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಗುರಿಯು ಕಂಪನಿಯ ಉತ್ಪನ್ನಗಳ ಉತ್ಪಾದನೆ ಮತ್ತು ನಿರ್ವಹಣೆಯ ವೆಚ್ಚವನ್ನು ಪರಿಮಾಣಾತ್ಮಕವಾಗಿ (ಮಾನವ-ಗಂಟೆಗಳು ಅಥವಾ ಯಂತ್ರದ ಗಂಟೆಗಳು, vCPU, RAM, ಡಿಸ್ಕ್) ಸ್ಥಿರವಾಗಿ ಕಡಿಮೆ ಮಾಡುವುದು.
  • ಅಭಿವೃದ್ಧಿಯ ಒಟ್ಟಾರೆ ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮಾರ್ಗವೆಂದರೆ ವಿಶಿಷ್ಟವಾದ ಸರಣಿ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುವ ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು: ತಾಂತ್ರಿಕ ಪ್ರಕ್ರಿಯೆಯ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳು.
  • ವಿಶಿಷ್ಟವಾದ ಕಾರ್ಯವು ಒಂದು ಕಾರ್ಯವಾಗಿದ್ದು, ಅದರ ಪರಿಹಾರವು ಸಂಪೂರ್ಣವಾಗಿ ಅಥವಾ ಭಾಗಶಃ ಸ್ವಯಂಚಾಲಿತವಾಗಿರುತ್ತದೆ, ಪ್ರದರ್ಶಕರಿಗೆ ತೊಂದರೆಗಳನ್ನು ಉಂಟುಮಾಡುವುದಿಲ್ಲ ಮತ್ತು ಗಮನಾರ್ಹ ಕಾರ್ಮಿಕ ವೆಚ್ಚಗಳ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ.
  • ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯು ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿದೆ, ಹಂತಗಳನ್ನು ಅವಿಭಾಜ್ಯ ಹಂತಗಳಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ, ಇದು ವಿಭಿನ್ನ ಪ್ರಮಾಣದ ಮತ್ತು ವ್ಯಾಪ್ತಿಯ ವಿಶಿಷ್ಟ ಕಾರ್ಯಗಳಾಗಿವೆ.
  • ವಿಭಿನ್ನ ವಿಶಿಷ್ಟ ಕಾರ್ಯಗಳಿಂದ, ನಾವು ಸಂಕೀರ್ಣವಾದ ತಾಂತ್ರಿಕ ಸರಪಳಿಗಳು ಮತ್ತು ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯ ಬಹು-ಹಂತದ ಮಾದರಿಗಳಿಗೆ ಬಂದಿದ್ದೇವೆ, ಇದನ್ನು ಕ್ರಿಯಾತ್ಮಕ IDEF0 ಮಾದರಿ ಅಥವಾ ಸರಳವಾದ ತಾಂತ್ರಿಕ ನಕ್ಷೆಯಿಂದ ವಿವರಿಸಬಹುದು.
  • ತಾಂತ್ರಿಕ ನಕ್ಷೆಯು ಉತ್ಪಾದನಾ ಪ್ರಕ್ರಿಯೆಯ ಹಂತಗಳು ಮತ್ತು ಹಂತಗಳ ಕೋಷ್ಟಕ ಪ್ರಾತಿನಿಧ್ಯವಾಗಿದೆ. ಪ್ರಮುಖ ವಿಷಯ: ನಕ್ಷೆಯು ಸಂಪೂರ್ಣ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನೋಡಲು ಅನುಮತಿಸುತ್ತದೆ, ಅವುಗಳನ್ನು ವಿವರಿಸುವ ಸಾಧ್ಯತೆಯೊಂದಿಗೆ ದೊಡ್ಡ ತುಣುಕುಗಳಲ್ಲಿ.
  • ತಾಂತ್ರಿಕ ನಕ್ಷೆಯ ಆಧಾರದ ಮೇಲೆ, ನಿರ್ದಿಷ್ಟ ಉತ್ಪನ್ನದಲ್ಲಿ ಹಂತಗಳನ್ನು ಪರಿಚಯಿಸುವ ಅಗತ್ಯವನ್ನು ನಿರ್ಣಯಿಸುವುದು, ಜವಾಬ್ದಾರಿಯ ಕ್ಷೇತ್ರಗಳನ್ನು ವಿವರಿಸುವುದು, ಹಂತಗಳ ಒಳಹರಿವು ಮತ್ತು ಔಟ್‌ಪುಟ್‌ಗಳಲ್ಲಿ ಒಪ್ಪಂದಗಳನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುವುದು ಮತ್ತು ಸಂಪನ್ಮೂಲಗಳ ಅಗತ್ಯವನ್ನು ಹೆಚ್ಚು ನಿಖರವಾಗಿ ನಿರ್ಣಯಿಸುವುದು ಸಾಧ್ಯ.

ಮುಂದಿನ ಲೇಖನಗಳಲ್ಲಿ, ನಮ್ಮ ನಕ್ಷೆಯಲ್ಲಿ ಕೆಲವು ತಾಂತ್ರಿಕ ಹಂತಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಯಾವ ತಾಂತ್ರಿಕ ಸಾಧನಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ನಾವು ಹೆಚ್ಚು ವಿವರವಾಗಿ ವಿವರಿಸುತ್ತೇವೆ.

ಲೇಖನ ಲೇಖಕರು:

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ