<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های فاطمه رجبی</title><link>https://virgool.ir/feed/@fatemeh.rajabi</link><description>من فاطمه رجبی، دانشجوی مهندسی کامپیوتر دانشگاه امیرکبیر هستم. در اینجا خلاصه مطالبی که بهشون علاقه دارم رو با دیگران به اشتراک می گذارم.</description><language>fa</language><pubDate>2026-11-11 16:13:40</pubDate><image><url>https://files.virgool.ir/upload/users/36398/avatar/XwC6EN.png</url><title>فاطمه رجبی</title><link>https://virgool.ir/@fatemeh.rajabi</link></image><item><title>خلاصه کتاب تنها راز موفقیت</title><link>https://virgool.ir/@fatemeh.rajabi/خلاصه-کتاب-تنها-راز-موفقیت-l416sxr7c4kr</link><description>تصویر جلد کتاب تنها راز موفقیتدر ادامه خلاصه‌ای از نکاتی که در مورد کتاب &#34;تنها راز موفقیت&#34; برام جذاب بود رو باهاتون به اشتراک می گذارم. امیدوارم براتون کاربردی و مناسب باشه.فصل 1: خوردن بی موقع مارشمالو، با شکست فرقی ندارد.مارشمالوها همان کارهایی هستند که لذت آنی ایجاد می‌کنند، اما اگر کنار گذاشته شوند، در دراز مدت می‌توانند موفقیت و لذت بیشتری را به ارمغان بیاورند. مثل شیرینی که اگر نخورید در دراز مدت، به حفظ سلامت خود کمک کرده‌اید.فصل 2: انسان موفق به قول خود وفادار است.اگر امروز به خود قول بدهید که دیگر مارشمالو نخورید بعد از پنج سال کجا خواهید بود؟فصل 3: تمرین مقاومت در برابر مارشمالوگاندی می‌گوید: توانایی من حتی از یک انسان عادی هم کمتر است و من بیشتر از یک انسان نیستم. پس همه می‌توانند به آنچه من بدان دست پیدا کرده‌ام برسند. به شرطی که به اندازه‌ای که من تلاش کردم تلاش کنند و اعتماد به نفس را در خود پرورش دهند.نخوردن مارشمالو سخته اما با فکر کردن به نتیجه دراز مدتش، نخوردن اون راحت‌تر میشه.زندگی پر از اتفاقاتیه که از کنترل ما خارجه اما عکس العمل ما در مقابل آن‌ها همیشه در محدوده کنترل ماست.آدم‌های موفق کارهایی رو انجام می‌دهند که آدم‌های ناموفق حاضر نیستند آن‌ها را انجام بدهند.برای اینکه دیگران چیزی که می‌خواهید را به شما بدهند باید به شما اعتماد کنند. بهترین کار برای اینکه دیگران را به کاری وادار کنید این است که روی آن‌ها تاثیر بگذارید.فردی در برابر قله کوهفصل 4: ارهایی که افراد موفق حاضرند آن‌ها را انجام دهند.موفقیت به گذشته و شرایط کنونی شما بستگی ندارد بلکه وابسته به این است که الان چقدر حاضرید کارهایی را انجام دهید که برای موفقیت ضروری است.مارشمالوهای زندگی من چیست؟برای اینکه فردا موفق شوم، امروز باید چه کارهایی انجام دهم؟فصل 5: توجه به اصل سی ثانیه برای چند برابر کردن مارشمالوهامهم‌ترین کار در هر حیطه‌ای این است که با دیگران ارتباط برقرار کنید. انسان‌ها در همان سی ثانیه اول که شما را می‌بینند تصمیم می‌گیرند که با شما ارتباط خود را حفظ کنند یا نه. بیست درصد موفقیت یک فرد در یک حوزه به خاطر دانش اوست و هشتاد درصد به خاطر چگونگی برقرار کردن ارتباط با دیگران است.فصل 6: مدل ذهنی مارشمالویی و هدیه‌ای به ازای تأخیر در خوردن مارشمالوارتباطات خود را با افرادی که مارشمالوخور هستند کمتر کنید و این روابط را جایگزین کنید.به پیشرفت خود نمود عینی بدهید مثلا نموداری بکشید که نتیجه نخوردن مارشمالوها را برای شما به تصویر بکشد.اهداف خود را بنویسید. برای رسیدن به این اهداف، چه کارهایی باید انجام دهید؟فصل 7: طعم خوب مارشمالو: هدف + اشتیاق = آسایشگاهی در این مسیر به خودتون استراحت هم بدهید. گاهی خوردن یک مارشمالو اشکالی ندارد.هر چی بیشتر روی هدف تمرکز کنی، بیشتر مشتاقش می‌شی و نگرانی‌هات درباره رسیدن به هدف کمتر میشه. در نتیجه، قدم زدن در راه رسیدن به هدف احساس آرامش رو بهت میده.آرامش فکری = هدف + اشتیاقفصل 8: مارشمالوهای گرم و تازهبه کارهایی که به آن‌ها علاقه دارید و در آن‌ها استعداد دارید توجه کنید. فصل 9: یادداشت پایانیهمه ما انسان هستیم و در مسیر موفقیت نباید به این نیازهای انسانی بی‌توجه باشیم.برای خود جایزه‌ای تعیین کنید که به ازای هر کاری که انجام می‌دهید به خود جایزه‌ای را که از قبل تعیین کرده‌اید بدهید. این کار انگیزه انجام کار را در شما بیشتر می‌کند.ببینید چه چیزهایی برایتان جالب است و متناسب با امکانات خود جایزه‌ای را در نظر بگیرید. با خودتان قرار بگذارید که اگر این کار را تا زمان مشخص شده انجام دادم، آن گاه این جایزه را به خودم می‌دهم.کار اصلی مغز حفظ حالت موجود است. بنابراین مغز حداکثر تلاش خود را می‌کند تا همیشه در حالت فعلی بمانیم و پیشرفت یا پسرفتی نکنیم.زمانی که کاری را برای اولین بار انجام می‌دهیم، مغز انرژی زیادی صرف انجام آن کار می‌کند. اما با ایجاد عادت، مصرف انرژی در مغز کاهش می‌یابد و کارها به صورت ناخودآگاه انجام می‌شود.مارشمالوها:مسائل مالی:رابرت کیوساکی: انسان‌های ثروتمند از درآمد خود برای سرمایه گذاری و خرید دارایی استفاده می‌کنند تا بتوانند سود بدست آورند و از سود آن وسایلی مانند اتومبیل و ... خریداری می‌کنند. انسان‌های فقید با درآمدشان این کار را می‌کنند و به سرمایه گذاری و پس انداز توجه ندارند.توجه به عزیزانکنترل خشم:تقریباً تمام انسان‌ها در زمان خشم رفتاری از خود نشان می‌دهند که بعداً از آن پشیمان خواهند شد. در دوره‌های کنترل خشم شرکت کنید و درباره‌ی آن مطالعه کنید.ارتباطات و نه گفتن:جیم ران: شما در هیچ چیز از پنج نفر اول اطرافیانتان بالاتر نخواهید رفت. نه در موفقیت و ثروت و نه در اعتقادات و هیچ چیز دیگری.لیست اقدام برای ایجاد روابط بهترسرمایه گذاری نکردن روی خودسخت‌ترین مارشمالوی دنیا فکر کردن برای حل مسئله است. در مورد آن مهارت‌های حل مسئله و تفکر جانبی را بیاموزید.لیست اقدامی که با خوندن این کتاب به ذهنم میاد:چه مارشمالوهایی در زندگی من هست؟اون‌ها رو با چه چیزی می‌تونم جایگزین کنم؟می‌تونم ازشون عادت بسازم؟چه جایزه‌هایی به خودم می‌تونم بعد نخوردن مارشمالو بدم؟چه روابط مناسبی می‌تونم بسازم؟مهارت حل مسئله و کنترل خشم رو یاد بگیرم.</description><category>فاطمه رجبی</category><author>فاطمه رجبی</author><pubDate>Tue, 06 Sep 2022 16:46:15 +0430</pubDate></item><item><title>مدل مارپیچ در مهندسی نرم افزار (Spiral)</title><link>https://virgool.ir/coderlife/مدل-مارپیچ-در-مهندسی-نرم-افزار-spiral-fh30db6ec31q</link><description>مدل حلزونی یا مارپیچ (Spiral) توسط بری بوهم (Barry Boehm) در سال 1986 خلق شد. این مدل یکی از قدیمی ترین مدل های توسعه نرم افزار است که از رویه ای چرخشی (iterative) در توسعه نرم افزار استفاده می کند. طرح اصلی این مدل این است که با توسعه نرم افزار به شیوه چرخشی، می توان ریسک ها را شناسایی کرد و راحت تر آن ها را مدیریت کرد. اگر بخواهیم این مدل را روی خطی صاف بکشیم، به تعدادی مرحله می رسیم که به صورت آبشاری تکرار می شوند. هر یک از این آبشارها شامل چهار مرحله است: برنامه ریزی، تحلیل ریسک، مهندسی و ارزیابی.نمایش مدل حلزونی به صورت خطیخروجی هر چرخه ورودی چرخه بعدی می باشد و هر مارپیچ روی مارپیچ قبلی ساخته می شود. هر چرخه متفاوت از چرخه قبلی است زیرا در هریک، دانش و آگاهی ما نسبت به نیازمندی ها بیشتر می شود و می توان ریسک ها را به شیوه بهتری کاهش داد. همچنین مدیریت ریسک بخش جدایی ناپذیر از مدل حلزونی می باشد.مدل چرخه زندگی حلزونیمرحله اول این مدل، برنامه ریزی می باشد. این فاز شامل تشخیص نیازمندی ها، تحلیل و بررسی، شناسایی ذی نفعان و اهداف چرخه های سیستم در حال ساخت، می باشد. همچنین، با تعیین شرایط برد-برد، حدود موفقیت تیم مشخص شود و تست پذیرش تعیین می شود.مرحله دوم، تحلیل ریسک نام دارد و شامل فعالیت هایی مانند تشخیص ریسک ها، الویت بندی و کاهش آن ها است. در این مرحله نمونه اولیه (prototype) ساخته می شود و برای برخی مسائل، فعالیت های جایگزین در نظر گرفته می شود تا ریسک به حداقل برسد.مرحله سوم، مهندسی سیستم انجام می شود که شامل طراحی دقیق، توسعه، انجام تست واحد و تست پذیرش و استقرار نرم افزار (deployment) می باشد. در چرخه های اولیه، ممکن است فقط طراحی سیستم انجام پذیرد و در چرخه های بعدی وارد بخش توسعه و توزیع راه حل مناسب برای سیستم خود شوید.در مرحله ارزیابی، ذی نفعان برای بررسی کار، ارائه بازخورد و برنامه ریزی چرخه بعدی حاضر می شوند. در چرخه آبشاری اول، می توانید فقط نمونه اولیه تولید کنید تا در سریع ترین زمان، بازخورد مناسب دریافت کنید. چرخه دوم، بر روی هر آنچه در چرخه قبل ساخته شده، پیاده می شود و در این چرخه کاندیدای نشر (release candidate) ارائه می شود و در چرخه سوم، راه اندازی (launch) اتفاق می افتد.مراحل توسعه در مدل حلزونی در این نمودارها، محور افقی نشان دهنده میزان کاری است که بررسی و تأیید شده است و محور عمودی، نشان دهنده ی مجموع هزینه های محصول در حال ساخت، می باشد. همان طور که مشخص است، ابعاد شکل حلزونی متناسب با زمان افزایش می یابد.در نهایت، این مدل، در دوران خود پیشرو محسوب می شد زیرا ذات چرخشی مهندسی نرم افزار را درک کرده بود، چیزی که فرآیندهای چابک چند سال بعد متوجه آن شدند. بنابراین، این مدل از زمان خود بسیار جلوتر بوده است. ساخت نمونه اولیه، در مدل مارپیچ، بسیار مورد استفاده است و تمرکز و تحلیل ریسک، باعث کاهش احتمال شکست پروژه می شود.منبع: SDLC</description><category>فاطمه رجبی</category><author>فاطمه رجبی</author><pubDate>Thu, 20 Aug 2020 17:37:33 +0430</pubDate></item><item><title>رویکرد آبشاری در مهندسی نرم افزار</title><link>https://virgool.ir/coderlife/رویکرد-آبشاری-در-مهندسی-نرم-افزار-zkauuoa0axls</link><description>در این متن به بررسی رویکرد آبشاری، ریشه، مزایا و معایب آن می پردازیم. این رویکرد نگاه ساده و بدیهی به ساخت نرم افزار دارد. در ابتدا به جمع آوری نیازمندی های پروژه می پردازیم. پس از تکمیل نیازمندی ها، طراحی سیستم تکمیل می شود و پس از آن توسعه و آزمون سیستم انجام می پذیرد.ریشه این رویکرد از صنعت تولید گرفته شده است. زمانی که به صنعت تولید و ساخت فکر می کنیم، یک واحد تولیدی به ذهن مان می آید که یک محصول مشخص را به شیوه ای ثابت تولید می کنند. تمام برنامه ریزی ها، با جزئیات، از پیش انجام شده و حدود کار مشخص شده است. بیشتر فرآیند اتوماتیک است و شامل چک لیست ها، فرآیندها و ابزارهای دقیق و مشخص می باشد. الگوی کلی در این سیستم ها بدین صورت است که خروجی هر فاز، ورودی فاز بعدی خواهد بود. بنابراین، اگر خطایی در یکی از مراحل ساخت رخ دهد، بر روی تمام مراحل دیگر نیز اثر خواهد گذاشت. برای مثال، اگر نیازمندی ها ناقص یا اشتباه باشند، این نیازمندی ها وارد فاز طراحی شده و باعث اشتباه در این فاز نیز خواهند شد و در انتها نرم افزاری خواهیم داشت که یا به اشتباه توسعه یافته و یا از لحاظ برخی ویژگی ها ناقص است. در پروژه هایی که از رویکرد آبشاری استفاده می کنند، مراحل پروژه از پیش تعیین شده می باشد، زیرا نیاز است که پیش از شروع هر مرحله، مرحله قبلی به طور کامل به پایان رسیده باشد. در پروژه هایی که از این رویکرد استفاده می کنند، می بایستی به خوبی مستند سازی انجام شود. در شکل زیر می توانید چرخه تولید نرم افزار در رویکرد آبشاری را مشاهده نمایید:چرخه ساخت نرم افزار در رویکرد آبشاریاین چرخه با بررسی نیازمندی ها آغاز می شود. در این مرحله تمام نیازمندی های پروژه مشخص می گردد. سپس به تحلیل و طراحی سیستم می پردازیم و در این فاز یک طراحی سطح بالا از سیستم ساخته شده و تست پذیرش برای سیستم، آماده می شود. در ادامه وارد فاز توسعه می شویم و سیستم نرم افزاری را می سازیم. پس از آن تست سیستم انجام می شود و خروجی های سیستم را با خروجی های مورد انتظار مقایسه می کنیم و تست هایی که در مراحل قبلی تهیه شده اند، در این مرحله برای کنترل سیستم مورد استفاده قرار می گیرند. در انتها، وارد فاز توزیع و نگهداری سیستم نرم افزاری شده و از نرم افزار منتشر شده به طور پیوسته، نگهداری می کنیم. خروجی فاز قبلی، ورودی فاز بعدیست. برای مثال، ورودی فاز تحلیل و طراحی، خروجی فاز جمع آوری نیازمندی ها می باشد.اما ایرادات این رویکرد چیست؟ اولین و مهم ترین مشکل این رویکرد، این است که مشتری نمی تواند تا مرحله تست، که معمولا رسیدن به این مرحله، دو سوم کل زمان پروژه به طول می انجامد، محصول نهایی را ببیند. به دلیل طولانی بودن بازه ساخت نرم افزار، ممکن است در مرحله توزیع و نگهداری سیستم، متوجه شوید که نرم افزاری که در حال کار بر روی آن هستید، با توجه به تغییرات بازار یا هر تغییر دیگری قابل استفاده، رشد و ترقی نیست و یا به دلیل اشکال در معماری سیستم امکان توزیع آن وجود ندارد. به عبارت دیگر، با وجود هزینه و زمان زیادی که صرف پروژه شده است، پروژه به شکست می انجامد.همه چیز، پیوسته در حال تغییر است از جمله، افراد، مهارت ها، محیط، قوانین دنیای تجارت و ... . با گذشت زمان، افراد تکنیک ها و روش های بهتری برای انجام کارها پیدا می کنند. ذی نفعان، نیاز دارند که بتوانند نیازمندی های سیستم را تغییر دهند تا خود را با تغییر در شرایط بازار یا تغییر در استراتژی های سازمانی تطبیق دهند. به عبارت دیگر، می توان تضمین کرد که تنها چیزی که در طول فرآیند ساخت نرم افزار ثابت می باشد، تغییر است.فرآیند ساخت یک نرم افزار، به طور ذاتی، فرآیندی چرخه ایست نه یک فرآیند آبشاری. فرآیندی انسان محور که به قضاوت و خلاقیت افراد نیاز دارد و تاکید بر چک لیست ها و تعیین قوانین دقیق نمی تواند به بهبود این فرآیند کمک کند.پروژه هایی که از رویکرد آبشاری استفاده می کردند، یکی پس از دیگری به شکست می انجامیدند. بسیاری از سازمان ها با این شکست همانند شکست در تولید یک محصول کارخانه ای برخورد کردند. بنابراین، تلاش کردند مستند سازی بیشتری برای تولید محصول به کار ببرند. در حالی که مستند سازی بیشتر، برای ذی نفعان ارزشی ایجاد نمی کند. برخی از گروه ها شروع به ساخت چک لیست های مفصل و دقیق کردند تا نرم افزارهایی با کیفیت بالا تولید کنند. زمان زیادی صرف تولید هریک از این چک لیست ها می شد، اما از یک دستور یا چک لیست ثابت برای ساخت همه نرم افزارها نمی توان استفاده کرد. بنابراین، به جای زمان گذشتن بر روی ساختن چک لیست ها و مستند سازی های بسیار دقیق، باید بیشتر زمان بر روی ساخت نرم افزاری که قابل استفاده و در حال پیشرفت است، گذاشته شود.اما در چه پروژه هایی می توان از این رویکرد استفاده کرد؟ رویکرد آبشاری هنوز برای پروژه های ساده و کوچک قابل استفاده است. همچنین، ارتقا سیستم های نرم افزاری، در فاز نگهداری به کمک رویکرد آبشاری قابل انجام می باشد. به خصوص زمانی که تیم توسعه اطلاعات خوب و کافی در مورد هدف نرم افزار داشته باشند و ذی نفعان تجاری و فنی به خوبی بتوانند با یکدیگر کار کنند. علاوه بر این، از رویکرد آبشاری در ساخت نرم افزارهای حیاتی و مهم می توان استفاده کرد. نرم افزارهایی که باید آزمون ها و چک لیست های متعددی را بگذرانند زیرا اختلال در این سیستم ها می تواند خسارات زیادی به بار آورد. مثلا نقص در این گونه سیستم ها می تواند باعث ایجاد جراحت در یک انسان شود. بنابراین نیازمند مستند سازی بسیار زیادی هستند.در انتها، می توان نتیجه گرفت که اگرچه این رویکرد در دوران خودش انقلاب بزرگی در مهندسی نرم افزار به وجود آورد، اما اگر استفاده از این رویکرد، متناسب با نیازمندی ها و هدف پروژه نباشد، می تواند منجر به شکست در پروژه شود و خسارات زیادی برجای گذارد و در صورتی که این رویکرد در محل درست و به شیوه ای صحیح استفاده گردد می توان یک سیستم نرم افزاری مناسب ایجاد کرد و به موفقیت رسید.</description><category>فاطمه رجبی</category><author>فاطمه رجبی</author><pubDate>Sun, 09 Aug 2020 12:26:30 +0430</pubDate></item></channel></rss>