<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Ehsan Bagheri</title>
        <link>https://virgool.io/feed/@ehsan2022002</link>
        <description>گاهی که وقت پیدا کنم ...                  https://www.linkedin.com/in/bagheriehsan</description>
        <language>fa</language>
        <pubDate>2026-06-28 17:52:36</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/170405/avatar/whk5sI.png?height=120&amp;width=120</url>
            <title>Ehsan Bagheri</title>
            <link>https://virgool.io/@ehsan2022002</link>
        </image>

                    <item>
                <title>CMMI چیست</title>
                <link>https://virgool.io/@ehsan2022002/cmmi-%DA%86%DB%8C%D8%B3%D8%AA-qc0jrinxkjht</link>
                <description>مقدمهبسیاری از شرکت ها می خواهند فرایندهای خود را بهبود ببخشند ، اما آنها نمی دانند کدام مدل فرآیند را دنبال کنند تا در اجرای فرآیند پیشرفت کنند. این برای بسیاری از افراد در صنعت فناوری اطلاعات سردرگمی است ، زیرا این مدل های فرایند به عنوان مانعی برای کار کارآمد و مستندات بیش از حد فرآیند تلقی می شودممکن است روی بهره وری آنها تأثیر بگذارد. همچنین ، در دنیای سریع امروز ، مشتریان فشار زیادی را به پیمانکاران خود می آورند تا سریعتر تحویل دهند ، اما آنها نمی خواهند این تحویل سریع کیفیت کار را به خطر بیندازد.بنابراین این سوال مطرح می شود ، &quot;چگونه می توان کیفیت محصول نرم افزاری خود را تضمین کرد (اعم از وب سایت یا هر محصول / برنامه نرم افزاری دیگر)؟&quot; این امر هنگامی پیچیده تر می شود که شما یک تیم توسعه دهنده بزرگ داشته باشید. و علاوه بر این ، هنگامی که تیم هایی دارید که در مناطق مختلف جهان یا شهرهای مختلف یک کشور توزیع می شوند. بدون یک روند مشخص ، ارتباط با تیم های توزیع شده می تواند پیچیده شودحال ممکن است از خود بپرسید CMMI چگونه به شما کمک می کند؟ CMMI بسیار گسترده است ، و هر عملی که در این مدل ذکر شده ممکن است برای همه مفید نباشد ، که ممکن است برای بسیاری از افراد سعی در استفاده از آن در طول اولین کار غیر عملی باشدما باید در اینجا چند سوال از خود بپرسیم: چه چیزی سعی در بهبود آن داریم؟ آیا این یک فرآیند ، یک محصول یا یک تیم است؟ آیا درآمد است که برای وجود شرکت در طولانی مدت مهم است؟ اجرای CMMI سرمایه گذاری زمان و هزینه است ، اما این سرمایه گذاری مطمئناً بازگشت سرمایه را برای شرکت در سال فراهم می کندخوب ، متخصصان مدیریت ارشد شما در سازمان باید قبل از اینکه تیم های تحویل دهنده را مجبور کنند یا به تیم های تحویل دهند بگویند که در هر کاری که انجام می دهند ، فرآیند گرایش پیدا کنند و ارزش واقعی بهترین روش های CMMIرا درک کنند.ممکن است در اینجا تعجب کنید ، &quot;چرا مدیریت ارشد؟&quot; خوب ، چرا که نه؟ آنها افرادی هستند که بیشتر تصمیمات را در سازمان می گیرند ، بیشتر به نفع سازمان است. این وظیفه آنها است که تولید محصولات و نتایج مورد نیاز را برای تیم تحویل آسانتر کنند.رویکرد از بالا به پایین بیشتر سازمانها کار می کند. اگر مدیریت ارشد با موضوعی موافقت کند ، می تواند اطمینان حاصل کند که بخشنامه توسط بقیه دنبال می شود. در غیر این صورت ، تیم هایی که در سطح پایین تری قرار دارند ، در پیگیری رویکرد فرآیند گرا احساس عدم تمایل می کنند ، زیرا آنها آن را به عنوان سربار می دانند ، که این تصور اشتباهی است.و چرا این یک تصور غلط است؟زیرا هر قدم یا اقدامی که ما در پروژه یا توسعه محصول خود انجام می دهیم ، خود یک فرایند است ، گرچه همیشه این را نمی دانیم. به عنوان مثال ، نوشتن کد برای یک ماژول و انجام آزمایشات واحد نیز بخشی از یک فرایند است.CMMI در مورد تمام زمینه های مختلف فرایند صحبت می کند که یک سازمان فرآیند گرا باید تعریف و دنبال کند. همه این مناطق فرآیندی کدامند؟ یک فرایند را می توان به عنوان مجموعه ای از فعالیت های مرتبط با هم تعریف کرد که مقداری ورودی می گیرند و سپس با یک هدف مشخص تولید می کنند. به طور کلی ، یک روند شامل ابزارها و روش ها است. به بیان ساده تر ، شما می توانید فرآیند را به عنوان یک سری اقدامات یا گام هایی که برای دستیابی به یک هدف خاص برداشته شده تعریف کنید. یک فرآیند معمول این است که:• ساده است• به خوبی مستند شده است• قابل اندازه گیری است• قابل انعطاف است• پایدار استفرآیند مهم است زیرا کیفیت محصول بستگی زیادی به کیفیت فرآیندهایی دارد که برای ایجاد آن استفاده می کنیم. به همین دلیل است که CMMI با این وجود توسعه یافته است ، کیفیت فرآیند برای کیفیت محصول نهایی بسیار مهم است. CMMIبا تأکید زیادی بر رابطه بین فرآیند و کیفیت محصول توسعه یافته است.CMMIچیست؟CMMI در مورد جمع آوری خصوصیات فرایندهای موثر و سپس استفاده از این اطلاعات برای ارائه راهنمایی برای بهبود فرایندهای سازمان است. هدف نهایی تسهیل کار برای یک سازمان برای بهبود محصولات یا راه حل ها با بهبود توانایی خود در مدیریت توسعه ، تملک و نگهداری محصولات یا خدمات خود است.CMMI یک مدل است. این به ما می گوید که چه کاری انجام دهیم ، اما نه اینکه چگونه این کار را انجام دهیم. این مجموعه ای از روش ها و متدلوژی ها نیست . این مفهومی است که ما باید برای رسیدن به سازمان از نظر فرآیند به سازمان بکار گیریم.یکپارچه سازی مدل بلوغ قابلیت (CMMI) یک مدل بهبود قابلیت است که می تواند برای حل هر مسئله عملکرد در هر سطح از سازمان در هر صنعت سازگار باشد. این مدل رهنمودها و توصیه هایی برای کمک به سازمان شما در تشخیص مشکلات و بهبود عملکرد ارائه می دهد. CMMI با استفاده از بیش از 5000 سازمان در بیش از 70 کشور در سراسر جهان به شما کمک می کند اهداف تجاری قابل اندازه گیری را شناسایی و به دست آورید. — CMMI Instituteبررسی اجمالی CMMICMMI توسط گروهی از متخصصان خبره صنعت ، دولت و موسسه مهندسی نرم افزار (SEI) در CMUتوسعه یافته است. مدل CMMI مجموعه ای از راهنماها است و می تواند به عنوان چارچوبی برای ارزیابی بلوغ فرآیند یک سازمان مورد استفاده قرار گیرد. CMMI در حال حاضر به سه حوزه مهم مورد توجه پرداخته است:• توسعه محصول و خدمات - CMMI برای توسعه (CMMI-DEV)• استقرار ، مدیریت خدمات - CMMIبرای خدمات (CMMI-SVC)• خرید محصول و خدمات - CMMIبرای اکتساب (CMMI-ACQ).CMMI-DEV v1.3 یک مدل مرجع است که فعالیت های توسعه محصولات و خدمات را پوشش می دهد. این روزها ، بسیاری از سازمان ها از صنایع مختلف (به عنوان مثال ، نرم افزار ، دفاع ، هوا فضا ، بانکداری ، اتومبیل ، تولید و ارتباطات از راه دور) بهترین شیوه های صنعت CMMI-DEV v1.3را پیاده سازی و دنبال می کنند.CMMI-DEV شامل روش هایی برای زمینه های فرآیند (به عنوان مثال ، مدیریت پروژه ، مدیریت فرآیند ، مهندسی سیستم ، مهندسی سخت افزار ، مهندسی نرم افزار و پشتیبانی) است که هم در پروژه های توسعه و هم نگهداری اجرا می شوند.ما به عنوان متخصص باید از قضاوت و عقل سلیم خود برای تفسیر مدل برای سازمان خود استفاده کنیم. نواحی فرآیندی توصیف شده در این مدل رفتارهایی را توصیف می کند که به عنوان بهترین روش برای بیشتر کاربران در نظر گرفته شده است.زمینه ها و روش های فرآیند باید با استفاده از دانش عمیق CMMI-DEV ، محدودیت های سازمانی و محیط کسب و کار شما تفسیر شود.اهداف تجاری در CMMIدرک هدف تجارت برای هر سازمانی بسیار مهم است و آن نقشی اساسی در ارتقا و تداوم سازمان دارد. همچنین می تواند سودآوری و سهم خود را در بازار بهبود بخشد. هدف تجاری می تواند موفقیت سازمان را تحت تأثیر قرار دهد. بنابراین ، اهداف سازمان فقط باید توسط مدیریت ارشد توسعه یابد. برخی از اهداف تجاری CMMI-DEV شامل موارد زیر است:• محصولات را در بودجه و به موقع تحویل دهید• بهره وری را با یک درصد مشخص در یک بازه زمانی مشخص بهبود بخشید• رتبه بندی رضایت مشتری را حفظ کنید• زمان عرضه به بازار محصولات جدید یا انتشار خدمات را در یک بازه زمانی مشخص با درصد مشخص بهبود دهید• میزان فراخوان محصول را با یک درصد مشخص در یک بازه زمانی مشخص کاهش دهید• در بازه زمانی مشخص شده هزینه نگهداری محصولات قدیمی را با درصد مشخص شده را کاهش دهیدCMMI در مورد تعریف اهداف تجاری سازمانی صحبت می کند. چندین روش خاص Specific Practices (SPs) وجود دارد که اهداف تجاری زمینه اصلی تفسیر و به کارگیری این روش را فراهم می کنند. در تمام سطوح بلوغ ، ما مناطق فرآیندی داریم که این روشها را حفظ می کنند.تکامل CMMICMMI توسط SEI (انستیتوی مهندسی نرم افزار) و با حمایت مالی وزارت دفاع آمریکا (وزارت دفاع) تأسیس شد. این پروژه متشکل از اعضای صنعت ، دولت و دانشگاه کارنگی ملون بود. در اوایل دهه 1980 ، بسیاری از پروژه های نظامی ایالات متحده که شامل پیمانکاران فرعی نرم افزاری بود ، از برنامه عقب مانده بودند. پیمانکاران فرعی هم در ایالات متحده و هم در خارج از ایالات متحده پراکنده بودند و هر سازمانی مجموعه دستورالعمل های خاص خود را برای انجام کار مشابه داشت. از این رو ، برای DOD(وزارت دفاع) و NDIA(انجمن صنایع دفاع ملی) دشوار بود كه بتواند حاصل از چندین پروژه یا فروشندگان مختلف را ادغام كند. یک مدل کاری جدید مورد نیاز بود که هر سازمانی را قادر می سازد تا مسیر مشابهی را برای ساخت محصول یا راه حل جدید دنبال کند.مدل بلوغ قابلیت (CMM) بر اساس مطالعه و داده های جمع آوری شده از سازمان های مختلف که به عنوان فروشنده با وزارت دفاع ایالات متحده کار کرده بودند ، ساخته شد. در CMM ، اصطلاح بلوغ به بهبود فرآیندها به طور مداوم اشاره دارد.به درخواست نیروی هوایی ایالات متحده (USAF) ، هامفری و SEI با هم چارچوب بلوغ فرآیند را ایجاد کردند تا به عنوان بخشی از روند اعطای قرارداد کار به وزارت دفاع ایالات متحده ، برای ارزیابی توانایی فرایند توسعه نرم افزار فروشندگان خود کمک کنند.. نمایش کامل مدل بلوغ قابلیت (CMM) در سال 1991 توسعه داده شد و در سال 1993 به عنوان نسخه 1.1 به روز شد. در سال 2000 ، تیم CMMIمدل اصلی CMMI را برای روش آموزش و ارزیابی خود منتشر کرد که شامل مهندسی نرم افزار و سیستم بود. این طرح شامل پشتیبانی کامل از ادغام آینده سایر رشته ها میباشد. نسخه فعلی مدل CMMIدر زمان نگارش ، CMMI V1.3 است که در سال 2010 منتشر شدچرا از CMMI استفاده کنیم؟یک سوال واضح وجود دارد: چرا باید از آن استفاده کنید؟ دلایل زیادی برای انتخاب CMMI وجود دارد اما یکی از مهمترین آنها عملکرد است. هدف اصلی CMMI بهبود عملکرد موجود استانداردها ، فرایندها و رویه های سازمانی است. CMMI همچنین برای سازمانی که می خواهند توانایی خود را برای ارائه مداوم و قابل پیش بینی محصولات ، خدمات و کالاهایی که مشتریانش می خواهند ، بهبود ببخشد مفید است. از این رو ، به سازمانها نیز کمک می کند تا به اهداف عملکردی خود دست یابند.CMMIبرای بهبود فرآیند استفاده می شودبرای پاسخگویی به پیشرفتهای جامع فرآیند کسب و کار ، CMMI دارای 25 قسمت مختلف فرآیند است. هر حوزه فرآیند از دو نوع هدف (هدف کلی و هدف خاص) و دو نوع عمل تشکیل شده است. همچنین اطلاعات زیادی برای کمک به مدیریت در جهت توسعه استراتژی ها وجود دارد. در CMMI ، سه صورت فلکی برای کمک به بهبود یک نیاز تجاری خاص وجود دارد که به شرح زیر ذکر شده است:• توسعه: برای بهبود توسعه راه حل ها•اکتساب: برای بهبود خرید محصولات ، خدمات و یا راه حل ها• خدمات: برای بهبود ارائه خدمات و ایجاد سیستم های خدماتی برای راه اندازی راه حلهمانطور که قبلاً ذکر شد ، CMMI توسط گروهی از متخصصان متخصص در صنعت نوشته شده است. در نتیجه ، مدل CMMI مجموعه ای از بهترین شیوه های صنعت را شامل می شود. سازمان ها و صنایع ITاز مدل CMMI به عنوان معیاری برای بهبود فرایندهای خود استفاده می کنند.CMMIبرای ارزیابی استفاده می شودسازمان ها همچنین از CMMI برای ارزیابی کل سازمان یا فقط یک واحد تجاری حاضر در یک یا چند مکان استفاده می کنند. ارزیابی با استفاده از بهترین روشهای تعریف شده در مدل انجام می شود.از کجا می توان از CMMIاستفاده کرد؟CMMI توسط هر سازمانی کوچک یا بزرگ که می خواهد قابلیت ها و عملکرد خود را بهبود بخشد ، قابل استفاده است. این روزها ، CMMI در سراسر سازمان و در زمینه های مختلفی از جمله هوانوردی و هوا فضا ، شبکه های رایانه ای ، نرم افزار رایانه ای ، فناوری اطلاعات ، دفاع و فضا ، بیمارستان و مراقبت های بهداشتی ، دولت ، بیمه ، مشاوره مدیریت ، برون سپاری و موارد دیگر مورد استفاده قرار می گیرد. CMMIهمچنین توسط بسیاری از سازمانهای تجاری و دولتی برای کمک به تعریف بهبود فرآیند برای مهندسی سیستم ، مهندسی نرم افزار و تولید محصولات و فرایندها استفاده می شود. بسیاری از سازمانها از این فرایندها برای توسعه ، به دست آوردن و نگهداری محصولات و خدمات و همچنین برای محک زدن خود در برابر سایر سازمانها استفاده می کنند. فرآیندهای بهتر منجر به کاهش مجدد کار می شود که این امر باعث کاهش هزینه کلی و بهبود کیفیت محصول می شود.چه کسی می تواند از CMMIاستفاده کند؟بسیاری از صنایع IT نمی دانند که آیا نقشی در اجرای CMMI دارند یا خیر. و اگر آنها نقشی برای بازی دارند ، چگونه آن را آغاز می کنند؟ با بررسی همه افرادی که ممکن است درگیر شوند. این شامل مدیر عامل ، CTO ، معاونان رئیس جمهور ، روسای واحدهای تجاری ، مدیران برنامه ها ، مدیران پروژه ها ، مدیران کیفیت ، رهبران تیم / فناوری ، تحلیل گران تجارت ، معماران سیستم ، طراحان ، توسعه دهندگان ، آزمایش کنندگان ، SQA ها ، کنترل کننده های پیکربندی و بخشهای آموزش می باشد. اگر به هر یک از دسته های فوق الذکر متصل باشید ، تقریباً در اجرای CMMI نقش دارید. در آینده ، ممکن است نقش های بیشتری با اتصال به  CMMIایجاد شوداما در اینجا روش مختصر تری برای بیان اینکه چه کسی در CMMIسهیم است وجود دارد: هر کسی که در برنامه ریزی و اجرای یک پروژه IT نقش دارد - چه از نظر مهندسی ، مدیریت پروژه ، یا از نظر پشتیبانی و فرایند - در اجرای شیوه های CMMIنقش دارد.طراحی CMMIبنابراین سوال بعدی که به ذهن خطور می کند این است: &quot;چقدر راحت می توانیم این مدل را درک کنیم و سازگار کنیم؟&quot; بیایید با شکستن طراحی مدل CMMI DEV شروع کنیم. CMMIمخفف چیست؟ و توسعه یا DEV چیست؟ CMMI مخفف ادغام مدل بلوغ قابلیت است که:• قابلیت: وقتی می خواهیم در یک فرایند فردی ، فرآیند را بهبود بخشیم و به آن دست یابیم.• بلوغ: وقتی می خواهیم در مجموعه ای از مناطق فرآیند که از پیش تعریف شده اند ، فرآیند را پیاده سازی و به دست آوریم.• مدل: از چارچوب CMMI تولید شده است.• ادغام: این رویکرد از ترکیبی از مدلهای انتخاب شده (به عنوان مثال ، CMMI برای نرم افزار ، مهندسی سیستم و توسعه محصول یکپارچه) استفاده می کند که در یک چارچوب واحد ، CMM-Iادغام شده اند. &quot;من&quot; مخفف ادغام است. (اولین مدل توسعه یافته CMMI برای توسعه بود).سطح CMMIدر CMMI ، هر سطح بلوغ فرآیند را توصیف می کند. هر سطح بلوغ شامل مناطق فرآیندی است (که قبلاً تعریف شده اند) و این سطوح به صورت تدریجی حاصل می شوند. قابلیت و بلوغ به ترتیب با سطح توانایی و سطح بلوغ مرتبط هستند. هر دو نوع سطح ، مسیرهای بهبود را برای آغاز اجرای CMMI توصیف می کنند. بنابراین ، چگونه سطح توانایی را توصیف می کنیم؟سطح تواناییسطح توانایی راهی است که اطمینان می دهد یک سازمان به طور فزاینده ای یک منطقه فرایند یا گروهی از فرایندها را بهبود می بخشد. تمرکز بر مشخصات یک فرآیند مشخص به یک سازمان کمک می کند تا سطح توانایی خود را در آن بخش فرآیند بهبود بخشد. چهار سطح قابلیت وجود دارد:•سطح 0ناقص است - ناقص به معنای عدم رضایت اهداف خاص برای حوزه فرآیند است. همچنین ، اهداف عمومی برای این سطح وجود ندارد.•سطح 1انجام شده است - انجام شده به معنای انجام کار مورد نیاز و برآورده شدن اهداف خاص منطقه فرآیند است. در سطح توانایی 1 ، بهبود فرآیند باید نهادینه و حفظ شود ، در غیر این صورت ممکن است در طی یک دوره زمانی کاملاً از بین بروند.•سطح 2مدیریت شده - مدیریت شده به معنای برنامه ریزی و اجرای فرآیند شما است ، همانطور که توسط سازمان شما تعریف شده است:o شامل تیمی از افراد ماهر استo تولید خروجی به صورت کنترل شدهo ذینفعان را درگیر می کندo فرآیند شما کنترل ، کنترل و بررسی می شودo شامل ارزیابی توصیف فرآیند شما برای پیوستن به فرآیند پایبندی فرایند در سطح 2 قابلیت اطمینان از حفظ سازمان شما در مراحل مهم را تضمین می کند.•سطح 3تعریف شده است - تعریف شده بدین معناست که متناسب سازی فرآیندها از فرآیندهای تعریف شده شما در سازمان با رعایت دستورالعمل های اجرایی آن انجام می شود. در سطح توانایی 3 ، سازمان ها همچنین به دارایی های فرآیند سازمانی که در طول اجرای فرآیندها به دست می آیند ، تجارب کمک می کنند. ممکن است تعجب کنید که چگونه بین سطح توانایی 2 و 3 تمایز قائل می شوید.در سطح قابلیت 2 ، یا فرایند کامل یا برخی از توصیفات آن از یک پروژه به پروژه دیگر متفاوت است. به عبارت دیگر ، فرایندها در کل سازمان معمول نیستند.در سطح توانایی 3 ، فرایندهای استاندارد در کل سازمان معمول است. فرایندها مجاز به طراحی برای یک پروژه یا واحد سازمانی هستند. اجرا با پیروی از دستورالعملهای اجرایی تعریف شده برای سازمان انجام می شود.در سطح 3 ، فرایندها به صورت دقیق نوشته می شوند و بصورت پیشگیرانه مدیریت می شوند. فرایندها سازگارتر در نظر گرفته می شوند و تنها تفاوتهای محسوس توسط دستورالعملهای اجرایی مجاز است.هنگامی که یک سازمان در مناطق فرایندی که برای بهبود در نظر گرفته شده بودند ، به سطح 3 رسید ، می تواند با تمرکز بر اجرای مناطق فرآیند با بلوغ بالا (به عنوان مثال ، عملکرد فرایندهای سازمانی ، مدیریت کمی پروژه ، تجزیه و تحلیل علل و حل و فصل ، و مدیریت عملکرد سازمانی).سطح بلوغسطح بلوغ مسیری است که سازمان ها را قادر می سازد مجموعه های متوالی مناطق فرآیندی خود را به روشی افزایشی بهبود بخشند. هر سطح بلوغ دارای یک سری فرایندها است که اگر با هم اجرا شوند به شما کمک می کنند تا به یک سطح بلوغ کامل برسید (به عنوان مثال ، از سطح 1 به سطح 2 بروید).پنج سطح بلوغ در مراحل افزایشی از سطح 1 به سطح 5 پیشرفت می کنند• سطح 1: اولیه• سطح 2: مدیریت شده• سطح 3: تعریف شده است• سطح 4: به صورت کمی مدیریت می شود• سطح 5: بهینه سازیبلوغ سطح 1: اولیهاولیه به معنای موقت بودن فرایندها است. موفقیت بستگی به توانایی چند نفر در این کشور دارد. سازمانی که به عنوان قهرمان دیده می شود و بر اساس فرایندهای موجود نیست. در آینده ، هنگامی که این چند نفر از افراد قهرمان سازمان را ترک می کنند ، تیم قادر به تکرار موفقیت نیست. در یک سازمان سطح 1 بلوغ ، محصولات ساخته شده و خدمات ارائه شده بیشتر اوقات به خوبی کار می کنند. با این حال ، بودجه و برنامه همیشه تحت تأثیر قرار می گیرد و از برنامه های مستند آنها منحرف می شود. همچنین ، مشاهده شده است که تیم های سطح 1 با مشتری خود بیش از حد تعهد می کنند. این به این دلیل است که ، در زمان بحران (به عنوان مثال ، یک رویداد که بر برنامه تأثیر می گذارد) ، کل تیم فرایند را رها می کند تا سریعتر تحویل انجام شود به همین دلیل ، آنها قادر به تکرار موفقیت نیستند.بلوغ سطح 2: مدیریت شدهمدیریت شده به معنای پیوستن پروژه ها به فرایندهای تعریف شده توسط سازمان است. تیم / منابعی که روی پروژه کار می کنند دارای مهارت های مناسب برای تولید خروجی های کنترل شده هستند:• پروژه ها و محصولات کاری آنها کنترل ، کنترل و بازبینی می شوند• پروژه ها و محصولات کاری آنها برای رعایت توصیف فرآیند ارزیابی می شوند• مدیریت از وضعیت محصولات کار در فواصل زمانی مشخص آگاه است (به عنوان مثال ، در نقاط عطف مهم و در انجام کارهای اصلی)• تعهدات در میان ذینفعان مربوطه قابل مشاهده استدر مرحله بلوغ 2 ، نظم و انضباط فرآیند به اطمینان از حفظ روشهای موجود در زمان استرس در پروژه کمک می کند. با دنبال کردن روند ، پروژه ها طبق برنامه های مستند انجام و مدیریت می شوند.بلوغ سطح 3: تعریف شده استتعریف شده به این معنی است که فرایندها به خوبی تعریف شده ، مستند ، قابل فهم و از طریق ابزارهای مختلف دنبال می شوند (مثلاً از طریق روش ها ، روش ها یا ابزارها). فرایندهایی که به صورت روزمره دنبال می شوند با گذشت زمان در سطح سازمانی بیشتر بهبود می یابند:• فرایندها در سطح بلوغ 3 به ایجاد این احساس در بین اعضای تیم کمک می کنند که در پیگیری فرآیند در سطح سازمان یا سطح واحد تجاری ، سازگاری برقرار است.• پروژه ها مطابق با رهنمودهای اجرایی متناسب با فرآیندهای تعریف شده خود عمل می کننداگر عوامل متمایز بین سطح بلوغ 2 و 3 را بررسی کنیم مشاهده میشود.در سطح بلوغ 2 ، روند کامل یا توصیفات آن می تواند از یک پروژه به پروژه دیگر متفاوت باشد. به عبارت دیگر ، فرایندها در کل سازمان معمول نیستند. در سطح بلوغ 3 ، فرآیندهای استاندارد در سراسر سازمان معمول است. فرایندها را می توان برای یک پروژه یا واحد سازمانی با مراجعه به رهنمودهای اجرایی  تعریف شده سازمان تنظیم کرد. درست مانند سطح قابلیت 3 ، فرایندهای بلوغ سطح 3 به صورت دقیق نوشته شده و بصورت پیشگیرانه مدیریت می شوند. از این رو در سطح 3 ، فرایندها سازگارتر در نظر گرفته می شوند و تنها تفاوت های محسوس توسط دستورالعمل های اجرایی مجاز است.بلوغ سطح 4: به صورت کمی مدیریت می شوداز نظر کمی مدیریت شده به این معنی است که یک سازمان اهداف کمی را برای کیفیت و عملکرد فرآیند در سطح سازمانی و پروژه تعیین می کند. سپس از این اهداف کمی به عنوان معیار مدیریت پروژه ها استفاده می کند:• اهداف کمی با ارزیابی نیازهای مشتری ، کاربران نهایی و سازمان و مجری فرایندها تعریف می شود• کیفیت و اهداف عملکرد فرایند از طریق ابزار آماری مشاهده شده و در طول عمر پروژه ها مدیریت می شوند• خطوط اساسی و عملکرد عملکرد فرایند اجرا می شوند که به تعیین کیفیت و اهداف عملکرد فرایند کمک می کنند. این به یک سازمان در دستیابی به اهداف تجاری خود کمک خواهد کردبنابراین ، فاکتور مهم تشخیص بین بلوغ سطح 3 و 4 چیست؟ در سطح 4 ، ما می توانیم عملکرد فرآیند را پیش بینی کنیم.پروژه و زیرفرآیندهای انتخاب شده با استفاده از روشهای آماری و سایر روشها کنترل می شوند. همچنین ، پیش بینی ها با انجام تجزیه و تحلیل آماری بر روی داده های فرآیند تصفیه شده انجام می شود.بلوغ سطح 5: بهینه سازیبهینه سازی به این معنی است که یک سازمان با درک اهداف تجاری و نیازهای عملکردی خود (از نظر کمی) بر بهبود فرآیندهای خود به طور مداوم تمرکز دارد. همچنین ، سازمانها برای درک تغییرات ذاتی فرآیند و علل نتایج فرایند از رویکرد کمی استفاده می کنند:• هدف بهبود عملکرد فرآیند با پیروی از یک رویکرد افزایشی و ابتکاری است• اهداف و کیفیت عملکرد و عملکرد در سطح سازمانی تعریف می شوند• فرآیندهای تعریف شده و فناوری پشتیبانی برای کمک به سازمانها در دستیابی به پیشرفتهای قابل اندازه گیری ، با هم ترکیب می شونددر اینجا عوامل مهم متمایز کننده بین سطح بلوغ 4 و 5 وجود دارد:• در مرحله بلوغ 4 ، تیم های سازمانی و پروژه ای عملکرد را در سطح زیر فرایند درک و کنترل می کنند و از این نتایج برای مدیریت پروژه ها استفاده می کنند• در سطح بلوغ 5 ، سازمان بر مدیریت و بهبود عملکرد سازمان تمرکز دارد. این امر با جمع آوری و تجزیه و تحلیل داده های پروژه های مختلف تضمین می شود</description>
                <category>Ehsan Bagheri</category>
                <author>Ehsan Bagheri</author>
                <pubDate>Sun, 25 Jul 2021 14:22:45 +0430</pubDate>
            </item>
                    <item>
                <title>پنج راه برای حل تعارضات تیم</title>
                <link>https://virgool.io/@ehsan2022002/%D9%BE%D9%86%D8%AC-%D8%B1%D8%A7%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AD%D9%84-%D8%AA%D8%B9%D8%A7%D8%B1%D8%B6%D8%A7%D8%AA-%D8%AA%DB%8C%D9%85-xpqwmd8tfx2p</link>
                <description>آیا در جنگ  بودن به روحیه و حفظ تیم شما آسیب می رساند؟ آیا می دانید چه نوع درگیری ها سالم هستند و کدام ها نیست؟ وقتی مداخله می کنید ، آیا استراتژی دارید ، یا فقط قضیه بدون هیچ تلاشی ساده میکنید و به بهترین ها امیدوار هستید؟  افراد عقاید متفاوتی دارند؛ این تنوع به ما کمک می کند تا از هرگونه کاستی فردی بر طرف شویم. همچنین این بدان معناست که درگیری بر سر پروژه ها اجتناب ناپذیر است. هر زمان که افراد را داشته باشیم در مورد راه حل نظرات مختلفی را ارائه می دهند ، برخی از اختلافات وجود خواهد داشت. عدم توافق جزئی در جستجوی راه حل بهتر ، حرکت مثبت و رو به جلو  است.  مشاجرات مداوم و حملات شخصی مخرب است و باید برطرف شود.  خب چطور باید انجامش بدیم؟اول ، بیایید تصدیق کنیم که رویکردهای حل اختلاف باید متناسب با هر موقعیت منحصر به فرد باشد. هیچ راه حل ساده و ساده ای وجود ندارد. در غیر این صورت ، مردم خود روند کار را طی می کنند. درعوض ، ما باید براساس شرایطی که پیش می آید ، راه خود را بیابیم.بنابراین در حالی که هیچ فرمول وجود ندارد ، داشتن برخی استراتژی ها ، برخی از مدل ها برای هدایت فرایند فکر ما مفید است. در این مقاله برخی از مدل های اساسی برای حل و فصل مناقشات توضیح داده شده است - و در صورت کمک به وضعیت شما ممکن است از آنها گنجانیده شود.اولین مدل از تعارض که ما بررسی خواهیم کرد به ما در درک و توصیف سطوح مختلف درگیری کمک می کند. به طور شهودی ، ما می دانیم بحث سالم به ما کمک می کند تا راه حل های قوی تری تهیه کنیم و به طور کلی چیز خوبی است. در انتهای دیگر مقیاس ، ما می دانیم که حملات شخصی و زورگویی قابل تحمل نیست و باید با آنها برخورد شود. با این وجود ، طیف کاملی بین این افراط و تفریط وجود دارد ، هر یک از این محرک ها می توانند درگیری و استراتژی هایی را افزایش دهند که به تشدید آن نیز کمک می کند.1. سطح درگیری را درک کنیدمدل &quot;پنج سطح تعارض&quot; ساخته شده توسط Speed Leas پیوستگی و سطح درگیری را نشان می دهد:مدل با سطح یک &quot;مسئله حل&quot; آغاز می شود و تا مرحله &quot;جنگ جهانی&quot; تا سطح پنجم پیش می رود. یکی از راه های تعیین سطح درگیری تمرکز روی زبانی است که تیم از آن استفاده می کند و آن را با توصیفLeas در مورد پنج سطح مقایسه می کنند:سطح 1 (حل مسئله) - زبان دوستانه و سازنده است. مردم برای توجیه دیدگاه های خود از بیانیه های واقعی استفاده می کنند. به عنوان مثال ، اعضای تیم ممکن است اظهاراتی مانند &quot;اوه ، من می بینم که شما اکنون چه می گویید. من هنوز رویکرد دیگر را ترجیح می دهم ، اما پیشنهاد شما را می فهمم.&quot;سطح 2 (عدم توافق) - زبان شروع می شود به حمایت از خود. به عنوان مثال ، اعضای تیم ممکن است جمله هایی را بیان کنند ، &quot;می دانم که فکر می کنید ایده من نیز کار نخواهد کرد ، اما ما آخرین بار رویکرد شما را امتحان کردیم و مشکلات زیادی وجود داشت.&quot;سطح 3 (مسابقه) - اعضای تیم شروع به استفاده از زبان تحریف شده ، مانند کلیات بیش از حد و موقعیت های بزرگ شده می کنند (مانند &quot;او همیشه نسخه ی نمایشی را به دست می گیرد&quot; و &quot;اگر فقط او در تیم نبود ...&quot;).سطح 4 (جنگ صلیبی) - درگیری بیشتر ایدئولوژیک و قطبی تر می شود ، مانند &quot;آنها کاملاً اشتباه هستند&quot; و &quot;حتی صحبت کردن با آنها حتی ارزش ندارد.&quot;سطح 5 (جنگ جهانی) - زبان کاملاً ترکیبی است. اعضای تیم مخالف به ندرت مستقیماً با یکدیگر صحبت می كنند ، در عوض با كسانی كه &quot;طرفشان هستند&quot; صحبت می كنند و احساساتی مانند &quot;ما یا آنها&quot; و &quot;ما باید آنها را ضرب و شتم كنیم&quot; بیان می كنند.2. درگیری سالم را تشخیص دهیدخواندن از طریق لیست به ما یادآوری می کند که چه چیزهای بدی می توانند بدست آید ، بنابراین باید بررسی کنیم که چرا برخی از درگیری ها اشکالی ندارد و در واقع ضروری است.  برای این ، بیایید مدل &quot;پنج اختلال عملکرد یک تیم&quot; پاتریک لنسیونی را بررسی کنیم. برگرفته از کتاب پت با همین نام ، توضیح می دهد که مشکلات از پایه هرم شروع شده و در بالای یکدیگر ایجاد می شوند:سطح اول ، پایه هرم ، سطح 1 است: عدم اعتماد.وقتی عدم تمایل به حضور در گروه وجود داشته باشد (برای مثال ، پذیرش شکاف دانش یا اشتباه) ، اعتماد به نفس در تیم ایجاد نمی شود. این منجر به اختلال عملکرد بعدی می شود ، ترس از درگیری که تیم هایی که اعتماد به نفس ندارند درگیر بحث های نامحدود شوند. در عوض ، آنها فقط به مباحث بسته و اظهار نظرهای محافظت شده متوسل می شوند.این ترس هرم را گسترش می دهد و سایر مشکلات را به وجود می آورد. هنگامی که ترس از درگیری وجود دارد ، منجر به مشکل 3 می شود: عدم تعهد. بدون بحث و گفتگوهای پرشور ، اعضای تیم به ندرت (در صورت وجود) تصمیم می گیرند و متعهد به تصمیم گیری می شوند ، گرچه ممکن است در جلسات توافق نامه ای را تشکیل دهند.این قلب دلایل تضاد سالم مطلوب است. این امکان را برای آزمایش قوی ایده ها می دهد که منجر به تعهد جدی به تصمیم گروه نهایی می شود. وقتی کمبود اعتماد و ترس از درگیری داریم ، تیم ها مرتکب این کار نمی شوند. درعوض ، آنها (در بهترین حالت) از &quot;طرح پروژه&quot; پیروی می كنند ، اما نه رویكرد داخلی (كه همیشه قوی تر و انگیزه بخش تر است).بهترین تیم هایی که با آنها کار کرده ام گفتگوهای مداوم را با چالش بر سر پیشنهادها و تصمیمات یکدیگر قرار می دهند. آنها همیشه به نظر می رسد که مشاجره خوبی دارند. هدف ، درک غیر متصل از فرآیند تصمیم گیری ، آزمایش ایده و ایجاد اجماع است. این نوع درگیری ها مولد و مطلوب است. بنابراین چگونه آنها را تشخیص دهیم؟جدول زیر با انواع بحث های سالم و ناسالم بحث و گفتگو دارد:یک استدلال سالم بر روی ایده خاص ، تصمیم ، داده متمرکز است. استدلال های ناسالم باعث می شود که امور شخصی شود یا از کلیات استفاده شود تا هرگونه فکر یا پیشنهادی را از طرف مقابل رد کند.3. بیاموزید که چگونه فرار کنیدهنگامی که ما این علائم ناسالم از تضاد را می بینیم ، می توانیم برخی از استراتژی های دفع تشدید پیشنهاد شده در مدل پنج سطح اصلی که مورد بررسی قرار داده ایم را امتحان کنیم. این موارد در زیر نشان داده شده است.به عنوان مثال ، اگر نمونه هایی از تضاد سطح 3 (نوع مسابقه) را حس می کنیم ، می توانستیم مذاکره کنیم و به واقعیت ها برسیم. این تلاشی است برای تشدید و تشدید آن از شخصی به واقعیت.4. از خود و دیگران محافظت کنیدنحوه تلاش ما برای حل اختلاف ، ما را به الگوی بعدی خود یعنی شبکه دو نگرانی لنگتون و صدری تبدیل می کند. این مدل حالت های حل اختلاف را ترسیم می کند که روی یک محور ترسیم می شود که &quot;نگرانی برای خود&quot; (محور Y) و &quot;نگرانی برای دیگران&quot; (محور X) را نشان می دهدروش های زیادی وجود دارد که می توان برای حل و فصل اختلافات استفاده کرد. ما می توانیم از قدرت موقعیتی استفاده کنیم و از مردم بخواهیم که بحث را متوقف کنند. روش دیگر ، ما می توانیم سعی کنیم از مردم با صاف کردن مشکل محافظت کنیم و مثلاً کار را انجام دهیم (نمودار پایین سمت راست: سازگاری). با این حال ، هر دو روش فوق مطلوب هستند.درعوض ، ما می خواهیم در رأس فوقانی از نگرانی بالا از خود و نگرانی زیاد دیگران قرار بگیریم. این یک روش مشترک برای حل تعارض است که ما با مسئله روبرو می شویم و امیدوارم آن را حل کنیم. اینها از نظر تئوری خوب به نظر می رسند ، اما ما چگونه با ما برخورد می کنیم و با هم مشاجره را حل می کنیم؟ این ما را به آخرین مدل خود می رساند.5- از مراحل مقابله / حل مسئله استفاده کنید&quot;سه مرحله برای مدیریت درگیری با استفاده از یک رویکرد مقابله / حل مسئله&quot; ترکیبی از مدلهای مختلف حل و فصل تعارض است:مدل سه مرحله ای با مرحله 1 شروع می شود: تعریف مسئله. این شامل به رسمیت شناختن درگیری ، ایجاد زمینه یا اهداف مشترک (مانند &quot;ما هر دو برای سازمان بهترین چیزی را می خواهیم&quot;) و جدایی مسئله از مردم است. مرحله دوم ، مرحله 2 (کشف و ارزیابی گزینه های مختلف) یک مرحله واگرایی است که در آن گزینه های زیادی مورد بررسی و بحث قرار می گیرد. سرانجام ، مرحله 3 (انتخاب بهترین گزینه) مرحله &quot;همگرایی&quot; است که در آن ما در مورد بهترین راه پیش رو توافق می کنیم.همانطور که تصور می کنید ، این ابزارها در بهترین حالت برای یک سفر دشوار نشانه ها هستند. آنها می توانند به ما در جهت یابی به یک قطعنامه کمک کنند ، اما آنها کار سخت گوش دادن به هر دو طرف اختلاف و همدردی با مردم را انجام نمی دهند. این به یک سرمایه گذاری زمان و درک نیاز دارد. همینطور مراحل بعدی برای متقاعد کردن مردم برای رها کردن دلبستگی شخصی به پیشنهادات یا نظرات خود را انجام دهید. بعضی اوقات ، افراد با بالغ شدن ، چیزهای عینی تری می بینند. گاهی اوقات آنها اصولگرا تر و متجلی در تفکر خود می شوند.درگیریها اجتناب ناپذیر هستند. در سطح سالم ، آنها نشانه های یک تیم قوی و پر جنب و جوش هستند که از آزمایش و بهبود ایده ها و تصمیمات خود خوشحال هستند. هرچه درگیری شخصی می شود ، یک طرف آسیب زا و ضد تولید نیز ایجاد می کند. مردم از فاصله دور می شوند و از خود محافظت می کنند. سپس ایده ها به خوبی آزمایش نمی شوند و نقاط و نقاط کور رخ می دهد.راه حل این است که مراقب باشید ، درگیر شوید ، گوش دهید و سعی کنید درگیری هایی را که می بینید در آن تشخیص دهید. با پیگیری کردن به صورت جداگانه ، آزمایش برخی از واقعیت ها را انجام دهید: &quot;به نظر می رسید شما و آلیشا در مورد طرح بحث و گفتگو داشتید. آیا به توافقی رسیده اید که خوب هستید؟ &quot;دانستن اینکه چه زمانی باید آن را رها کنیم و چه زمانی قدم برداریم ، نیمی از نبرد است. استفاده از این ابزارها هنگام نیاز به مشارکت ، می تواند راهنمایی و راهنمایی کند.https://www.leadinganswers.com/2020/07/5-tools-for-team-conflict-resolution.html</description>
                <category>Ehsan Bagheri</category>
                <author>Ehsan Bagheri</author>
                <pubDate>Mon, 27 Jul 2020 12:18:57 +0430</pubDate>
            </item>
                    <item>
                <title>ارسال کد به مخزن داده در بایگانی جهانی</title>
                <link>https://virgool.io/coderlife/%D8%A7%D8%B1%D8%B3%D8%A7%D9%84-%DA%A9%D8%AF-%D8%A8%D9%87-%D9%85%D8%AE%D8%B2%D9%86-%D8%AF%D8%A7%D8%AF%D9%87-%D8%AF%D8%B1-%D8%A8%D8%A7%DB%8C%DA%AF%D8%A7%D9%86%DB%8C-%D8%AC%D9%87%D8%A7%D9%86%DB%8C-pxwyfk1b00q6</link>
                <description>از اول سال خیلی سخت گذشت اتفاقات ناگواری افتاد کرونا و اقتصاد و محل کار و برجامش و این چیزها.   الان دیگه چند سالیه که دنبال اثبات چیزی نیستم. دنبال سایه ها نمیرم میشینم و آدمها رو نگاه میکنم. اما بلاخره یک اتفاق جالب هم افتاد...GitHub Archive Programگیت هاب کد نرم افزار منبع باز خود را در اعماق قطب شمال برای نسل های آینده حفظ می کندشرکت GitHub گفت: امروز یک نسخه از کلیه نرم افزارهای منبع باز را که در وب سایت خود ذخیره شده است ، به یک مخزن داده در بایگانی جهانی Arctic ارسال کرده است ، که یک تأسیسات بایگانی بسیار طولانی مدت است که در عمق 250 متر در اعماق زمین در قطب دفن شده است. این عملیات بخشی از برنامه بایگانی GitHub است ، پروژه ای است که سال گذشته اعلام شد و هدف آن حفظ نرم افزار منبع باز امروز برای نسل های آینده است. GitHub گفت ، برای انجام این کار ، کد خود را در بایگانی به نام GitHub Arctic Code Vault ذخیره می کند ، که به گفته وی ساخته شده است تا هزار سال دوام بیاورد.گیت هاب گفت که این عملیات را با همکاری یک شرکت ذخیره سازی طولانی مدت به نام Piql انجام داده است ، که کلیه محتویات مخازن عمومی فعال آن را کپی کرده و این داده ها را برای 186 حلقه میکروفیلم سخت شده نوشت. سپس این میکروفیلم به جزیره Svalbard در نروژ ، که در داخل دایره قطب شمال واقع شده است ، حمل شد و به یک معدن زغال سنگ منعطف شده در کوهی که هم اکنون در آن بایگانی جهان قطب شمال واقع شده است ، منتقل شد.هنگامی که در آنجا بود ، میکروفیلم رمزگذاری شده درون GitHub Arctic Code Vault قرار داده شد ، یک محفظه عمیق است که در داخل صدها متر permafrost دفن شده است.برای شناخت میلیون ها نفر از برنامه نویسان مشارکت در نرم افزار منبع باز که هم اکنون ذخیره می شود ، GitHub همچنین نشان جدیدی را ایجاد کرده است که در بخش نکات برجسته نمایه هر کاربر نمایش داده می شود.نمونه نشان مشارکتخوب تا اینجا به من ربطی نداشت ولی از اینجا به بعد داستان جالب شد چون دو تا از مخارن منم به پروژه آرشیو جهانی هزار سال آینده پیوست. https://github.com/ehsan2022002/این کدها مربوط به برسی صحت کد ملی و تحلیل صرف و نحو جملات با جاوا بودند. دومی ساده نبود اگر نگیم سخت بود. حس خوب ! یاد این شعر افتادم هرگز نمیرد آن که دلش زنده شد به عشقثبت است بر جریده عالم دوام ماچندان بود کرشمه و ناز سهی قدانکاید به جلوه سرو صنوبرخرام ماای باد اگر به گلشن احباب بگذریزنهار عرضه ده بر جانان پیام ماگو نام ما ز یاد به عمدا چه می‌بریخود آید آن که یاد نیاری ز نام مامستی به چشم شاهد دلبند ما خوش استزان رو سپرده‌اند به مستی زمام ما</description>
                <category>Ehsan Bagheri</category>
                <author>Ehsan Bagheri</author>
                <pubDate>Sun, 19 Jul 2020 21:15:37 +0430</pubDate>
            </item>
                    <item>
                <title>ویراستاری (افزونه افیس برای ورد) بخش سوم</title>
                <link>https://virgool.io/@ehsan2022002/%D9%88%DB%8C%D8%B1%D8%A7%D8%B3%D8%AA%D8%A7%D8%B1%DB%8C-%D8%A7%D9%81%D8%B2%D9%88%D9%86%D9%87-%D8%A7%D9%81%DB%8C%D8%B3-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%88%D8%B1%D8%AF-%D8%A8%D8%AE%D8%B4-%D8%B3%D9%88%D9%85-wr7gad4pgcqb</link>
                <description>ویراستاری منوی خلاصه سازافزایش امکانات خلاصه سازچیزی که تقریبا همه روی آن تاکید دارند استفاده نکردن از رشته ها برای مقادیر ثابت است. من اینجا قصد ندارم تفاوت مقادیر ثابت و یک رشته را ذکر کنم و هر کسی که دوست داشته باشد میتوانید از گوگل جستجو کنددر عوض من دوست دارم به بخشی از کد خلاصه ساز اشاره کنم به دلیل استرس زمان برای تجزیه جملات انگلیسی و فارسی نوشته شده است. به طور خلاصه این بخش به این صورت کار میکند که سعی در برسی حروف جمله و کاراکترها مینماید و در نهایت تمیز میدهد که جمله فارسی یا انگلیسی است.حالا فرض کنید که میخواهیم خلاصه ساز را برای عربی هم توسعه دهیم ابتدا نیاز داریم که تحلیلگر جملات را برای زبان عربی آموزش دهیم و سپس بفهمیم که متن ما به چه زبانی نوشته شده است. مورد اول قبلا انجام شده است.  باید ببینیم متن چه زبانی است.از طرف دیگر، راه فهم کلمات به جستجوی یک فرهنگ لغت بزرگ و اساساً انجام تطبیق قالب بستگی دارد. در اینجا دو اشکال اصلی وجود دارد:1- هر یک از زبان‌ها باید یک فرهنگ لغت گسترده از کلمات را در پرونده داشته باشند که مدت زمان نسبتاً طولانی به جستجو می‌طلبد2- اگر هیچکدام از کلمات موجود در آن نباشد، دنباله های کلمات شکست خواهند خورد. مجموعه آموزش در مجموعه تست‌ها گنجانده شده است.مشکل تشخیص زبان این است که زبان انسان (کلمات) دارای ساختار است. به عنوان مثال، در انگلیسی، معمولاً حرف &quot;u&quot; پیروی از حرف &quot;q&quot; است، در حالی که در عربی اینگونه نیست. n-gram  با گرفتن این ساختار کار می‌کند. بنابراین، ترکیب خاصی از حروف در بعضی از زبانها از سایر زبانها محتمل است. این اساس طبقه بندی n-gram است.انگرام چیست و چرا به آنها احتیاج داریم؟ مفهومی که در پردازش زبان طبیعی (با نام مستعار NLP) یافت شده است. اول از همه ، بگذارید ببینیم اصطلاح &quot;N-gr&quot; به چه معنی است. معلوم است که ساده ترین بیت است ، یک N-gram به سادگی دنباله ای از کلمات N است. به عنوان مثال ، اجازه دهید نگاهی به مثالهای زیر بیندازیم.سان فرانسیسکو (2 گرم است) سه تفنگ دار (یک 3 گرم) او به آرامی ایستاد (4 گرم است)اکنون کدامیک از این سه گرم N به طور مکرر دیده اید؟ احتمالاً ، &quot;سان فرانسیسکو&quot; و &quot;سه تفنگ دار&quot;. از طرف دیگر ، ممکن است شما ندیده باشید که &quot;او آهسته ایستاده باشد&quot;. در اصل ، &quot;او به آرامی ایستاد&quot; نمونه ای از N-گرم است که به طور مثال در جملات به عنوان مثال 1 و 2 رخ نمی دهد.حال اگر احتمال وقوع N-gram یا احتمال وقوع کلمه بعدی را در توالی کلمات ایجاد کنیم ، می تواند بسیار مفید باشد. چرا؟  اول از همه ، این می تواند در تصمیم گیری كدام گروه های N را به صورت یكدیگر متشكل شود (مانند &quot;سان فرانسیسكو&quot; كه به عنوان یك كلمات جمع می شوند ، كمك می كند. همچنین می تواند به پیش بینی کلمات بعدی کمک کند. اگر بگوییم که جزیی از جمله &quot;لطفا دست خود را تحویل دهید&quot; دارید. بنابراین بیشتر محتمل است که کلمه بعدی &quot;تست&quot; یا &quot;واگذاری&quot; یا &quot;کاغذ&quot; باشد تا کلمه بعدی &quot;مدرسه&quot; باشد.  همچنین می تواند به اصلاح خطای املایی کمک کند. برای مثال ، جمله &quot;نوشیدن قهووه&quot; را می توان به &quot;نوشیدن قهوه&quot; اصلاح کرد اگر می دانستید که کلمه &quot;قهوه&quot; احتمال بروز پس از کلمه &quot;نوشیدنی&quot; و همچنین همپوشانی حروف بین&quot;قهووه&quot; و &quot; قهوه زیاد است. همانطور که مشاهده می کنید ، تعیین این احتمالات پتانسیل بسیار زیادی در دامنه NLP دارد.اکنون که این مفهوم را درک کردیم ، می توانیم با آن بسازیم: این مدلN-gram است. در اصل ، یک مدل N-گرم وقوع یک کلمه را بر اساس وقوع کلمات قبلی N - 1 آن پیش بینی می کند. بنابراین در اینجا ما در حال پاسخ دادن به این سؤال هستیم - در تاریخ دنباله ای از کلمات تا چه اندازه باید پیش برویم تا کلمه بعدی را پیش بینی کنیم؟ به عنوان مثال ، یک مدل bigram (N = 2) وقوع کلمه ای را نشان می دهد که فقط کلمه قبلی آن است. مانند N - 1 = 1 در این مورد. به طور مشابه ، یک مدلtrigram (N = 3) وقوع یک کلمه را بر اساس دو کلمه قبلی خود به عنوان N - 1 = 2 در این مورد پیش بینی می کند.بگذارید راهی را برای تخصیص احتمال به کلماتی که در ادامه دنباله ای از کلمات اتفاق می افتد ، ببینیم. اول از همه ، به نمونه بسیار بزرگی از جملات انگلیسی به نام corpus نیاز داریم.به منظور مثال ما ، نمونه بسیار کوچکی از جملات را در نظر خواهیم گرفت ، اما در واقعیت ، یک پیکره بسیار بزرگ خواهد بود. بگویید گروه ما شامل جملات زیر است:گفت تشکر ازت. او با عبور از در گفت خداحافظ. او به سن دیگو رفت. سن دیگو آب و هوای خوبی دارد. در سان فرانسیسکو باران می بارد.بیایید یک مدل bigram فرض کنیم. بنابراین می خواهیم احتمال یک کلمه را فقط بر اساس کلمه قبلی آن بیابیم. به طور کلی ، می توان گفت که این احتمال است(تعداد دفعاتی که کلمه قبلی &quot;wp&quot; قبل از کلمه&quot;wn&quot; رخ می دهد) / (تعداد کل دفعاتی که کلمه قبلی&quot;wp&quot; در بدنه اتفاق می افتد)(Count (wp wn))/(Count (wp))بیایید این کار را با مثال انجام دهیم. برای پیدا کردن احتمال کلمه &quot;ازت&quot; به دنبال کلمه &quot;تشکر&quot; ، می توانیم آنرا به صورت P (ازت | تشکر کنید) بنویسید که یک احتمال شرطی است. این برابر است با:=  (تعداد بار &quot;تشکر&quot; اتفاق می افتد) / (تعداد دفعات &quot;تشکر&quot; رخ می دهد)= 1/1= 1با اطمینان می توانیم بگوییم که هر وقت &quot;تشکر&quot; اتفاق می افتد ، &quot;ازت&quot; دنبال می شود (دلیل این است که ما فقط در یک مجموعه از پنج جمله آموزش دیده ایم و &quot;تشکر&quot; فقط یک بار در متن &quot;تشکر ازت&quot; اتفاق افتاده است).  بیایید نمونه ای از مواردی را مشاهده کنیم که کلمه قبل در متن های مختلف رخ می دهد.بیایید احتمال کلمه &quot;دیگو&quot; را که پس از &quot;سان&quot; آمده است ، محاسبه کنیم. ما می خواهیم P (دیگو | سان) را بیابیم. این بدان معنی است که ما می خواهیم با توجه به کلمه &quot;سان&quot; این احتمال را پیدا کنیم که کلمه بعدی &quot;دیگو&quot; باشد. ما می توانیم این کار را توسط:= (بارها و بارها &quot;سن دیگو&quot; رخ نمی دهد) / (تعداد دفعات &quot;سان&quot; رخ می دهد)= 2/3= 0.67این امر به این دلیل است که در گروه ما ، یکی از سه &quot;سن&quot; قبلی &quot;فرانسیسکو&quot; دنبال می شد. بنابراین ، P(فرانسیسکو | سان) = 1/3.در گروه ما ، فقط &quot;دیگو&quot; و &quot;فرانسیسکو&quot; بعد از &quot;سان&quot; با احتمالات 2/3 و 1/3 اتفاق می افتند. بنابراین اگر بخواهیم یک نرم افزار پیش بینی کلمه بعدی را بر اساس بدنه خود و انواع کاربر در &quot;سان&quot; ایجاد کنیم ، دو گزینه خواهیم داشت: &quot;دیگو&quot; به احتمال زیاد و &quot;فرانسیسکو&quot; به احتمال زیاد رتبه بندی نشده است.به طور کلی ، مدل bigram خوب کار می کند و ممکن است نیازی به استفاده از مدل های تریگرام یا مدلهای N-گرم بالاتر نباشد.حدس زدن کلمات بعدیبرگردیم به بحث اصلی با فرض اینکه از bigrams استفاده می‌کنید (n = 2) و در حروف الفبای شما 26 حرف وجود دارد، پس فقط 26 ^ 2 = 676 مورد برای آن الفبا وجود دارد که بسیاری از آنها هرگز رخ نمی‌دهند. بنابراین، &quot;پروفایل&quot; (برای استفاده از کلمات ردیاب زبان) برای هر زبان به یک بانک اطلاعاتی بسیار کوچک نیاز دارد. یک طبقه بندی کننده کلمات از کلمات، از طرف دیگر به یک فرهنگ لغت کامل برای هر زبان نیاز دارد تا بتواند اطمینان حاصل کند که یک زبان بر اساس هر جمله گفته شده قابل تشخیص است.  به طور خلاصه - هر پروفایل زبان می‌تواند به سرعت با یک فضای ویژگی نسبتاً کوچک تولید شود. جالب اینجاست که n-gram فقط به این دلیل کار می‌کند که حروف به یک زبان ترسیم نمی‌شوند.   بنابراین سیستم مبتنی بر محاسبه و مقایسه پروفایل های زبان فرکانس های N-gr است. این سیستم با استفاده از داده های آموزشی برای زبان مورد نظر ، یک پروفایل زبان برای N-gram ها ایجاد می کند و بعداً از این پروفایل ها برای شناسایی آن استفاده می کند. با توجه به اینکه یک سند جدید برای طبقه بندی وجود دارد ، سیستم نمایه N-gram این سند (مشخصات سند) را محاسبه می کند و فاصله این پروفایل سند و پروفایل های زبان را برای همه زبانهای پشتیبانی شده مقایسه می کند. مشخصات زبان با حداقل فاصله برای نشان دادن زبان شناسایی شده در نظر گرفته می شود.با توجه به مطالب فوق یک پروژه جدید برای تشخیص زبان تعریف میکنیم و کد را تغیر داده و در این مورد انتخاب زبان را به کاربر نشان میدهیم . با برسی کد خواهید دید که خلاصه ساز به سادگی به زبانهای روسی و المانی و غیره نیز قابل توسعه است.این نوشتار و این بخش بسیار طولانی شده است با امید به اینکه فرصتی دست بدهد و باز هم در خدمت شما باشم .دانلود برنامه از طریق زیر میسر استhttps://github.com/ehsan2022002/VirastarE</description>
                <category>Ehsan Bagheri</category>
                <author>Ehsan Bagheri</author>
                <pubDate>Fri, 10 Jul 2020 22:13:22 +0430</pubDate>
            </item>
                    <item>
                <title>ويراستاری (افزونه افيس برای ورد) بخش دوم</title>
                <link>https://virgool.io/@ehsan2022002/%D9%88%D9%8A%D8%B1%D8%A7%D8%B3%D8%AA%D8%A7%D8%B1%DB%8C-%D8%A7%D9%81%D8%B2%D9%88%D9%86%D9%87-%D8%A7%D9%81%D9%8A%D8%B3-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%88%D8%B1%D8%AF-%D8%A8%D8%AE%D8%B4-%D8%AF%D9%88%D9%85-l4xyyxkzte7t</link>
                <description>نمای ویراستاری در ورد 2019بخش اول به معرفی اجمالی برنامه متن باز &quot;ويراستاری&quot; اختصاص داده شد و در اين بخش هم يکی ديگر از این امکانات را شرح خواهم داد که در حیطه متن کاوی و داده کاوی قرار دادتاپیک مدلینگ (مدل سازی موضوع)مدل سازی موضوع ارائه یک راه ساده برای تجزیه و تحلیل حجم زیادی از متن بدون برچسب است. &quot;موضوع&quot; شامل خوشه ای از کلمات است که غالباً در کنار هم اتفاق می افتند. با استفاده از سرنخ های متنی ، مدل های موضوع می توانند کلمات را با معانی مشابه مرتبط کرده و بین کاربرد واژگان با معانی متعدد تمایز قائل شوندبرای اینکه دیتای متنی بدون شکل unstructured textual data را متوجه شوید یک مثال میزنم. فرض کنید یک صفحه وب داریم مانند فروش یک محصول موبایل یا یک بلیت قطار و غیره که کاربران متنهایی را در بخش نظرات درج میکنند. این نظرات مختلف هستند. هر کسی آزادانه شروع به نوشتن میکند. مثلا برای موبایل در مورد باطری ثبت نظر میکند یا در مورد سبک بودن و قیمت نظر میدهند. در مورد بلیت قطار کاربران در خصوص رستوران قطار نظر میدهند یا در خصوص مهماندار و یا زمانبندی و هزاران چیز دیگر نظر میدهند.  بعد از مدتی شما مقدار زیادی نظر دارید و اصلا نمیدانید باید با آنها چه کنید.تاپیک مدلینگ نوعی از مدل آماری برای تعیین &quot;موضوعات&quot; انتزاعی است که در مجموعه اسناد رخ می دهد. مدل سازی موضوع ابزاری برای استخراج متن است که در کشف ساختار معنایی پنهان در یک متن استفاده می شود.  با توجه به اینکه یک سند در مورد یک موضوع خاص است ، انتظار می رود که کلمات خاصی کم و بیش در سند ظاهر شوند. یک سند به طور معمول به موضوعات مختلف در نسبت های مختلف مربوط می شود بنابراین ، در سندی که 10٪ در مورد&quot;A&quot; و 90٪ در مورد &quot;B&quot; باشد ، احتمالاً حدود 9 برابر کلمه &quot;B&quot; از کلمات&quot;A&quot; وجود دارد.  &quot;مباحث&quot; كه توسط تكنيك هاي مدل سازي موضوع برگشته اند ، خوشه هاي كلمات مشابه هستند.  یک مدل موضوع این مفهوم را در یک چارچوب ریاضی ضبط می کند ، که امکان بررسی مجموعه ای از اسناد و مدارک را فراهم می کند ، بر اساس آمار کلمات مورد استفاده در هر سند ، چه مباحث ممکن است باشد و چه تعادل مضامین هر سند.مدل های موضوعی همچنین به عنوان مدل های موضوعی محتمل توصیف می شوند ، از الگوریتم های آماری که برای کشف ساختار معنایی نهفته در یک متن گسترده استفاده می شود استفاده میکنند. در این عصر اطلاعات ، درک مجموعه های بزرگ از متن های بدون ساختار از متن به دلیل میزان محتوای نوشتاری که هر روز با آن روبرو می شوید ، فراتر از ظرفیت پردازش فرد است.  مدلهای موضوعی می توانند به سازماندهی مطالب نوشتاری و بینش کمک کنند. از مدل های موضوع برای تشخیص ساختار &quot;آموزنده&quot; در داده هایی مانند اطلاعات ژنتیکی ، تصاویر و شبکه ها استفاده شده است. آنها همچنین در زمینه های دیگری مانند بیوانفورماتیک کاربردهایی دارند.مدل سازی موضوع نوعی روش شناسایی بزرگ برای تجزیه و تحلیل داده ها برای کشف موضوعات انتزاعی است که به طور مکرر در یک مجموعه از اسناد رخ می دهد. هنگام نوشتن مقاله ، نویسنده کلمه کلیدی خاصی را در ذهن خود دارد ، این کلمه کلیدی در کل مقاله تکرار می شود. مجموعه کلمات کلیدی به عنوان یک ترکیب محدود بر روی یک مجموعه اساسی از احتمالات موضوع مدل سازی شده است ، و سپس یک موضوع نهفته در یک سند خاص بازگردانده می شود. بنابراین تجزیه و تحلیل داده های بزرگ تنها با مقدار کمی کد نویسی امکان پذیر است. کاوش متن نه تنها روشی مناسب برای شناسایی ساختار یک متن و استخراج مفاهیم است ، بلکه برای تجسم نیز مفید است. متن کاوی برای تعیین روند ژورنال ها ، خدمات شبکه های اجتماعی مانند توییتر و وبلاگ ها ، انواع مشتری (از طریق بررسی های آنلاین) و گفتمان داده های بزرگ در رسانه های خبری استفاده می شود.برای استفاده از این امکان در برنامه &quot;ویراستاری&quot; یک فایل متنی با فرمت UTF8 ایجاد میکنیم که شامل مطالبی است که میخواهیم پردازش شود. سپس مسیر خروجی را هم انتخواب میکنیم و سپس کلید اجرا را میزنیم. بعد از اینکه پردازش تمام شد فایلها در مسیر خروجی قابل مشاهده است.  برای اطلاعات بیشتر یا تغیر تنظیمات Topic Modeling را در وب جستجو کنید.نمای ویراستاری با پنجره استخراج عناوینبرای مثال با در خصوص فروش یک محصول موبایل بعد از آنالیز ممکن است متوجه شویم که اکثر کاربران ما به کیفیت مکالمه گوشی اهمیت میدهند و ارتباط اینترنت برای آنها مهم بوده است.  یا برای مثال فروش بلیط قطار با آنالیز متنی متوجه میشویم که سروصدا برای کاربران ما اهمیت داشته است.این ابزار به صورت خلاصه و چکیده معرفی و ارائه شده است. امیدوارم که با هم فرصتی دست دهد تا با نوشتاری جدید در خدمت شما باشم.دانلود از طریق زیر میسر استhttps://github.com/ehsan2022002/VirastarE</description>
                <category>Ehsan Bagheri</category>
                <author>Ehsan Bagheri</author>
                <pubDate>Sun, 07 Jun 2020 09:04:37 +0430</pubDate>
            </item>
                    <item>
                <title>ویراستاری (افزونه افیس برای ورد) بخش اول</title>
                <link>https://virgool.io/@ehsan2022002/%D9%88%DB%8C%D8%B1%D8%A7%D8%B3%D8%AA%D8%A7%D8%B1%DB%8C-%D8%A7%D9%81%D8%B2%D9%88%D9%86%D9%87-%D8%A7%D9%81%DB%8C%D8%B3-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%88%D8%B1%D8%AF-%D8%A8%D8%AE%D8%B4-%D8%A7%D9%88%D9%84-jkbbzjrbuev0</link>
                <description>نمای ویراستاری در ورد2019ما در دنیای دیجیتالی زندگی میکنیم که با نوشته های مختلف محصور شده است. من در گذشته افزونه ویراستار را در سیستم خودم نصب داشتم ولی بعد از مدتی به دلیل ناکارآمدی و به روز شدن آفیس مجبور شدم که استفاده از آنرا رها کنم اصلا ویراستار چه چیزی است یا بهتر بگوییم بود ؟ نرم‌افزار ویراستیار افزونه‌ای برای مایکروسافت وُرد (Microsoft Word) است که قابلیت‌های متعددی را برای کاربران فارسی زبان فراهم می‌کند. نرم‌افزار ویراستیار امکان پشتیبانی از نسخه‌های متفاوت مایکروسافت وُرد و ویندوز را دارا است. از قابلیت‌های ویراستار می‌توان به غلط یاب املایی، اصلاح نویسه‌های متن، اصلاح نشانه‌گذاری، تبدیل تقویم و تاریخ، تبدیل پینگلیش، پیش پردازش املایی متن، تبدیل اعداد و... اشاره کرد.در حقیقت امکاناتی مثل پینگلیش (فینگلیش) یا تبدیل تاریخ هیچ وقت نظر من را جلب نکرد. افراد دیگر شروع به تلاشهایی برای سازگاری با آفیسهای نسخ بالاتر کرده بودند ولی به نظر من جالب نبود. چیزی که من در نظر داشتم به شکل زیر بودبازبینی املای کلمات یکی از نیازهای روزانه برای نامه ها ایمیل و موارد دیگر محسوب میشود. برای این مورد باید یکی دو الگوریتم توسعه داده میشد. در برخی برنامه ها الگوریتم از فاصله حروف استفاده میکنند. الگوریتمی که استفاده شد(نورویگ) ترکیبات کلمه را بازبینی میکند بنابر این ترکیبات دقیقتری به دست میدهد. من همینطور ساندکس رو برای مشابهت یابی فارسی توسعه دادم.  این بخش کلا با برنامه ویراستار قبل متفاوت است. و به نظر من بسیار مهم است. چرا ؟ چون این دو به شکل متن باز کاربرد بسیاری برای همه برنامه هایی که با متن سروکار دارند دارد. برنامه هایی مانند آنالیز نظرات کاربران گرفته تا او سی ار فارسی همه نیاز به این دارند تا دقت خود را بالا ببرند.بازبینی انشای کلمات به نظر من کارهایی زیادی وجود دارد که باید انجام شود ولی فعلا به دلیل کمبود شدید وقت به قواعد کلیشه ای جملات فارسی اکتفا شده است. همانند ویراستار . احتمالا در نسخه های بعدی شاهد حضور هوش مصنوعی در این بخش خواهید بود. خلاصه متن یکی از برنامه های پردازش زبان طبیعی (NLP) است که باید تأثیر بسزایی در زندگی ما داشته باشد.چه کسی فرصت دارد کل مقاله ها / اسناد و کتاب ها را طی کند تا تصمیم بگیرد که آنها مفید هستند یا نه؟ خوشبختانه - این فناوری در حال حاضر در اینجا است. جمع بندی خودکار متن یکی از چالش برانگیزترین و جالب ترین مشکلات در زمینه پردازش زبان طبیعی است. این فرآیند تولید خلاصه متن مختصر و معنی دار از متن متن از منابع متن مانند کتاب ، مقالات خبری ، پست های وبلاگ ، مقالات تحقیقاتی ، ایمیل و توییت است. فعلا پردازش خلاصه ساز به مقادیری محدود شده است. توضیح زیادی در این خصوص نیاز هست اگر چه یک دکمه بیشتر نیست. امیدوارم که فرصتی پیش بیاد و به دوستان پاسخ بهتری داده شود. تا اینجا این امکانات در ذهن من بود و به معرفی اجمالی پرداخته شد. امیدوارم که فرصتی دست دهد و با توضیحات بیشتری در خدمت شما باشم.  دانلود از طریق زیر میسر است https://github.com/ehsan2022002/VirastarE</description>
                <category>Ehsan Bagheri</category>
                <author>Ehsan Bagheri</author>
                <pubDate>Tue, 02 Jun 2020 17:31:49 +0430</pubDate>
            </item>
            </channel>
</rss>