1502 lines
58 KiB
HTML
1502 lines
58 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="fa" dir="rtl">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>آموزش جامع کانبان | راهنمای مدیریت بصری وظایف</title>
|
||
<style>
|
||
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800&display=swap');
|
||
:root {
|
||
--primary: #1a365d;
|
||
--primary-light: #2c5282;
|
||
--accent: #c9a961;
|
||
--accent-dark: #a8893f;
|
||
--bg: #faf9f6;
|
||
--card-bg: #ffffff;
|
||
--text: #1a202c;
|
||
--text-muted: #4a5568;
|
||
--border: #e2e8f0;
|
||
--success: #38a169;
|
||
--danger: #e53e3e;
|
||
--warning: #dd6b20;
|
||
--shadow: 0 4px 6px rgba(0,0,0,0.05), 0 10px 30px rgba(26,54,93,0.08);
|
||
}
|
||
* { box-sizing: border-box; margin: 0; padding: 0; }
|
||
body {
|
||
font-family: 'Vazirmatn', Tahoma, sans-serif;
|
||
background: var(--bg);
|
||
color: var(--text);
|
||
line-height: 1.9;
|
||
font-size: 15px;
|
||
padding: 30px 15px;
|
||
}
|
||
.document-container {
|
||
max-width: 950px;
|
||
margin: 0 auto;
|
||
background: var(--card-bg);
|
||
box-shadow: var(--shadow);
|
||
border-radius: 12px;
|
||
overflow: hidden;
|
||
}
|
||
.document-header {
|
||
background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
|
||
color: white;
|
||
padding: 50px 40px 40px;
|
||
position: relative;
|
||
border-bottom: 4px solid var(--accent);
|
||
}
|
||
.document-header::before {
|
||
content: '';
|
||
position: absolute;
|
||
top: 0; right: 0;
|
||
width: 200px; height: 200px;
|
||
background: radial-gradient(circle, rgba(201,169,97,0.15) 0%, transparent 70%);
|
||
border-radius: 50%;
|
||
transform: translate(50%, -50%);
|
||
}
|
||
.header-top {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
margin-bottom: 30px;
|
||
position: relative;
|
||
z-index: 1;
|
||
}
|
||
.company-badge {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 12px;
|
||
}
|
||
.company-logo {
|
||
width: 60px; height: 60px;
|
||
background: var(--accent);
|
||
border-radius: 12px;
|
||
box-shadow: 0 4px 12px rgba(0,0,0,0.2);
|
||
}
|
||
.doc-meta {
|
||
text-align: left;
|
||
font-size: 12px;
|
||
opacity: 0.9;
|
||
}
|
||
.doc-meta div { margin-bottom: 3px; }
|
||
.document-title {
|
||
text-align: center;
|
||
position: relative;
|
||
z-index: 1;
|
||
padding: 20px 0;
|
||
}
|
||
.document-title .label {
|
||
display: inline-block;
|
||
background: rgba(201,169,97,0.2);
|
||
color: var(--accent);
|
||
padding: 4px 16px;
|
||
border-radius: 20px;
|
||
font-size: 12px;
|
||
font-weight: 600;
|
||
margin-bottom: 15px;
|
||
border: 1px solid rgba(201,169,97,0.4);
|
||
}
|
||
.document-title h1 {
|
||
font-size: 28px;
|
||
font-weight: 800;
|
||
margin-bottom: 10px;
|
||
letter-spacing: -0.5px;
|
||
}
|
||
.document-title h2 {
|
||
font-size: 16px;
|
||
font-weight: 400;
|
||
opacity: 0.9;
|
||
}
|
||
.document-body {
|
||
padding: 40px;
|
||
}
|
||
.intro-text {
|
||
background: linear-gradient(to left, #f7fafc, #edf2f7);
|
||
border-right: 4px solid var(--accent);
|
||
padding: 20px 25px;
|
||
border-radius: 8px;
|
||
margin-bottom: 35px;
|
||
font-size: 14px;
|
||
color: var(--text-muted);
|
||
}
|
||
.section {
|
||
margin-bottom: 40px;
|
||
page-break-inside: avoid;
|
||
}
|
||
.section-header {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 15px;
|
||
padding-bottom: 12px;
|
||
border-bottom: 2px solid var(--border);
|
||
margin-bottom: 20px;
|
||
}
|
||
.section-number {
|
||
width: 50px; height: 50px;
|
||
background: linear-gradient(135deg, var(--primary), var(--primary-light));
|
||
color: white;
|
||
border-radius: 12px;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
font-weight: 800;
|
||
font-size: 20px;
|
||
flex-shrink: 0;
|
||
box-shadow: 0 4px 10px rgba(26,54,93,0.2);
|
||
}
|
||
.section-title { flex: 1; }
|
||
.section-title h3 {
|
||
font-size: 19px;
|
||
font-weight: 700;
|
||
color: var(--primary);
|
||
margin-bottom: 2px;
|
||
}
|
||
.section-title .subtitle {
|
||
font-size: 12px;
|
||
color: var(--text-muted);
|
||
}
|
||
.section-content {
|
||
padding-right: 10px;
|
||
}
|
||
.section-content p {
|
||
margin-bottom: 12px;
|
||
text-align: justify;
|
||
text-indent: 20px;
|
||
}
|
||
.section-content p.no-indent { text-indent: 0; }
|
||
.highlight-box {
|
||
background: linear-gradient(to left, #fffaf0, #fef5e7);
|
||
border: 1px solid #f6e05e;
|
||
border-right: 4px solid var(--accent);
|
||
padding: 18px 22px;
|
||
border-radius: 8px;
|
||
margin: 20px 0;
|
||
font-size: 14px;
|
||
}
|
||
.highlight-box strong { color: var(--accent-dark); }
|
||
.info-box {
|
||
background: linear-gradient(to left, #ebf8ff, #e6f6ff);
|
||
border: 1px solid #90cdf4;
|
||
border-right: 4px solid var(--primary-light);
|
||
padding: 18px 22px;
|
||
border-radius: 8px;
|
||
margin: 20px 0;
|
||
font-size: 14px;
|
||
}
|
||
.success-box {
|
||
background: linear-gradient(to left, #f0fff4, #e6fffa);
|
||
border: 1px solid #9ae6b4;
|
||
border-right: 4px solid var(--success);
|
||
padding: 18px 22px;
|
||
border-radius: 8px;
|
||
margin: 20px 0;
|
||
font-size: 14px;
|
||
}
|
||
.warning-box {
|
||
background: linear-gradient(to left, #fffaf0, #fef5e7);
|
||
border: 1px solid #fbd38d;
|
||
border-right: 4px solid var(--warning);
|
||
padding: 18px 22px;
|
||
border-radius: 8px;
|
||
margin: 20px 0;
|
||
font-size: 14px;
|
||
}
|
||
.styled-table {
|
||
width: 100%;
|
||
border-collapse: collapse;
|
||
margin: 20px 0;
|
||
background: white;
|
||
border-radius: 8px;
|
||
overflow: hidden;
|
||
box-shadow: 0 2px 8px rgba(0,0,0,0.05);
|
||
}
|
||
.styled-table thead {
|
||
background: linear-gradient(135deg, var(--primary), var(--primary-light));
|
||
color: white;
|
||
}
|
||
.styled-table th {
|
||
padding: 14px 16px;
|
||
text-align: right;
|
||
font-weight: 600;
|
||
font-size: 13px;
|
||
}
|
||
.styled-table td {
|
||
padding: 13px 16px;
|
||
border-bottom: 1px solid var(--border);
|
||
font-size: 13px;
|
||
}
|
||
.styled-table tbody tr:last-child td { border-bottom: none; }
|
||
.styled-table tbody tr:nth-child(even) { background: #f8fafc; }
|
||
.styled-table .highlight-row {
|
||
background: #fffaf0 !important;
|
||
font-weight: 600;
|
||
}
|
||
.comparison-grid {
|
||
display: grid;
|
||
grid-template-columns: 1fr 1fr;
|
||
gap: 20px;
|
||
margin: 25px 0;
|
||
}
|
||
.comparison-card {
|
||
background: #f8fafc;
|
||
border: 2px solid var(--border);
|
||
border-radius: 10px;
|
||
padding: 20px;
|
||
position: relative;
|
||
}
|
||
.comparison-card.recommended {
|
||
border-color: var(--success);
|
||
background: linear-gradient(to left, #f0fff4, #e6fffa);
|
||
}
|
||
.comparison-card .card-badge {
|
||
position: absolute;
|
||
top: -10px;
|
||
right: 20px;
|
||
background: var(--success);
|
||
color: white;
|
||
padding: 3px 12px;
|
||
border-radius: 15px;
|
||
font-size: 11px;
|
||
font-weight: 600;
|
||
}
|
||
.comparison-card h4 {
|
||
font-size: 16px;
|
||
font-weight: 700;
|
||
color: var(--primary);
|
||
margin-bottom: 15px;
|
||
padding-bottom: 10px;
|
||
border-bottom: 2px solid var(--border);
|
||
}
|
||
.comparison-card.recommended h4 { border-bottom-color: var(--success); }
|
||
.comparison-card ul { list-style: none; padding: 0; }
|
||
.comparison-card ul li {
|
||
padding: 8px 0;
|
||
border-bottom: 1px solid var(--border);
|
||
font-size: 13px;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
}
|
||
.comparison-card ul li:last-child { border-bottom: none; }
|
||
.comparison-card ul li .value { font-weight: 600; color: var(--primary); }
|
||
.quote-box {
|
||
background: linear-gradient(135deg, #f7fafc, #edf2f7);
|
||
border-right: 4px solid var(--accent);
|
||
padding: 20px 25px;
|
||
border-radius: 8px;
|
||
margin: 20px 0;
|
||
position: relative;
|
||
}
|
||
.quote-box::before {
|
||
content: '"';
|
||
position: absolute;
|
||
top: -10px;
|
||
right: 15px;
|
||
font-size: 60px;
|
||
color: var(--accent);
|
||
opacity: 0.3;
|
||
font-family: Georgia, serif;
|
||
}
|
||
.quote-box p {
|
||
font-style: italic;
|
||
color: var(--text-muted);
|
||
margin-bottom: 10px;
|
||
text-indent: 0 !important;
|
||
}
|
||
.quote-box .source {
|
||
font-size: 12px;
|
||
color: var(--text-muted);
|
||
text-align: left;
|
||
font-style: normal;
|
||
}
|
||
.stats-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, 1fr);
|
||
gap: 15px;
|
||
margin: 25px 0;
|
||
}
|
||
.stat-card {
|
||
background: linear-gradient(135deg, var(--primary), var(--primary-light));
|
||
color: white;
|
||
padding: 20px;
|
||
border-radius: 10px;
|
||
text-align: center;
|
||
box-shadow: 0 4px 12px rgba(26,54,93,0.2);
|
||
}
|
||
.stat-card .stat-value {
|
||
font-size: 24px;
|
||
font-weight: 800;
|
||
margin-bottom: 5px;
|
||
color: var(--accent);
|
||
line-height: 1.3;
|
||
}
|
||
.stat-card .stat-label { font-size: 12px; opacity: 0.9; }
|
||
.timeline {
|
||
position: relative;
|
||
padding: 20px 0;
|
||
margin: 25px 0;
|
||
}
|
||
.timeline::before {
|
||
content: '';
|
||
position: absolute;
|
||
right: 50%;
|
||
top: 0;
|
||
bottom: 0;
|
||
width: 3px;
|
||
background: var(--border);
|
||
transform: translateX(50%);
|
||
}
|
||
.timeline-item {
|
||
display: flex;
|
||
margin-bottom: 20px;
|
||
position: relative;
|
||
}
|
||
.timeline-item:nth-child(odd) { flex-direction: row-reverse; }
|
||
.timeline-content {
|
||
width: 45%;
|
||
background: #f8fafc;
|
||
border: 1px solid var(--border);
|
||
border-radius: 8px;
|
||
padding: 15px;
|
||
position: relative;
|
||
}
|
||
.timeline-item:nth-child(odd) .timeline-content { margin-left: 5%; }
|
||
.timeline-item:nth-child(even) .timeline-content { margin-right: 5%; }
|
||
.timeline-dot {
|
||
position: absolute;
|
||
right: 50%;
|
||
top: 20px;
|
||
width: 16px;
|
||
height: 16px;
|
||
background: var(--accent);
|
||
border: 3px solid white;
|
||
border-radius: 50%;
|
||
transform: translateX(50%);
|
||
box-shadow: 0 2px 6px rgba(0,0,0,0.2);
|
||
z-index: 1;
|
||
}
|
||
.timeline-content h5 {
|
||
font-size: 14px;
|
||
font-weight: 700;
|
||
color: var(--primary);
|
||
margin-bottom: 8px;
|
||
}
|
||
.timeline-content p {
|
||
font-size: 12px;
|
||
color: var(--text-muted);
|
||
text-indent: 0 !important;
|
||
margin-bottom: 0 !important;
|
||
}
|
||
.reference-list {
|
||
list-style: none;
|
||
padding: 0;
|
||
margin: 20px 0;
|
||
}
|
||
.reference-list li {
|
||
background: #f8fafc;
|
||
border-right: 3px solid var(--primary-light);
|
||
padding: 15px 20px;
|
||
margin-bottom: 10px;
|
||
border-radius: 6px;
|
||
font-size: 13px;
|
||
}
|
||
.reference-list li strong {
|
||
color: var(--primary);
|
||
display: block;
|
||
margin-bottom: 5px;
|
||
}
|
||
.reference-list li .ref-source {
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
margin-top: 5px;
|
||
}
|
||
.conclusion-box {
|
||
background: linear-gradient(135deg, var(--primary), var(--primary-light));
|
||
color: white;
|
||
padding: 30px;
|
||
border-radius: 12px;
|
||
margin: 30px 0;
|
||
text-align: center;
|
||
box-shadow: 0 8px 20px rgba(26,54,93,0.3);
|
||
}
|
||
.conclusion-box h3 {
|
||
font-size: 22px;
|
||
font-weight: 800;
|
||
margin-bottom: 15px;
|
||
color: var(--accent);
|
||
}
|
||
.conclusion-box p {
|
||
font-size: 14px;
|
||
line-height: 1.8;
|
||
text-indent: 0 !important;
|
||
margin-bottom: 15px;
|
||
}
|
||
.conclusion-box .highlight {
|
||
background: rgba(201,169,97,0.2);
|
||
padding: 15px 20px;
|
||
border-radius: 8px;
|
||
margin-top: 20px;
|
||
border: 1px solid rgba(201,169,97,0.4);
|
||
}
|
||
.document-footer {
|
||
background: var(--primary);
|
||
color: white;
|
||
padding: 25px 40px;
|
||
text-align: center;
|
||
font-size: 12px;
|
||
margin-top: 40px;
|
||
}
|
||
.document-footer .footer-brand {
|
||
font-weight: 700;
|
||
color: var(--accent);
|
||
margin-bottom: 5px;
|
||
font-size: 14px;
|
||
}
|
||
.footer-divider {
|
||
width: 60px;
|
||
height: 2px;
|
||
background: var(--accent);
|
||
margin: 10px auto;
|
||
}
|
||
.page-info {
|
||
text-align: center;
|
||
padding: 15px;
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
border-top: 1px solid var(--border);
|
||
margin-top: 30px;
|
||
}
|
||
.kanban-board-demo {
|
||
background: linear-gradient(to left, #f7fafc, #edf2f7);
|
||
border: 2px solid var(--border);
|
||
border-radius: 12px;
|
||
padding: 25px;
|
||
margin: 25px 0;
|
||
}
|
||
.kanban-board-demo h4 {
|
||
text-align: center;
|
||
color: var(--primary);
|
||
margin-bottom: 20px;
|
||
font-size: 16px;
|
||
}
|
||
.kanban-columns {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, 1fr);
|
||
gap: 12px;
|
||
}
|
||
.kanban-column {
|
||
background: white;
|
||
border-radius: 8px;
|
||
padding: 12px;
|
||
border-top: 4px solid var(--primary-light);
|
||
box-shadow: 0 2px 6px rgba(0,0,0,0.05);
|
||
}
|
||
.kanban-column.col-todo { border-top-color: #718096; }
|
||
.kanban-column.col-doing { border-top-color: #3182ce; }
|
||
.kanban-column.col-review { border-top-color: #dd6b20; }
|
||
.kanban-column.col-done { border-top-color: #38a169; }
|
||
.kanban-column-header {
|
||
font-weight: 700;
|
||
font-size: 13px;
|
||
color: var(--primary);
|
||
margin-bottom: 10px;
|
||
padding-bottom: 8px;
|
||
border-bottom: 1px solid var(--border);
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
}
|
||
.kanban-column-header .count {
|
||
background: var(--primary);
|
||
color: white;
|
||
padding: 2px 8px;
|
||
border-radius: 10px;
|
||
font-size: 11px;
|
||
}
|
||
.kanban-card {
|
||
background: #faf9f6;
|
||
border: 1px solid var(--border);
|
||
border-radius: 6px;
|
||
padding: 10px;
|
||
margin-bottom: 8px;
|
||
font-size: 12px;
|
||
}
|
||
.kanban-card .card-title {
|
||
font-weight: 600;
|
||
color: var(--text);
|
||
margin-bottom: 5px;
|
||
}
|
||
.kanban-card .card-meta {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
font-size: 10px;
|
||
color: var(--text-muted);
|
||
}
|
||
.kanban-card .card-tag {
|
||
display: inline-block;
|
||
background: var(--accent);
|
||
color: #1a202c;
|
||
padding: 2px 8px;
|
||
border-radius: 10px;
|
||
font-size: 10px;
|
||
margin-top: 5px;
|
||
}
|
||
.kanban-card.urgent { border-right: 3px solid var(--danger); }
|
||
.kanban-card.normal { border-right: 3px solid var(--primary-light); }
|
||
.principle-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, 1fr);
|
||
gap: 15px;
|
||
margin: 25px 0;
|
||
}
|
||
.principle-card {
|
||
background: #f8fafc;
|
||
border: 1px solid var(--border);
|
||
border-right: 4px solid var(--primary-light);
|
||
padding: 18px;
|
||
border-radius: 8px;
|
||
}
|
||
.principle-card .principle-icon {
|
||
font-size: 28px;
|
||
margin-bottom: 10px;
|
||
}
|
||
.principle-card h5 {
|
||
font-size: 15px;
|
||
font-weight: 700;
|
||
color: var(--primary);
|
||
margin-bottom: 8px;
|
||
}
|
||
.principle-card p {
|
||
font-size: 13px;
|
||
color: var(--text-muted);
|
||
text-indent: 0 !important;
|
||
margin-bottom: 0 !important;
|
||
}
|
||
.metric-card {
|
||
background: linear-gradient(135deg, #f0fff4, #e6fffa);
|
||
border: 1px solid #9ae6b4;
|
||
border-radius: 10px;
|
||
padding: 20px;
|
||
margin-bottom: 12px;
|
||
display: flex;
|
||
gap: 15px;
|
||
align-items: flex-start;
|
||
}
|
||
.metric-card .metric-icon {
|
||
font-size: 32px;
|
||
flex-shrink: 0;
|
||
margin-top: 3px;
|
||
}
|
||
.metric-card .metric-body h5 {
|
||
font-size: 15px;
|
||
font-weight: 700;
|
||
color: var(--primary);
|
||
margin-bottom: 6px;
|
||
}
|
||
.metric-card .metric-body p {
|
||
font-size: 13px;
|
||
color: var(--text-muted);
|
||
text-indent: 0 !important;
|
||
margin-bottom: 0 !important;
|
||
}
|
||
.metric-card .metric-body .formula {
|
||
background: #1a202c;
|
||
color: #e2e8f0;
|
||
padding: 8px 12px;
|
||
border-radius: 6px;
|
||
margin-top: 10px;
|
||
font-family: 'Consolas', monospace;
|
||
font-size: 12px;
|
||
direction: ltr;
|
||
text-align: center;
|
||
}
|
||
.toc {
|
||
background: #f8fafc;
|
||
border: 1px solid var(--border);
|
||
border-radius: 10px;
|
||
padding: 25px 30px;
|
||
margin-bottom: 35px;
|
||
}
|
||
.toc h4 {
|
||
font-size: 16px;
|
||
font-weight: 700;
|
||
color: var(--primary);
|
||
margin-bottom: 15px;
|
||
padding-bottom: 10px;
|
||
border-bottom: 2px solid var(--accent);
|
||
}
|
||
.toc ol { padding-right: 20px; }
|
||
.toc ol li {
|
||
padding: 6px 0;
|
||
font-size: 14px;
|
||
color: var(--text-muted);
|
||
}
|
||
.toc ol li strong { color: var(--primary); }
|
||
@media print {
|
||
body { background: white; padding: 0; }
|
||
.document-container { box-shadow: none; border-radius: 0; }
|
||
.section { page-break-inside: avoid; }
|
||
}
|
||
@media (max-width: 768px) {
|
||
.document-body { padding: 25px 20px; }
|
||
.document-header { padding: 30px 20px; }
|
||
.comparison-grid { grid-template-columns: 1fr; }
|
||
.stats-grid { grid-template-columns: 1fr; }
|
||
.principle-grid { grid-template-columns: 1fr; }
|
||
.kanban-columns { grid-template-columns: 1fr; }
|
||
.header-top { flex-direction: column; gap: 15px; }
|
||
.doc-meta { text-align: center; }
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div class="document-container">
|
||
|
||
<!-- ═══════════════ HEADER ═══════════════ -->
|
||
<header class="document-header">
|
||
<div class="header-top">
|
||
<div class="company-badge">
|
||
<div class="company-logo"></div>
|
||
</div>
|
||
<div class="doc-meta">
|
||
<div>شماره مستند: EDU-KAN-1405-003</div>
|
||
<div>نسخه: ۱.۰.۰</div>
|
||
<div>تاریخ تهیه: یکشنبه ۲۲ شهریور ۱۴۰۵ (۱۳ سپتامبر ۲۰۲۶)</div>
|
||
<div>ساعت: ۱۱:۰۰</div>
|
||
<div>طبقهبندی: عمومی - آموزشی</div>
|
||
</div>
|
||
</div>
|
||
<div class="document-title">
|
||
<span class="label">EDUCATIONAL GUIDE</span>
|
||
<h1>آموزش جامع متدولوژی کانبان</h1>
|
||
<h2>راهنمای کامل مدیریت بصری وظایف با بردهای کانبان</h2>
|
||
</div>
|
||
</header>
|
||
|
||
<!-- ═══════════════ BODY ═══════════════ -->
|
||
<div class="document-body">
|
||
|
||
<div class="intro-text">
|
||
<strong>مخاطبان مستند:</strong> مدیران پروژه، اعضای تیمهای توسعه، سرپرستان فنی، دانشجویان مهندسی نرمافزار و هر فردی که به دنبال راهکاری عملی برای مدیریت بصری کارهاست<br>
|
||
این مستند آموزشی، از مفاهیم پایهای کانبان شروع کرده و تا پیادهسازی عملی بردهای کانبان در محیطهای واقعی پیش میرود. هدف، ارائه درکی عمیق از فلسفه کانبان و توانمندسازی خواننده برای استفاده مؤثر از این متدولوژی در پروژههای شخصی و سازمانی است.
|
||
</div>
|
||
|
||
<!-- فهرست مطالب -->
|
||
<div class="toc">
|
||
<h4>📑 فهرست مطالب</h4>
|
||
<ol>
|
||
<li><strong>کانبان چیست؟ تاریخچه و ریشهها</strong></li>
|
||
<li><strong>فلسفه و اصول بنیادین کانبان</strong></li>
|
||
<li><strong>اجزای اصلی بردهای کانبان</strong></li>
|
||
<li><strong>ساختار استاندارد یک برد کانبان</strong></li>
|
||
<li><strong>نحوه استفاده عملی از بردها برای مدیریت وظایف</strong></li>
|
||
<li><strong>بهترین روشها (Best Practices)</strong></li>
|
||
<li><strong>اشتباهات رایج و راهحلها</strong></li>
|
||
<li><strong>معیارهای اندازهگیری عملکرد</strong></li>
|
||
<li><strong>مثالهای کاربردی در حوزههای مختلف</strong></li>
|
||
<li><strong>جمعبندی و گامهای بعدی</strong></li>
|
||
</ol>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۱: تاریخچه ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۱</div>
|
||
<div class="section-title">
|
||
<h3>کانبان چیست؟ تاریخچه و ریشهها</h3>
|
||
<div class="subtitle">What is Kanban? History & Origins</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>کانبان (Kanban) یک واژه ژاپنی به معنای «تابلوی بصری» یا «کارت بصری» است. این متدولوژی در اصل در دهه ۱۹۴۰ توسط <strong>تایچی اوهنو (Taiichi Ohno)</strong>، مهندس ارشد شرکت تویوتا، برای بهینهسازی فرآیند تولید خودرو ابداع شد. هدف اصلی، ایجاد یک سیستم «تولید بههنگام» (Just-In-Time) بود که در آن، هر قطعه دقیقاً در زمان مورد نیاز تولید میشد و از انباشت موجودی اضافی جلوگیری میگردید.</p>
|
||
|
||
<div class="quote-box">
|
||
<p>کانبان یک سیستم کنترل بصری است که به ما امکان میدهد در هر لحظه بدانیم چه چیزی باید تولید شود، چه زمانی و به چه مقدار. این سیستم، جریان کار را شفاف و قابل مدیریت میسازد.</p>
|
||
<div class="source">— تایچی اوهنو، بنیانگذار سیستم تولید تویوتا (TPS)</div>
|
||
</div>
|
||
|
||
<h4 style="margin-top: 25px; color: var(--primary); font-size: 16px;">سیر تکاملی کانبان:</h4>
|
||
|
||
<div class="timeline">
|
||
<div class="timeline-item">
|
||
<div class="timeline-dot"></div>
|
||
<div class="timeline-content">
|
||
<h5>۱۹۴۰ - تولد در تویوتا</h5>
|
||
<p>تایچی اوهنو سیستم کانبان را در خط تولید تویوتا پیادهسازی کرد. کارتهای فیزیکی برای ردیابی قطعات بین ایستگاههای کاری استفاده میشدند.</p>
|
||
</div>
|
||
</div>
|
||
<div class="timeline-item">
|
||
<div class="timeline-dot"></div>
|
||
<div class="timeline-content">
|
||
<h5>۱۹۸۰ - گسترش جهانی</h5>
|
||
<p>با انتشار کتاب «سیستم تولید تویوتا»، کانبان به عنوان یکی از ارکان اصلی Lean Manufacturing در سطح جهانی شناخته شد.</p>
|
||
</div>
|
||
</div>
|
||
<div class="timeline-item">
|
||
<div class="timeline-dot"></div>
|
||
<div class="timeline-content">
|
||
<h5>۲۰۰۴ - ورود به نرمافزار</h5>
|
||
<p>دیوید جی. اندرسون (David J. Anderson) برای اولین بار کانبان را به صنعت توسعه نرمافزار معرفی کرد و کتاب «Kanban» را منتشر نمود.</p>
|
||
</div>
|
||
</div>
|
||
<div class="timeline-item">
|
||
<div class="timeline-dot"></div>
|
||
<div class="timeline-content">
|
||
<h5>۲۰۱۰ به بعد - عصر دیجیتال</h5>
|
||
<p>ابزارهای دیجیتال کانبان مانند Trello، Jira و Azure DevOps، این متدولوژی را به میلیونها تیم در سراسر جهان رساندند.</p>
|
||
</div>
|
||
</div>
|
||
<div class="timeline-item">
|
||
<div class="timeline-dot"></div>
|
||
<div class="timeline-content">
|
||
<h5>۲۰۲۶ - کانبان مدرن</h5>
|
||
<p>امروزه کانبان فراتر از توسعه نرمافزار رفته و در بازاریابی، منابع انسانی، آموزش، بهداشت و حتی مدیریت زندگی شخصی کاربرد دارد.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="highlight-box">
|
||
<strong>💡 نکته کلیدی:</strong> کانبان یک «متدولوژی» است، نه یک «فریمورک». این یعنی کانبان به شما میگوید «چه کاری انجام دهید» (مدیریت بصری جریان کار)، اما «چگونه انجام دهید» را به خودتان میسپارد. این انعطافپذیری، دلیل اصلی موفقیت جهانی کانبان است.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۲: اصول ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۲</div>
|
||
<div class="section-title">
|
||
<h3>فلسفه و اصول بنیادین کانبان</h3>
|
||
<div class="subtitle">Philosophy & Core Principles</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>کانبان بر پایه شش اصل بنیادین استوار است. درک عمیق این اصول، کلید موفقیت در پیادهسازی کانبان است. بدون رعایت این اصول، برد کانبان تنها به یک «تابلوی زیبا» تبدیل میشود که هیچ ارزشی خلق نمیکند.</p>
|
||
|
||
<div class="principle-grid">
|
||
<div class="principle-card">
|
||
<div class="principle-icon">👁️</div>
|
||
<h5>۱. شفافسازی فرآیند فعلی</h5>
|
||
<p>قبل از هر تغییری، باید فرآیند فعلی کار را بهصورت بصری روی برد نمایش دهید. این شفافیت، پایه و اساس تمام بهبودهای بعدی است.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">🎯</div>
|
||
<h5>۲. توافق بر تغییرات تدریجی</h5>
|
||
<p>کانبان به دنبال انقلاب نیست، بلکه به دنبال تکامل است. تغییرات کوچک، مستمر و تدریجی، پایدارتر از تغییرات ناگهانی و بزرگ هستند.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">🔄</div>
|
||
<h5>۳. احترام به فرآیند موجود</h5>
|
||
<p>نقشها، مسئولیتها و فرآیندهای فعلی را محترم بشمارید. کانبان با تغییر ناگهانی ساختار سازمانی مخالفت میکند.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">👥</div>
|
||
<h5>۴. تشویق رهبری در همه سطوح</h5>
|
||
<p>هر عضو تیم میتواند ایدههای بهبود را پیشنهاد دهد. رهبری در کانبان، مختص مدیران نیست.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">📊</div>
|
||
<h5>۵. محدود کردن کار در جریان (WIP)</h5>
|
||
<p>مهمترین اصل کانبان: تعداد کارهای در حال انجام را محدود کنید. این کار، تمرکز را افزایش و دوبارهکاری را کاهش میدهد.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">🌊</div>
|
||
<h5>۶. مدیریت جریان کار</h5>
|
||
<p>هدف نهایی کانبان، ایجاد جریانی روان و بدون گلوگاه است. هر کارت باید به سرعت از ستون «شروع» به ستون «پایان» برسد.</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="info-box">
|
||
<strong>🎯 تفاوت کانبان با اسکرام:</strong> اسکرام یک «فریمورک» با نقشها، رویدادها و artefact های مشخص است. کانبان یک «متدولوژی» انعطافپذیر است که میتواند روی فرآیند موجود سوار شود. بسیاری از تیمها از ترکیب این دو (Scrumban) استفاده میکنند.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۳: اجزا ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۳</div>
|
||
<div class="section-title">
|
||
<h3>اجزای اصلی بردهای کانبان</h3>
|
||
<div class="subtitle">Core Components of Kanban Boards</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>یک برد کانبان از سه جزء اصلی تشکیل شده است: <strong>ستونها (Columns)</strong>، <strong>کارتها (Cards)</strong> و <strong>محدودیت WIP</strong>. درک دقیق هر یک از این اجزا، برای استفاده مؤثر از کانبان ضروری است.</p>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">الف) ستونها (Columns)</h4>
|
||
<p class="no-indent">ستونها، مراحل مختلف جریان کار را نشان میدهند. هر ستون نمایانگر یک «وضعیت» یا «فاز» از چرخه حیات یک وظیفه است.</p>
|
||
|
||
<table class="styled-table">
|
||
<thead>
|
||
<tr>
|
||
<th>نوع ستون</th>
|
||
<th>نقش</th>
|
||
<th>مثال</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td><strong>ستون ورودی (Input)</strong></td>
|
||
<td>وظایفی که هنوز شروع نشدهاند</td>
|
||
<td>Backlog، To Do</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>ستونهای میانی (WIP)</strong></td>
|
||
<td>وظایفی در حال انجام هستند</td>
|
||
<td>In Progress، Review، Testing</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>ستون خروجی (Output)</strong></td>
|
||
<td>وظایف تکمیلشده</td>
|
||
<td>Done، Deployed</td>
|
||
</tr>
|
||
<tr class="highlight-row">
|
||
<td><strong>ستون مسدود (Blocked)</strong></td>
|
||
<td>وظایف متوقفشده</td>
|
||
<td>Waiting، Blocked</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
<h4 style="margin-top: 25px; color: var(--primary); font-size: 16px;">ب) کارتها (Cards)</h4>
|
||
<p class="no-indent">هر کارت، نمایانگر یک «وظیفه» یا «کار» است. یک کارت استاندارد باید اطلاعات زیر را در بر داشته باشد:</p>
|
||
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;"><strong>عنوان واضح:</strong> نام وظیفه بهصورت مختصر و گویا</li>
|
||
<li style="margin-bottom: 8px;"><strong>توضیحات:</strong> جزئیات وظیفه، معیارهای پذیرش (Acceptance Criteria)</li>
|
||
<li style="margin-bottom: 8px;"><strong>مسئول:</strong> فرد یا افرادی که مسئول انجام آن هستند</li>
|
||
<li style="margin-bottom: 8px;"><strong>تاریخ سررسید:</strong> زمان مورد انتظار برای تکمیل</li>
|
||
<li style="margin-bottom: 8px;"><strong>برچسبها (Tags):</strong> دستهبندی وظیفه (Bug، Feature، Enhancement)</li>
|
||
<li style="margin-bottom: 8px;"><strong>اولویت:</strong> اهمیت نسبی وظیفه</li>
|
||
<li style="margin-bottom: 8px;"><strong>وابستگیها:</strong> ارتباط با سایر وظایف</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 25px; color: var(--primary); font-size: 16px;">ج) محدودیت WIP (Work In Progress Limit)</h4>
|
||
<p class="no-indent">محدودیت WIP، مهمترین مکانیزم کانبان برای جلوگیری از چندوظیفهای بودن (Multitasking) است. این محدودیت، حداکثر تعداد کارتهای مجاز در هر ستون را تعیین میکند.</p>
|
||
|
||
<div class="comparison-grid">
|
||
<div class="comparison-card">
|
||
<h4>❌ بدون محدودیت WIP</h4>
|
||
<ul>
|
||
<li><span>تعداد کارهای همزمان</span> <span class="value" style="color: var(--danger);">نامحدود</span></li>
|
||
<li><span>تمرکز تیم</span> <span class="value" style="color: var(--danger);">پخششده</span></li>
|
||
<li><span>زمان تکمیل هر کار</span> <span class="value" style="color: var(--danger);">بسیار طولانی</span></li>
|
||
<li><span>کیفیت خروجی</span> <span class="value" style="color: var(--danger);">پایین</span></li>
|
||
<li><span>استرس تیم</span> <span class="value" style="color: var(--danger);">بالا</span></li>
|
||
</ul>
|
||
</div>
|
||
<div class="comparison-card recommended">
|
||
<span class="card-badge">با WIP Limit ✓</span>
|
||
<h4>✓ با محدودیت WIP</h4>
|
||
<ul>
|
||
<li><span>تعداد کارهای همزمان</span> <span class="value" style="color: var(--success);">کنترلشده</span></li>
|
||
<li><span>تمرکز تیم</span> <span class="value" style="color: var(--success);">عمیق</span></li>
|
||
<li><span>زمان تکمیل هر کار</span> <span class="value" style="color: var(--success);">کوتاه</span></li>
|
||
<li><span>کیفیت خروجی</span> <span class="value" style="color: var(--success);">بالا</span></li>
|
||
<li><span>استرس تیم</span> <span class="value" style="color: var(--success);">پایین</span></li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="success-box">
|
||
<strong>💎 قانون طلایی WIP:</strong> «کار را شروع نکنید تا تمام شود، کار را تمام کنید تا شروع کنید.» این جمله، جوهره فلسفه کانبان را در بر دارد.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۴: ساختار استاندارد ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۴</div>
|
||
<div class="section-title">
|
||
<h3>ساختار استاندارد یک برد کانبان</h3>
|
||
<div class="subtitle">Standard Kanban Board Structure</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>یک برد کانبان استاندارد از حداقل سه ستون تشکیل شده است، اما در عمل، بردهای حرفهای معمولاً بین ۴ تا ۷ ستون دارند. در ادامه، یک نمونه برد کامل با ۴ ستون نمایش داده شده است:</p>
|
||
|
||
<div class="kanban-board-demo">
|
||
<h4>📋 نمونه برد کانبان - پروژه توسعه نرمافزار</h4>
|
||
<div class="kanban-columns">
|
||
<div class="kanban-column col-todo">
|
||
<div class="kanban-column-header">
|
||
📥 To Do
|
||
<span class="count">3</span>
|
||
</div>
|
||
<div class="kanban-card normal">
|
||
<div class="card-title">طراحی صفحه ورود</div>
|
||
<div class="card-meta">
|
||
<span>👤 علی</span>
|
||
<span>📅 ۲۵ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">UI/UX</span>
|
||
</div>
|
||
<div class="kanban-card urgent">
|
||
<div class="card-title">رفع باگ پرداخت</div>
|
||
<div class="card-meta">
|
||
<span>👤 سارا</span>
|
||
<span>📅 ۲۳ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">Bug</span>
|
||
</div>
|
||
<div class="kanban-card normal">
|
||
<div class="card-title">نوشتن مستندات API</div>
|
||
<div class="card-meta">
|
||
<span>👤 رضا</span>
|
||
<span>📅 ۲۸ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">Docs</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="kanban-column col-doing">
|
||
<div class="kanban-column-header">
|
||
🔨 In Progress
|
||
<span class="count">2</span>
|
||
</div>
|
||
<div class="kanban-card urgent">
|
||
<div class="card-title">پیادهسازی احراز هویت</div>
|
||
<div class="card-meta">
|
||
<span>👤 محمد</span>
|
||
<span>📅 ۲۴ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">Backend</span>
|
||
</div>
|
||
<div class="kanban-card normal">
|
||
<div class="card-title">توسعه داشبورد مدیر</div>
|
||
<div class="card-meta">
|
||
<span>👤 مریم</span>
|
||
<span>📅 ۳۰ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">Feature</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="kanban-column col-review">
|
||
<div class="kanban-column-header">
|
||
🔍 Code Review
|
||
<span class="count">1</span>
|
||
</div>
|
||
<div class="kanban-card normal">
|
||
<div class="card-title">بهینهسازی کوئریها</div>
|
||
<div class="card-meta">
|
||
<span>👤 حسین</span>
|
||
<span>📅 ۲۲ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">Performance</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="kanban-column col-done">
|
||
<div class="kanban-column-header">
|
||
✅ Done
|
||
<span class="count">2</span>
|
||
</div>
|
||
<div class="kanban-card normal">
|
||
<div class="card-title">راهاندازی CI/CD</div>
|
||
<div class="card-meta">
|
||
<span>👤 علی</span>
|
||
<span>📅 ۲۰ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">DevOps</span>
|
||
</div>
|
||
<div class="kanban-card normal">
|
||
<div class="card-title">طراحی دیتابیس</div>
|
||
<div class="card-meta">
|
||
<span>👤 سارا</span>
|
||
<span>📅 ۱۸ شهریور</span>
|
||
</div>
|
||
<span class="card-tag">Database</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<h4 style="margin-top: 25px; color: var(--primary); font-size: 16px;">ستونهای پیشنهادی برای حوزههای مختلف:</h4>
|
||
|
||
<table class="styled-table">
|
||
<thead>
|
||
<tr>
|
||
<th>حوزه</th>
|
||
<th>ستونهای پیشنهادی</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td><strong>توسعه نرمافزار</strong></td>
|
||
<td>Backlog → To Do → In Progress → Code Review → Testing → Done</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>بازاریابی محتوا</strong></td>
|
||
<td>Ideas → Research → Drafting → Editing → Publishing → Promoting</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>منابع انسانی</strong></td>
|
||
<td>Open Positions → Screening → Interview → Offer → Onboarding → Hired</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>پشتیبانی مشتریان</strong></td>
|
||
<td>New Tickets → Investigating → Waiting Customer → Resolving → Resolved</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>مدیریت شخصی</strong></td>
|
||
<td>Backlog → This Week → Today → Doing → Done</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
<div class="info-box">
|
||
<strong>💡 نکته طراحی:</strong> تعداد ستونها را بر اساس پیچیدگی واقعی فرآیند خود تنظیم کنید. ستونهای اضافی، سربار مدیریتی ایجاد میکنند و ستونهای ناکافی، شفافیت را کاهش میدهند. قانون کلی: «به تعداد کافی، نه بیشتر».
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۵: استفاده عملی ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۵</div>
|
||
<div class="section-title">
|
||
<h3>نحوه استفاده عملی از بردها برای مدیریت وظایف</h3>
|
||
<div class="subtitle">Practical Usage for Task Management</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>استفاده مؤثر از بردهای کانبان، نیازمند رعایت یک گردش کار (Workflow) مشخص است. در ادامه، گامبهگام نحوه استفاده از برد کانبان برای مدیریت وظایف تشریح شده است:</p>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">گام ۱: تعریف فرآیند کار</h4>
|
||
<p class="no-indent">قبل از هر چیز، باید مراحل واقعی انجام یک وظیفه در تیم خود را شناسایی کنید. این مراحل، ستونهای برد شما را تشکیل میدهند.</p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">یک وظیفه از کجا شروع میشود؟</li>
|
||
<li style="margin-bottom: 8px;">از چه مراحلی عبور میکند؟</li>
|
||
<li style="margin-bottom: 8px;">چه زمانی «تکمیلشده» محسوب میشود؟</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">گام ۲: ایجاد کارتها</h4>
|
||
<p class="no-indent">هر وظیفه را بهصورت یک کارت جداگانه وارد برد کنید. کارت باید:</p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">عنوانی واضح و قابل فهم داشته باشد</li>
|
||
<li style="margin-bottom: 8px;">به یک نفر (یا تیم مشخص) تخصیص داده شود</li>
|
||
<li style="margin-bottom: 8px;">دارای تاریخ سررسید باشد</li>
|
||
<li style="margin-bottom: 8px;">با برچسب مناسب دستهبندی شود</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">گام ۳: تعیین محدودیت WIP</h4>
|
||
<p class="no-indent">برای هر ستون میانی (غیر از ورودی و خروجی)، یک محدودیت WIP تعیین کنید. فرمول پیشنهادی:</p>
|
||
<div class="highlight-box">
|
||
<strong>📐 فرمول WIP Limit:</strong><br>
|
||
WIP Limit هر ستون = (تعداد اعضای تیم × ۱.۵) ÷ (تعداد ستونهای میانی)<br><br>
|
||
<strong>مثال:</strong> تیم ۴ نفره با ۳ ستون میانی → WIP = (۴ × ۱.۵) ÷ ۳ = <strong>۲ کارت برای هر ستون</strong>
|
||
</div>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">گام ۴: شروع کار با قانون Pull</h4>
|
||
<p class="no-indent">در کانبان، کار «Push» نمیشود، بلکه «Pull» میشود. این یعنی:</p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">تا زمانی که در ستون فعلی ظرفیت خالی ندارید، کارت جدیدی شروع نکنید</li>
|
||
<li style="margin-bottom: 8px;">وقتی کاری را تمام کردید، از ستون قبلی یک کارت بکشید (Pull)</li>
|
||
<li style="margin-bottom: 8px;">هرگز از ظرفیت WIP بیشتر نشود</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">گام ۵: جلسات روزانه (Daily Standup)</h4>
|
||
<p class="no-indent">هر روز، یک جلسه ۱۵ دقیقهای جلوی برد برگزار کنید و به سه سؤال پاسخ دهید:</p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;"><strong>چه چیزهایی به سمت تکمیل حرکت میکنند؟</strong> (تمرکز بر تکمیل، نه شروع)</li>
|
||
<li style="margin-bottom: 8px;"><strong>چه چیزهایی مسدود شدهاند؟</strong> (شناسایی گلوگاهها)</li>
|
||
<li style="margin-bottom: 8px;"><strong>چه کارهای جدیدی باید شروع شوند؟</strong> (تنها اگر ظرفیت وجود دارد)</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">گام ۶: بازبینی و بهبود مستمر</h4>
|
||
<p class="no-indent">هر هفته یا هر Sprint، برد را بازبینی کنید:</p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">آیا WIP Limits مناسب هستند؟</li>
|
||
<li style="margin-bottom: 8px;">کدام ستونها گلوگاه شدهاند؟</li>
|
||
<li style="margin-bottom: 8px;">آیا نیاز به افزودن یا حذف ستون داریم؟</li>
|
||
<li style="margin-bottom: 8px;">میانگین Cycle Time چقدر است؟</li>
|
||
</ul>
|
||
|
||
<div class="success-box">
|
||
<strong>✓ گردش کار کامل یک کارت:</strong><br>
|
||
۱. ایجاد کارت در ستون Backlog → ۲. انتقال به To Do (برنامهریزی) → ۳. Pull به In Progress (شروع کار) → ۴. انتقال به Review (بررسی) → ۵. انتقال به Done (تکمیل) → ۶. ثبت در تاریخچه
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۶: بهترین روشها ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۶</div>
|
||
<div class="section-title">
|
||
<h3>بهترین روشها (Best Practices)</h3>
|
||
<div class="subtitle">Best Practices for Kanban Success</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>بر اساس تجربیات جهانی و تحقیقات صنعتی، رعایت موارد زیر، موفقیت پیادهسازی کانبان را بهطور چشمگیری افزایش میدهد:</p>
|
||
|
||
<div class="principle-grid">
|
||
<div class="principle-card">
|
||
<div class="principle-icon">🎯</div>
|
||
<h5>کارتها را کوچک نگه دارید</h5>
|
||
<p>هر کارت باید در کمتر از ۲-۳ روز قابل تکمیل باشد. اگر کاری بزرگ است، آن را به چند کارت کوچکتر تقسیم کنید.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">📝</div>
|
||
<h5>Definition of Done (DoD) مشخص</h5>
|
||
<p>برای هر ستون، معیارهای مشخصی تعریف کنید که کارت چه زمانی مجاز به انتقال به ستون بعدی است.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">🚫</div>
|
||
<h5>کارتهای مسدود را برجسته کنید</h5>
|
||
<p>کارتهایی که منتظر پاسخ یا منبع خارجی هستند را با رنگ قرمز مشخص کنید تا گلوگاهها دیده شوند.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">📊</div>
|
||
<h5>معیارها را ردیابی کنید</h5>
|
||
<p>Lead Time، Cycle Time و Throughput را اندازهگیری کنید تا بتوانید بهبودها را کمیسازی کنید.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">🔄</div>
|
||
<h5>بازبینی منظم فرآیند</h5>
|
||
<p>هر ۲ هفته یکبار، فرآیند را بازبینی و در صورت نیاز، ستونها یا WIP Limits را تنظیم کنید.</p>
|
||
</div>
|
||
<div class="principle-card">
|
||
<div class="principle-icon">👥</div>
|
||
<h5>شفافیت کامل برای همه</h5>
|
||
<p>برد باید برای تمام اعضای تیم و ذینفعان قابل مشاهده باشد. هیچ «کاری پنهانی» نباید وجود داشته باشد.</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="highlight-box">
|
||
<strong>🎯 قانون طلایی:</strong> «اگر روی برد نیست، وجود ندارد.» هر کاری که انجام میدهید باید روی برد قابل مشاهده باشد. کارهای پنهان، دشمن شفافیت و بهبود مستمر هستند.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۷: اشتباهات رایج ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۷</div>
|
||
<div class="section-title">
|
||
<h3>اشتباهات رایج و راهحلها</h3>
|
||
<div class="subtitle">Common Mistakes & Solutions</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>بسیاری از تیمها در پیادهسازی کانبان با چالشهایی مواجه میشوند. شناخت این اشتباهات رایج و راهحلهای آنها، از اتلاف زمان و انرژی جلوگیری میکند:</p>
|
||
|
||
<div class="warning-box">
|
||
<strong>❌ اشتباه ۱: نادیده گرفتن محدودیت WIP</strong>
|
||
<p style="margin-top: 10px;">بسیاری از تیمها WIP Limit را تعیین میکنند اما به آن پایبند نمیمانند. نتیجه: چندوظیفهای بودن، کاهش تمرکز و افزایش زمان تکمیل.</p>
|
||
<p style="margin-top: 8px;"><strong>✓ راهحل:</strong> WIP Limit را بهصورت بصری روی برد نمایش دهید و در جلسات روزانه، رعایت آن را بررسی کنید.</p>
|
||
</div>
|
||
|
||
<div class="warning-box">
|
||
<strong>❌ اشتباه ۲: کارتهای بیشازحد بزرگ</strong>
|
||
<p style="margin-top: 10px;">کارتهایی که هفتهها طول میکشد تا تکمیل شوند، جریان کار را مختل میکنند و شفافیت را از بین میبرند.</p>
|
||
<p style="margin-top: 8px;"><strong>✓ راهحل:</strong> هر کاری که بیش از ۳ روز طول میکشد را به چند کارت کوچکتر تقسیم کنید.</p>
|
||
</div>
|
||
|
||
<div class="warning-box">
|
||
<strong>❌ اشتباه ۳: ستونهای بیشازحد</strong>
|
||
<p style="margin-top: 10px;">ایجاد ۱۰+ ستون، سربار مدیریتی ایجاد میکند و تیم را در جابجایی کارتها غرق میسازد.</p>
|
||
<p style="margin-top: 8px;"><strong>✓ راهحل:</strong> با ۴-۵ ستون شروع کنید و تنها در صورت نیاز واقعی، ستون جدید اضافه کنید.</p>
|
||
</div>
|
||
|
||
<div class="warning-box">
|
||
<strong>❌ اشتباه ۴: عدم بهروزرسانی منظم برد</strong>
|
||
<p style="margin-top: 10px;">اگر برد بهروز نباشد، به سرعت اعتماد تیم به آن از بین میرود و برد به یک «تابلوی تزئینی» تبدیل میشود.</p>
|
||
<p style="margin-top: 8px;"><strong>✓ راهحل:</strong> قانون بگذارید: «هر تغییر وضعیت، بلافاصله روی برد منعکس شود».</p>
|
||
</div>
|
||
|
||
<div class="warning-box">
|
||
<strong>❌ اشتباه ۵: نادیده گرفتن کارتهای مسدود</strong>
|
||
<p style="margin-top: 10px;">کارتهایی که هفتهها در یک ستون میمانند، نشاندهنده گلوگاههای جدی در فرآیند هستند.</p>
|
||
<p style="margin-top: 8px;"><strong>✓ راهحل:</strong> هر کارت مسدود بیش از ۲ روز را در جلسات روزانه بررسی و رفع کنید.</p>
|
||
</div>
|
||
|
||
<div class="warning-box">
|
||
<strong>❌ اشتباه ۶: استفاده از کانبان بدون درک فلسفه</strong>
|
||
<p style="margin-top: 10px;">برخی تیمها کانبان را صرفاً بهعنوان یک «ابزار بصری» میبینند و اصول آن را نادیده میگیرند.</p>
|
||
<p style="margin-top: 8px;"><strong>✓ راهحل:</strong> قبل از استفاده از ابزار، فلسفه و اصول کانبان را بهطور کامل درک کنید.</p>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۸: معیارها ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۸</div>
|
||
<div class="section-title">
|
||
<h3>معیارهای اندازهگیری عملکرد</h3>
|
||
<div class="subtitle">Performance Metrics & Measurement</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>برای اینکه بدانید آیا کانبان در تیم شما کار میکند یا خیر، باید معیارهای کلیدی را اندازهگیری کنید. این معیارها، زبان مشترک تیم برای گفتگو درباره بهبود فرآیند هستند.</p>
|
||
|
||
<div class="metric-card">
|
||
<div class="metric-icon">⏱️</div>
|
||
<div class="metric-body">
|
||
<h5>۱. Lead Time (زمان انتظار)</h5>
|
||
<p>مدت زمانی که یک کارت از لحظه ایجاد تا لحظه تکمیل در سیستم بوده است. این معیار، سرعت کلی سیستم را نشان میدهد.</p>
|
||
<div class="formula">Lead Time = Completion Date - Creation Date</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="metric-card">
|
||
<div class="metric-icon">🔄</div>
|
||
<div class="metric-body">
|
||
<h5>۲. Cycle Time (زمان چرخه)</h5>
|
||
<p>مدت زمانی که یک کارت از لحظه شروع کار (In Progress) تا تکمیل طول کشیده است. این معیار، بهرهوری واقعی تیم را نشان میدهد.</p>
|
||
<div class="formula">Cycle Time = Completion Date - Start Date</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="metric-card">
|
||
<div class="metric-icon">📊</div>
|
||
<div class="metric-body">
|
||
<h5>۳. Throughput (نرخ خروجی)</h5>
|
||
<p>تعداد کارتهای تکمیلشده در یک بازه زمانی مشخص (مثلاً در هفته یا ماه). این معیار، ظرفیت واقعی تیم را نشان میدهد.</p>
|
||
<div class="formula">Throughput = Completed Cards / Time Period</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="metric-card">
|
||
<div class="metric-icon">📈</div>
|
||
<div class="metric-body">
|
||
<h5>۴. WIP (کار در جریان)</h5>
|
||
<p>تعداد کارتهایی که در حال حاضر در ستونهای میانی هستند. این معیار، بار کاری فعلی تیم را نشان میدهد.</p>
|
||
<div class="formula">WIP = Cards in all WIP columns</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="metric-card">
|
||
<div class="metric-icon">⚠️</div>
|
||
<div class="metric-body">
|
||
<h5>۵. Blocked Ratio (نرخ مسدودی)</h5>
|
||
<p>درصد کارتهایی که در وضعیت مسدود هستند. این معیار، سلامت فرآیند را نشان میدهد.</p>
|
||
<div class="formula">Blocked Ratio = (Blocked Cards / Total Cards) × 100</div>
|
||
</div>
|
||
</div>
|
||
|
||
<h4 style="margin-top: 25px; color: var(--primary); font-size: 16px;">نمودارهای کانبان:</h4>
|
||
<table class="styled-table">
|
||
<thead>
|
||
<tr>
|
||
<th>نمودار</th>
|
||
<th>هدف</th>
|
||
<th>کاربرد</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td><strong>Cumulative Flow Diagram (CFD)</strong></td>
|
||
<td>نمایش جریان تجمعی کارتها در طول زمان</td>
|
||
<td>شناسایی گلوگاهها و پیشبینی تکمیل</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>Control Chart</strong></td>
|
||
<td>نمایش Cycle Time هر کارت</td>
|
||
<td>شناسایی ناهنجاریها و بهبود پیشبینی</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>Throughput Histogram</strong></td>
|
||
<td>نمایش توزیع تعداد کارتهای تکمیلشده</td>
|
||
<td>درک ظرفیت واقعی تیم</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>Aging Chart</strong></td>
|
||
<td>نمایش سن کارتهای در جریان</td>
|
||
<td>شناسایی کارتهای قدیمی و نیازمند توجه</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
<div class="info-box">
|
||
<strong>💡 قانون اندازهگیری:</strong> «آنچه اندازهگیری نمیشود، مدیریت نمیشود.» حداقل یکی از معیارهای بالا را بهصورت منظم ردیابی کنید تا بتوانید بهبودها را کمیسازی کنید.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۹: مثالهای کاربردی ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۹</div>
|
||
<div class="section-title">
|
||
<h3>مثالهای کاربردی در حوزههای مختلف</h3>
|
||
<div class="subtitle">Practical Examples Across Domains</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>کانبان یک متدولوژی جهانی است و در حوزههای بسیار متنوعی کاربرد دارد. در ادامه، چند مثال کاربردی از پیادهسازی کانبان در حوزههای مختلف ارائه شده است:</p>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">مثال ۱: تیم توسعه نرمافزار</h4>
|
||
<p class="no-indent"><strong>چالش:</strong> تیم ۵ نفره با بیش از ۲۰ کار همزمان، که هیچکدام به موقع تکمیل نمیشوند.</p>
|
||
<p class="no-indent"><strong>راهحل کانبان:</strong></p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">ایجاد برد با ۶ ستون: Backlog → To Do → In Progress → Code Review → Testing → Done</li>
|
||
<li style="margin-bottom: 8px;">تعیین WIP Limit: ۲ کارت برای هر ستون میانی</li>
|
||
<li style="margin-bottom: 8px;">جلسات روزانه ۱۵ دقیقهای جلوی برد</li>
|
||
<li style="margin-bottom: 8px;"><strong>نتیجه:</strong> کاهش Cycle Time از ۱۴ روز به ۵ روز در عرض ۲ ماه</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">مثال ۲: تیم بازاریابی محتوا</h4>
|
||
<p class="no-indent"><strong>چالش:</strong> تولید محتوای نامنظم، فراموش شدن ایدهها، عدم هماهنگی بین نویسندگان و ویراستاران.</p>
|
||
<p class="no-indent"><strong>راهحل کانبان:</strong></p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">ایجاد برد با ۵ ستون: Ideas → Research → Drafting → Editing → Published</li>
|
||
<li style="margin-bottom: 8px;">استفاده از برچسبهای رنگی برای نوع محتوا (Blog، Video، Social)</li>
|
||
<li style="margin-bottom: 8px"><strong>نتیجه:</strong> افزایش تولید محتوا از ۴ مقاله در ماه به ۱۲ مقاله با کیفیت بالاتر</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">مثال ۳: مدیریت شخصی</h4>
|
||
<p class="no-indent"><strong>چالش:</strong> احساس سردرگمی، فراموش کردن وظایف، عدم پیشرفت در اهداف شخصی.</p>
|
||
<p class="no-indent"><strong>راهحل کانبان:</strong></p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">ایجاد برد شخصی با ۴ ستون: Backlog → This Week → Today → Done</li>
|
||
<li style="margin-bottom: 8px;">WIP Limit: حداکثر ۳ کار برای «Today»</li>
|
||
<li style="margin-bottom: 8px;">بازبینی هفتگی هر جمعه evening</li>
|
||
<li style="margin-bottom: 8px;"><strong>نتیجه:</strong> افزایش بهرهوری شخصی و کاهش استرس بهطور چشمگیر</li>
|
||
</ul>
|
||
|
||
<h4 style="margin-top: 20px; color: var(--primary); font-size: 16px;">مثال ۴: تیم پشتیبانی مشتریان</h4>
|
||
<p class="no-indent"><strong>چالش:</strong> تیکتهای انباشتهشده، عدم شفافیت در وضعیت درخواستها، پاسخگویی کند.</p>
|
||
<p class="no-indent"><strong>راهحل کانبان:</strong></p>
|
||
<ul style="padding-right: 20px; margin-top: 10px;">
|
||
<li style="margin-bottom: 8px;">ایجاد برد با ۵ ستون: New → Investigating → Waiting Customer → Resolving → Resolved</li>
|
||
<li style="margin-bottom: 8px;">اولویتبندی با برچسبهای رنگی (Critical، High، Normal، Low)</li>
|
||
<li style="margin-bottom: 8px;"><strong>نتیجه:</strong> کاهش میانگین زمان پاسخ از ۴۸ ساعت به ۸ ساعت</li>
|
||
</ul>
|
||
|
||
<div class="success-box">
|
||
<strong>💎 درس مشترک:</strong> در تمام این مثالها، کانبان با ایجاد <strong>شفافیت بصری</strong>، <strong>محدود کردن کار در جریان</strong> و <strong>تمرکز بر تکمیل به جای شروع</strong>، بهرهوری را بهطور چشمگیری افزایش داده است.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ═══════════════ بخش ۱۰: جمعبندی ═══════════════ -->
|
||
<div class="section">
|
||
<div class="section-header">
|
||
<div class="section-number">۱۰</div>
|
||
<div class="section-title">
|
||
<h3>جمعبندی و گامهای بعدی</h3>
|
||
<div class="subtitle">Summary & Next Steps</div>
|
||
</div>
|
||
</div>
|
||
<div class="section-content">
|
||
|
||
<p>کانبان یک متدولوژی قدرتمند، انعطافپذیر و اثباتشده برای مدیریت بصری کارهاست. این متدولوژی با تأکید بر شفافیت، محدود کردن کار در جریان و بهبود مستمر، به تیمها کمک میکند تا با تمرکز بیشتر، استرس کمتر و بهرهوری بالاتر کار کنند.</p>
|
||
|
||
<div class="conclusion-box">
|
||
<h3>🎯 پیام اصلی کانبان</h3>
|
||
<p>«کار را شروع نکنید تا تمام شود، کار را تمام کنید تا شروع کنید.»</p>
|
||
<p>کانبان به شما نمیگوید «چه کاری انجام دهید»، بلکه به شما کمک میکند «بهترین روش انجام کار» را کشف کنید. این متدولوژی، ابزاری برای بهبود مستمر است، نه یک چارچوب خشک و غیرقابل تغییر.</p>
|
||
<div class="highlight">
|
||
<strong>💎 سه اصل کلیدی برای موفقیت:</strong><br>
|
||
۱. شفافسازی فرآیند فعلی | ۲. محدود کردن کار در جریان | ۳. بهبود مستمر و تدریجی
|
||
</div>
|
||
</div>
|
||
|
||
<h4 style="margin-top: 25px; color: var(--primary); font-size: 16px;">گامهای پیشنهادی برای شروع:</h4>
|
||
<table class="styled-table">
|
||
<thead>
|
||
<tr>
|
||
<th>گام</th>
|
||
<th>اقدام</th>
|
||
<th>زمان تخمینی</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td><strong>۱</strong></td>
|
||
<td>فرآیند فعلی تیم خود را روی کاغذ بنویسید</td>
|
||
<td>۳۰ دقیقه</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>۲</strong></td>
|
||
<td>یک برد کانبان ساده با ۴ ستون ایجاد کنید</td>
|
||
<td>۱۵ دقیقه</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>۳</strong></td>
|
||
<td>تمام وظایف فعلی را روی کارتهای جداگانه وارد کنید</td>
|
||
<td>۱ ساعت</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>۴</strong></td>
|
||
<td>برای ستونهای میانی، WIP Limit تعیین کنید</td>
|
||
<td>۱۰ دقیقه</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>۵</strong></td>
|
||
<td>جلسات روزانه ۱۵ دقیقهای را شروع کنید</td>
|
||
<td>هر روز</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>۶</strong></td>
|
||
<td>پس از ۲ هفته، فرآیند را بازبینی و بهبود دهید</td>
|
||
<td>۱ ساعت</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
<div class="info-box">
|
||
<strong>📞 منابع بیشتر:</strong> برای یادگیری عمیقتر کانبان، کتابهای زیر پیشنهاد میشوند:
|
||
<ul class="reference-list" style="margin-top: 15px;">
|
||
<li>
|
||
<strong>Kanban: Successful Evolutionary Change for Your Technology Business</strong>
|
||
<div class="ref-source">نویسنده: David J. Anderson</div>
|
||
</li>
|
||
<li>
|
||
<strong>Kanban from the Inside</strong>
|
||
<div class="ref-source">نویسنده: Mike Burrows</div>
|
||
</li>
|
||
<li>
|
||
<strong>Personal Kanban</strong>
|
||
<div class="ref-source">نویسندگان: Jim Benson & Tonianne DeMaria Barry</div>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="info-box">
|
||
<strong>🛠️ ابزار پیشنهادی:</strong> برای شروع سریع و بدون نیاز به نصب یا راهاندازی، ابزار <strong>xKanban</strong> (طراحیشده توسط هادی خزاعی اصل) یک گزینه ایدهآل است. این ابزار بهصورت یک فایل HTML مستقل، تمامی قابلیتهای یک برد کانبان حرفهای را بهصورت آفلاین و رایگان ارائه میدهد.
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page-info">
|
||
این مستند آموزشی جهت استفاده عمومی تهیه شده است. بازنشر با ذکر منبع مجاز است.
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- ═══════════════ FOOTER ═══════════════ -->
|
||
<footer class="document-footer">
|
||
<div class="footer-brand">طراحی، تحلیل و توسعه: هادی خزاعی اصل</div>
|
||
<div style="font-size: 11px; opacity: 0.8; margin-bottom: 5px;">معمار و توسعهدهنده ارشد نرمافزار | متخصص .NET و Angular</div>
|
||
<div class="footer-divider"></div>
|
||
<div>تاریخ تهیه: یکشنبه ۲۲ شهریور ۱۴۰۵ (۱۳ سپتامبر ۲۰۲۶) | ساعت: ۱۱:۰۰ | نسخه: ۱.۰.۰ | طبقهبندی: عمومی - آموزشی</div>
|
||
</footer>
|
||
|
||
</div>
|
||
</body>
|
||
</html> |