یکشنبه, ۳۰ دی, ۱۴۰۳ / 19 January, 2025
چرا برنامه نویسان از ابزارهای CASE استفاده نمی كنند
چرا از كامپیوتر برای كمك به مهندسان نرمافزار استفاده نكنیم؟ مشكلات منطقی بسیار كوچك در برنامه، میتواند مشكلات بزرگی را به همراه داشته باشد. computer aided software engineering)CASE) یا ابزارهای كمكی مهندسان نرمافزار، از آن جهت كه قادرند در كمترین زمان، در تهیه و مدیریت نرمافزار به مهندسان نرمافزار كمك كنند، قادرند نقش مهمی را در صنعت نرمافزار داشته باشند. ولی سؤال این است كه چرا اغلب تهیهكنندگان نرمافزار، از این ابزارها استفاده نمیكنند؟ چرا برخی با ابزارهای CASE گرانقیمت فقط پروژههای ساده طراحی میكنند؟ آیا واقعا مشكل از ابزار است یا از استفادهكنندگان آن؟
در جواب این پرسش میتوان هر دو جواب را درست دانست. برخی از مشكلات موجود در ابزارهای تولیدكننده نرمافزار، از قبیل: سادگی یا دشواری بیش از حد، پشتیبانی نكردن آنها از كنترل نسخهها، دشواری یادگیری و... كاربران را از آن بیزار میسازد. از طرف دیگر، از آن جهت كه اكثر اوقات، مدیران، انتخابكنندگان این ابزارها هستند نه مهندسان نرمافزار، این ابزارها نمیتوانند نیازهای كاربران خود را تامین كنند. مشكل دیگر، عدم پشتیبانی و آموزش صحیح برنامهنویسان است كه میتوان آنرا به دلایل بالا اضافه كرد. اگرچه كاركردن با نرم افزارهای كمكی برای طراحی سیستمهای تحت وب (نسبت به سیستمهای بزگتر) آسانتر است اما این ابزارها نیز معمولابا همین مشكلات روبهرو هستند. این مقاله در آغاز CASE Toolها را معرفی كرده و دلایل نیاز به آن را شرح میدهد. سپس دلایل عدم موفقیت كامل آن را از دو دید مورد بررسی قرار داده و در انتها تكنولوژی طراحی سیستمهای تحتوب با استفاده از ابزارهای كمكی را شرح میدهد.
● معرفی CASE Tool
آیا تا به حال شنیدهاید كه كوزهگر از كوزه شكسته آب میخورد؟ قبل از دهه ۱۹۹۰، مهندسان نرمافزار (مانند كوزهگر) با اینكه خود طراح و تولیدكننده نرمافزار بودند، هیچ ابزاری كمكی در اختیار نداشتند.
computer aided software engineering) CASE) یا "مهندسی نرمافزار به كمك كامپیوتر" از یك سری ابزار كمكی در تولید نرمافزار تشكیل شده است كه به مهندسان نرمافزار در تولید نرمافزار یاری میرساند. در واقع CASE استفاده از ابزارهای نرمافزاری است برای كمك به تولید نرمافزارهای جدید. ابزارهایی كه در این راه استفاده میشوند، CASETool نام دارند. تمامی مراحل تولید نرمافزار، از مدیریت پروژههای نرمافزاری گرفته تا طراحی و تحلیل سیستمها، ذخیره كدها، كامپایل، انتقال و امتحان سیستمها، میتوانند توسط این ابزارها پشتیبانی گردد.
بهعنوان مثال، ابزار كمكی بانكهای اطلاعاتی، میتواند دارای مشخصات ذیر باشد:
- توانایی تعریف مدلهای اطلاعاتی و جریان اطلاعات
- تبدیل مدل اطلاعاتی به طرح پایگاه داده
- تعریف ساختار و عملیات بانك اطلاعاتی
- تولید بانك اطلاعاتی با استفاده از SQL و ذخیره اطلاعات رویهها
شایان ذكر است كه ابزارهای CASE فقط تولید كننده سورس كد نیستند، بلكه میتوانند در تولید نمودارها و طرحهای تحلیلی مثل SSADM، ساختار بانكهای اطلاعاتی، جریان اطلاعات و طرح پایگاه اطلاعاتی، به مهندسان نرمافزار یاری برسانند.
▪ برخی دیگر از ابزارها كه میتوانند نقش بسیار مهمی در تولید نرمافزارها ایفا كنند، عبارتند از:
- ابزارهای مدیریت پایگاه اطلاعاتی
- ابزارهای تحلیل و طراحی سیستمها و تولید سورس كد
- ابزارهای مستند سازی سیستمها
- ابزارهای طراحی وب
- ابزارهای مدیریت برنامه ریزی
- ابزارهای مدیریت آزمایش
- مدیریت UML و بازبینی كدها
این ابزارهای كمكی را میتوان در سه گروه اصلی طبقه بندی نمود: ابزارهای ابتدایی (UCASE)، انتهایی (LCASE)، و كامل (ICASE).
هر گروه ازاین ابزارها در قسمتی از فرایند تولید نرمافزار، فعالیت دارند. مثلا حوزه ابزارهای ابتدایی (UCASE، در چهارمرحله اول فرایند تولید میباشد (ابزارهایی مثل طراحی نمودارهای سیستم و نیازهای كاربران) و ابزارهای انتهایی (LCASE) در مراحل پایانی
تولید (مثل ابزارهای كامپایل و اشكال زدایی) به مهندسان نرمافزار یاری میرساند. به عنوان نمونه از این ابزارها میتوان rational rose را نام برد. این ابزار پیشرفته، قویترین امكانات
طراحی و تبدیل طرح به كد را دراختیار برنامهنویسان شیگرا قرار میدهد.
● كاربران CASE
برای این كه بدانیم چرا ازابزارهای CASE كمتراستفاده میشود، قبل از آن باید بدانیم كه كاربران اصلی این ابزارها چه كسانی هستند؟ مدیران پروژههای نرمافزاری و مهندسان نرمافزار، دو استفادهكننده اصلی این ابزار هستند. از آن جهت كه مدیران پروژه، مسئول برنامهریزی، زمانبندی، تخصیص منابعانسانی، مدیریت و ارزیابی پروژههای نرمافزاری هستند، به این ابزارها نیاز مبرم دارند. از طرف دیگر، مهندسان نرمافزار كه مسئول طراحی و اجرای سیستمها بوده و نیازمند تولید نرمافزارهای بیاشكال یا كم اشكال در كمترین مدت میباشند، حتی بیشتر از مدیران پروژه به این ابزارها نیاز دارند.
● دلایل نیاز به ابزارهای كمكی
برای اطلاع از این كه چرا از ابزارهای CASE كمتر استفاده میشود، باید دلایل استفاده و مزایای این ابزارها را بدانیم. همانطوركه اشاره شد، این ابزارها سعی در خودكاركردن فعالیتهای مدیریتی پروژه، ازجمله تحلیل و آنالیز اطلاعات، طراحی و امتحان نرمافزار دارند و به مدیران پروژه در هدایت پروژه یاری میرسانند. از طرف دیگر، برای تهیه نرمافزار باكیفیت، مهندسان نرمافزار باید مراحل مختلف و دشواری را بپیمایند كه در انتها نیز هیچ تضمینی كه نرمافزار بدوناشكال (باكیفیت) باشد، وجود ندارد.
ابزارهای CASE میتوانند مدت زمان و دشواریهای مراحل تولید نرمافزار را به حداقل رسانده و به مدیران پروژههای نرمافزاری در تصمیمگیری و بهدستآوردن كیفیت برتر نرمافزار كمك كنند. این ابزارها به كاربران خود اجازه تولید نرمافزارهای پرقدرت و با كیفیت بالا را میدهند. اگر استفاده از این ابزارها نبود، بهدست آوردن این نرمافزارها غیرممكن میشد.
در واقع از آن جایی كه این ابزارها بهصورت خودكار توانایی تولید سورس كد و آزمایش را دارند، بااستفاده از آنها، تحلیلگر سیستم در مرحله تحلیل و طراحی برای آنالیز سیستم وقت بیشتر، و برای تولید كد و آزمایش آنها به وقت كمتری نیاز خواهد داشت و هرچه وقت بیشتری دراختیار تحلیلگر سیستم قرار گیرد، به تبع آن كیفیت سیستم ارائه شده بالاتر میرود. در نتیجه بهصورت خلاصه میتوان مزایای زیر را برای این ابزارها نام برد:
- كاهش هزینه ها (با استفاده از خودكار نمودن مراحل تولیدی)
- افزایش سرعت تولید
- اطمینان از سازگاری و استانداردبودن سورس كدها
- افزایش نیروی تولید
ولی سؤال این است كه آیا استفاده از CASE همیشه میتواند مفید است؟ این ابزار زمانی میتواند مفید باشد كه كاربر آن را برای كاملكردن مراحل نرمافزار و نه جابهجا كردن آن با كلیه مراحل تولید به كار ببرد. بهعلاوه، قبلاز اینكه این ابزار استفاده شود، گروه نرمافزاری باید از چهارچوب كلی نرمافزار، عوامل مؤثر در رسیدن به استاندارد كیفیت، و متدهای تولید نرمافزار مطلع باشد.
منابع :
●Barclay,S and Padusenko,S(۲۰۰۲),"CASE Tools" Queen University Facuity of Education, Canada
● Grace, P and Stahi,H (۱۹۹۳& ۲۰۰۳The Olduvai imperativePrentice Hall International
ایران مسعود پزشکیان دولت چهاردهم پزشکیان مجلس شورای اسلامی محمدرضا عارف دولت مجلس کابینه دولت چهاردهم اسماعیل هنیه کابینه پزشکیان محمدجواد ظریف
پیاده روی اربعین تهران عراق پلیس تصادف هواشناسی شهرداری تهران سرقت بازنشستگان قتل آموزش و پرورش دستگیری
ایران خودرو خودرو وام قیمت طلا قیمت دلار قیمت خودرو بانک مرکزی برق بازار خودرو بورس بازار سرمایه قیمت سکه
میراث فرهنگی میدان آزادی سینما رهبر انقلاب بیتا فرهی وزارت فرهنگ و ارشاد اسلامی سینمای ایران تلویزیون کتاب تئاتر موسیقی
وزارت علوم تحقیقات و فناوری آزمون
رژیم صهیونیستی غزه روسیه حماس آمریکا فلسطین جنگ غزه اوکراین حزب الله لبنان دونالد ترامپ طوفان الاقصی ترکیه
پرسپولیس فوتبال ذوب آهن لیگ برتر استقلال لیگ برتر ایران المپیک المپیک 2024 پاریس رئال مادرید لیگ برتر فوتبال ایران مهدی تاج باشگاه پرسپولیس
هوش مصنوعی فناوری سامسونگ ایلان ماسک گوگل تلگرام گوشی ستار هاشمی مریخ روزنامه
فشار خون آلزایمر رژیم غذایی مغز دیابت چاقی افسردگی سلامت پوست