مهندسی مجدد نرمافزار چیست؟
تعریف جامعی از مهندسی مجدد نرمافزار ارائه نشده و محققان هر یک با توجه به نگاه و نیاز خود تعریف متفاوتی بیان نمودهاند که میتوان به تعاریف ذیل اشاره کرد:
- ـ تغییر یک محصول نرمافزاری بعد از بروز مشکلات آن؛ به طوری که باعث بهبود کیفیت یا بهبود سایر معیارهای سیستم مذکور گردد یا اینکه موجب سازگاری سیستم برای سازگاری با تغییرات بسترهای مختلف باشد.(1)
- ـ مهندسی مجدد، روندی است که در آن وظیفههای فعلی سازمان جای خود را به فرایندهای اصلی کسب و کار داده و بنابراین، سازمان از حالت وظیفهگرایی به سوی فرایندمحوری حرکت میکند.(2)
- ـ مهندسی نرمافزار، یک رشته مهندسی است که تمامی جنبههای تولید نرمافزار را هدف قرار میدهد.(3)
- ـ به کار گیری مجدد نرمافزار، فرایند ساختن سیستمهای نرمافزاری با استفاده از مؤلفههای نرمافزاری موجود است.(4)
- ـ اگر بخواهیم تعریف مناسبی از مهندسی مجدد نرمافزار داشته باشیم، باید بگوییم: «ارتقای یک محصول نرمافزاری که باعث بهبود کیفیت یا تکمیل اطلاعات و یا اصلاح سایر معیارهایی میشود که با بسترهای مختلف و جدید سازگار است.»
مهندسی مجدد نرمافزار اسلامی ضرورتی انکار ناپذیر
با گسترش وسائل اطلاعرسانی و پیشرفت سریع فناوری اطلاعات، مؤسسات دینی که از دیرباز رسالت اطلاعرسانی علوم اسلامی را بر عهده داشتند، با هدف تسهیل، تسریع و ایجاد بستر مناسب، نشر الکترونیک را در دستور کار خود قرار داده و تمام سعی و تلاش خویش را به کار بردند تا متون اصلی و منابع غنی اسلامی در قالب دیجیتال در اختیار پژوهشگران و علاقهمندان قرار گیرد. در این راستا، اولین نرمافزار اسلامی در سال 1370ش با عنوان «معجم الفاظ وسائل الشیعه» به مرحله تولید رسید.(5) از آن زمان تا کنون، نرمافزارهای متعددی تولید شده که هر کدام در نوع خود اثری ماندگار میباشند و به امر پژوهش خدمت شایانی را نمودهاند؛ ولی پیشرفت فناوری¬ها دسترسی به اطلاعات و روشهای اطلاعجویی، اطلاعاندوزی و اطلاعیابی چنان سریع و گسترده است که در زمان بسیار اندک نرمافزارهای تولید شده احتیاج به بازیابی و به روز رسانی دارند و در غیر این صورت، از چرخه استفاده خارج میگردند. در سال 1370ش اوّلین نرمافزار اسلامی که در قم تولید گردید، بر پایه سیستم عامل داس بود؛ ولی این سیستم عامل بهسرعت جای خود را به سیستم عامل ویندوز داد و از سال 1996م همهساله نسخه جدیدی از این سیستم عامل تولید گردید و استفاده کنندگان از رایانه، نسخههای جدید را برای سیستمهای خود انتخاب نمودند تا بتوانند از قابلیت جدید آن استفاده بهتر نمایند و نسخههای قبلی سیستم عامل دیگر مورد استفاده قرار نمیگرفت. با توجه به این مسأله اگر نرمافزارها مورد مهندسی مجدد قرار نگیرند و اطلاعات خود را بر پایه سیستم عاملهای جدید برنامهریزی نکنند، عملاً استفاده از آنها غیر ممکن میشود؛ همین گونه است موضوعاتی چون راههای دسترسی به اطلاعات و رابط کاربری. از این رو، پویایی و زنده بودن نرمافزار به مهندسی مجدد آن وابسته است.
استخراج نیازها و معتبرسازی فرایندها
مهمترین گام در مهندسی مجدد یک نرمافزار، شناخت مشکلات نرمافزار موجود و تشخیص نیازها شامل: نیازهای عملیاتی، غیر عملیاتی و نیازهای کاربران است که در پی تشخیص مشکلات و شناخت نیازها، طراحی نسخه جدید نرمافزار شکل میگیرد. عدم توجه به مشکلات موجود و یا تشخیص نادرست نیازها، مهندسی مجدد نرمافزار را با شکست مواجه کرده و موجب هدر رفتن نیروی متخصص و از بین رفتن هزینهها میگردد. در اینجا به برخی مشکلات عمده موجود در نرمافزارهای علوم اسلامی که باید مورد توجه قرار گیرد و در نسخههای جدید اصلاح شود، اشاره میکنیم:
- محققان هر رشته انتظار دارند که نرمافزارِ تهیه شده، آنان را از مراجعه به متون تخصصی بینیاز نماید. جامع نبودن متون و انتخاب سلیقهای یک نسخه از آثار، محققان را با مشکلاتی در امر پژوهش مواجه مینماید که توجه به این مشکل در مهندسی مجدد نرمافزار حائز اهمیت است.
- دستیابی به اطلاعات در نرمافزارها بیشتر از طریق جستجوی لفظی و یا مشاهده صفحه خاص است. اصلاح این روش موجب دستیابی سریع به اطلاعات شده و بهرهوری را بالا می برد.
- رابطهای کاربری (User Interface) تأثیرات بسزایی روی استفاده کنندگان دارند؛ تا جایی که ممکن است یک نرمافزارِ خوب با نداشتن رابط کاربری مناسب، از طرف مشتری و کاربر مورد قبول واقع نشود.
- عدم امکان نصب نرمافزار در بعضی از سیستمها و یا دست و پا گیر بودن مراحل نصب، استفاده از آن را کاهش میدهد.
- اشتباهات تایپی، جا افتادگی بعضی از کلمات یا سطور در متون کتب و مقالات، یکی از مشکلات عمدهای است که موجب سلب اطمینان محققان به نرمافزار میگردد و از قابل اطمینان بودن آن میکاهد.
- نرمافزار نباید از منابع سیستم استفاده بیفایده داشته باشد و یا به نرمافزارهای واسط وابسته باشد که موجب کندی و در مواردی موجب عدم اجرای خوب برنامه شود.
- عدم سازگاری نرمافزار با درگاههای سریال و موازی، عدم ارسال آسان اطلاعات به نمایشگر و نیز نبود تبادل اطلاعات با دیسکها و درایوها و دیگر لوازم جانبی رایانه، از جمله مواردی هستند که موجب ضعف برنامه میشوند.
- نرمافزار باید در مسیر هدفی که به جهت آن طراحی و تولید شده، برای کاربران قابل استفاده باشد. عدم اطلاعرسانی صحیح در خصوص محتوای علمی و امکانات فنی نرمافزار، موجب کاهش میزان استفاده مطلوب از برنامه میگردد.
راهکارها و تحقق اهداف
برای رفع این مشکلات لازم است نیازهای مورد انتظار در خصوص نسخههای جدید نرمافزار فراهم گردد. برای این منظور، از دو روش استفاده میکنیم:
- مستقیم: در این روش به طور مستقیم با استفاده کنندگان ارتباط برقرار نموده و از آنان میخواهیم که فرم نظرخواهی را تکمیل نمایند.
- غیر مستقیم: بر اساس معیارهای کنترل مرغوبیت و کیفیت، نرمافزار را مورد ارزیابی قرار میدهیم و ضعف و کاستی آن را استخراج میکنیم.(6)
بعد از تهیه نیازها و مشخص شدن مشکلات، یک گروه متخصص کاری باید نظریات جمعآوری شده را تحلیل نموده و فاکتورهایی از قبیل: فناوری اطلاعات، استراتژی، مدیریت کیفیت، عملیات، نیازها و منابع انسانی را در اولویت قرار دهد. از طرف دیگر، افرادی چون: دانپورت، شورت، هاریسون و فیوری معتقد به تعریف چارچوب مشخص برای مهندسی مجدد هستند و استفاده از تجربیات در مهندسی مجدد را لازم میدانند و معتقدند که برای انجام پروژه مجدد ارائه طرحها و برنامههای کاری به همراه آموزش و انگیزش افراد، الزامی است.(7)
اگر چه مهندسی مجدد بدون در نظر گرفتن سیستم یا فناوری خاص و بر اساس نیازها و تشخیص سازمان نیز میتواند اجرا گردد و هیچ محدودیت از پیش تعریف شدهای برای بازنگری و طراحی فرایندها تعریف نشود، ولی عدم توجه به نیاز کاربران و استانداردهای موجود میتواند از ضعفهای این روش باشد.
سخن آخر
امروزه سازمانها و مراکزی که در تولید نرمافزارهای اسلامی فعال هستند، لازم است نسخههای اوّلیه نرمافزارهای خود را بازنگری کرده و آن را بر اساس اسلوب مهندسی مجدد طراحی جدید نمایند تا نرمافزارهای مفیدی طراحی گردد، از چرخه استفاده کاربران خارج نشود.
پی نوشت ها:
منابع تحقیق: