صفحه 60 منبع
5. مروری بر مدلسازی فرایند در SSADM4+
مدل جریان داده برای بررسی حرکت دادهها در پیرامون سیستم به کار میرود و موارد زیر را توصیف و تحلیل میکند:
- دادههایی که از عناصر خارج سیستم وارد میشوند یا به آنها فرستاده میشوند؛
- دادههایی که میان فرایندهای تبدیلکننده داده جریان دارند؛
- دادههایی که وارد مخازن داده میشوند.
این تکنیک هم برای توصیف سیستم «فیزیکی» - یعنی سیستم واقعاً در حال کار - و هم برای توصیف شکل منطقی، سادهشده و انتزاعی سیستم استفاده میشود. همانگونه که در الگوی پایه توسعه سیستم دیده میشود (شکل 23)، تکنیک DFD در چند نقطه از فرایند توسعه به کار میرود:
- در بررسی/ارزیابی وضعیت، برای مدلسازی سیستم فعلی؛ یعنی توصیف اینکه سیستم جاری چگونه پیاده شده و نیز ارائه مدل منطقی آن؛
- در ساختار تصمیمگیری، هنگام ارائه و بررسی پیشنهادهای بدیل سیستم که هر یک باید نیازمندیهای سیستم را برآورده کنند؛
- در مشخصات، در چارچوب تهیه «طرح رابط سیستم»، برای ارائه تصویری روشن و قابل فهم از سیستم موردنیاز.
پاورقی 21: [CCTA95]، [CCTA95A]، Reference Manual Part 5: Modelling from User's Perspective, Data Flow Modelling؛ Users Guide Part 2: Investigation, Data Flow Modelling, 2-3—2-33؛ همچنین [CCAT90].
شکل 23. جایگاه مدلسازی جریان داده در الگوی پایه توسعه سیستم: مدل جریان داده فیزیکی فعلی، مدل جریان داده منطقی، DFD گزینه سازماندهی سیستم و مدل جریان داده سیستم موردنیاز در بخشهای مربوط به بررسی، تصمیمگیری و مشخصات قرار میگیرند.
تصویر مرجع صفحه 60 سند اصلی.
صفحه 61 منبع
5.1 هدف
مدلسازی جریان داده (DFD) چند هدف دارد:
- تعیین مرزهای سیستم و مؤلفههایی که در دامنه آن قرار میگیرند؛
- کمک به تعیین نیازمندیهای سیستم جدید؛
- کمک به شناسایی رویدادها و عملکردها؛
- تسهیل گفتوگو میان کاربر و تحلیلگر سیستم.
5.2 مدلسازی جریان داده و فعالیتهای سازمانی
مدل فعالیتهای سازمانی از چند جهت بر مدلسازی جریان داده اثر بنیادین دارد؛ شکل 24 این اثرها را خلاصه میکند.
مدلسازی فعالیت سازمانی روشی نسبتاً نظاممند برای بررسی قابلیت استفاده مجدد از عناصر موجود فراهم میآورد. همچنین با بررسی نیازها و الزامات کسبوکار کمک میکند پاسخ دهیم آیا «مدل جریان داده فعلی» که فرایندهای جاری را بازتاب میدهد، واقعاً نیازهای سازمان را برآورده و اهداف آن را پشتیبانی میکند یا خیر. اگر سیستم رایانهای موجود باشد ممکن است بخشی از کد آن قابل استفاده مجدد باشد؛ حتی اگر به دلایل فناوری کد قابل استفاده نباشد، در بسیاری موارد مشخصات فنی و اطلاعاتی موجود قابل استفاده مجدد است.
هنگام عقلانیسازی و تهیه «مدل جریان داده منطقی»، تحلیلگر باید از دیدگاهی مستقل و عینی، دادهها و فرایندهای زیربنایی عملکرد سیستم را توصیف کند. در مدل فعالیت سازمانی، تحلیلگر دیدگاهی متفاوت دارد و بدون گرفتارشدن در جزئیات، فعالیتهای اصلی سازمان را مدل میکند. این دو دیدگاه مکمل یکدیگرند.
تصویر مرجع صفحه 61 سند اصلی.
صفحه 62 منبع
کاربرد مدل فعالیت سازمانی (BAM) نحوه استفاده از مدل جریان داده فعلی و منطقی را در پروژه تغییر میدهد. در این حالت لازم نیست مدل جریان داده منطقی به مدل جریان داده سیستم موردنیاز تبدیل شود؛ مدل جریان داده سیستم موردنیاز میتواند مستقیماً از مدل گردش کار به دست آید، و مدل گردش کار نیز نگاشت BAM بر ساختار سازمان است.
5.3 محصولات مدلسازی جریان داده
محصول اصلی «مدل جریان داده» (Data Flow Model - DFM) است و از پنج زیرمحصول تشکیل میشود:
- نمودار مدل جریان داده سطح 1؛
- نمودارهای جریان داده در سطوح پایینتر؛
- شرح فرایندهای ابتدایی؛
- شرح ورودی/خروجی؛
- شرح موجودیتهای خارجی.
شکل 24. اثر مدل فعالیت سازمانی و مدل گردش کار بر ساخت مدل جریان داده. در شکل، ارتباط میان BAM، مدل گردش کار، مدل جریان داده فعلی، منطقی و موردنیاز نشان داده شده است؛ بررسی استفاده مجدد، تعیین فعالیتهای پشتیبانیشده توسط سیستم فعلی، گروهبندی فرایندها بر اساس فعالیتهای سازمان و اتکای طرح رابط سیستم موردنیاز بر مدل گردش کار از روابط اصلیاند.
تصویر مرجع صفحه 62 سند اصلی.
صفحه 63 منبع
5.4 چرا مدلسازی جریان داده را به کار میبریم؟
مدل جریان داده حرکت اطلاعات میان سیستم و دنیای خارج و نیز درون سیستم را بدون توجه به زمان وقوع آن توصیف میکند. در مراحل ابتدایی پروژه توسعه، از آن برای ایجاد درک مشترک و اعتماد میان تحلیلگر و کاربر استفاده میشود. همچنین میتوان با آن شرایط عملیاتی و عملکردهای سیستم فعلی را کشف کرد، مسئله را شناخت و تعیین کرد سیستم جدید چه کارهای تازهای باید انجام دهد یا چه کارهایی را به جای سیستم فعلی بر عهده گیرد.
با این تکنیک تصویری منطقی از مجموعه عملکردهای موجود سیستم ساخته میشود که مبنای تدوین گزینههای سازماندهی سیستم است؛ سپس توصیف تفصیلی سیستم موردنیاز شکل میگیرد و در مرحله تعریف عملکردها بهعنوان ورودی استفاده میشود.
مزیت مهم این تکنیک آن است که برای تحلیلگران نسبتاً ساده و برای کاربران قابل فهم است و ارتباط میان دو طرف را بهطور محسوسی بهبود میدهد.
5.5 مدلسازی جریان داده و فعالیتهای سازمان
مدلسازی فعالیت سازمانی بهشدت بر مدلسازی جریان داده اثر میگذارد و یک روش نظاممند برای بررسی قابلیت استفاده مجدد از بخشهای سیستم فعلی ایجاد میکند.
شکل 25. اثر BAM و مدل گردش کار (WPM) بر DFM: مدل گردش کار و BAM در تصمیم درباره تهیه مدل فیزیکی فعلی، مدل منطقی و مدل موردنیاز، همچنین در گروهبندی فرایندها و طراحی رابط سیستم اثر میگذارند.
تصویر مرجع صفحه 63 سند اصلی.
صفحه 64 منبع
مدل فعالیت سازمانی را میتوان برای تحلیل نیازها و الزامات کسبوکار و ارزیابی مدل جریان داده فیزیکی فعلی به کار برد و پرسید: «آیا آنچه اکنون انجام میدهیم واقعاً به عملکرد سازمان کمک میکند؟» اگر برای این وظایف سیستم رایانهای موجود باشد، شاید بتوان کد فعلی را دوباره استفاده کرد؛ و اگر کد قابل استفاده نباشد، ممکن است مشخصات سیستم موجود قابل استفاده مجدد باشد.
هنگام عقلانیسازی سیستم، یعنی ایجاد مدل جریان داده منطقی با انتزاع دادهها و فرایندها، تحلیلگر باید دیدگاه عینی داشته باشد. مدلسازی فعالیت سازمانی از زاویهای دیگر به سیستم نگاه میکند و اجازه میدهد بر فعالیتهای اساسی تمرکز شود بدون آنکه تحلیلگر در جزئیات گم شود. این دو دیدگاه بسیار مفید و مکملاند.
وجود BAM جایگاه مدل جریان داده فیزیکی فعلی و مدل منطقی را نیز تغییر میدهد. اگر مدل فعالیت سازمانی وجود داشته باشد، تبدیل مدل جریان داده منطقی به مدل جریان داده سیستم موردنیاز الزام نیست. به جای آن، مدل موردنیاز را میتوان از مدل گردش کار ساخت؛ مدلی که خود از نگاشت فعالیتها بر ساختار سازمان به دست آمده است.
تصویر مرجع صفحه 64 سند اصلی.
صفحه 65 منبع
6. مدلسازی فرایند (DFD/DFM)
6.1 مدلسازی جریان داده
تکنیک مدلسازی جریان داده برای تهیه نمودارهای جریان داده و شرحهای وابسته به آنها استفاده میشود. نمودار جریان داده با مخفف DFD (Data Flow Diagram) و مدل جریان داده با DFM (Data Flow Model) شناخته میشود.
6.1.1 هدف تکنیک
هدف عمومی مدلسازی جریان داده، ارائه تصویری جامع از یک سیستم اطلاعاتی با نمایش همزمان فرایندها و دادهها است. بهطور دقیقتر:
- تعیین مرزهای سیستم؛
- تعیین اشیاء/موجودیتهای خارجی سیستم؛
- تعیین جریانهای اصلی اطلاعات ورودی و خروجی؛
- تعیین جریان اطلاعات داخلی؛
- تعیین محلهای ذخیره اطلاعات؛
- تعیین فرایندهایی که اطلاعات را پردازش و تبدیل میکنند.
اهداف خاص در مراحل مختلف تحلیل:
- مدل فیزیکی فعلی: شناسایی نیازمندیها، کاستیها و عملکردهای جدید.
- مدل منطقی فعلی: شناسایی فرایندهای منطقی قابل انتقال و ایجاد نقطه شروع برای گزینههای سازماندهی سیستم.
- گزینه سازماندهی سیستم: آمادهسازی تصمیم کاربر و ارائه تصویر جامع از گزینهها.
- سیستم موردنیاز: نقطه شروع تعیین عملکردها و رویدادها.
مدل جریان داده مجموعهای سلسلهمراتبی و چندسطحی از DFDها به همراه شرح فرایندهای ابتدایی، موجودیتهای خارجی و ورودی/خروجی است. برای هر محصول باید نسخه مدل مشخص شود: فیزیکی فعلی، منطقی فعلی، گزینه سازماندهی یا موردنیاز.
تصویر مرجع صفحه 65 سند اصلی.
صفحه 66 منبع
6.1.2 شرح کوتاه تکنیک
مدلسازی جریان داده از نخستین مراحل تحلیل تا ابتدای مشخصات نیازمندیها - یعنی مدل جریان داده سیستم موردنیاز - قابل استفاده است.
در مطالعه امکانسنجی برای ایجاد تصویری کلی از محیط فعلی و محیط موردنیاز به کار میرود؛ معمولاً با DFD یک یا دو سطحی و بدون شرحهای تکمیلی.
در بررسی سیستم موجود ابتدا مدل جریان داده فیزیکی فعلی تهیه میشود. این مدل علاوه بر ایجاد واژگان و فهم مشترک میان کاربران و تحلیلگران، عمدتاً برای شناسایی مشکلات و کاستیها استفاده میشود و در این مرحله شرحهای تکمیلی نیز همراه نمودارها هستند.
سپس مدل فیزیکی، با مقایسه با مدل منطقی داده، از محدودیتهای فیزیکی پاک میشود. این کار «منطقیسازی» یا «عقلانیسازی» نام دارد. در این فرایند نگاشت مخزن منطقی داده-موجودیت ایجاد میشود تا میان مدل منطقی داده و مدل منطقی جریان داده که تا آن زمان موازی توسعه یافتهاند ارتباط برقرار گردد. مدل منطقی حاصل، تصویر منطقی سیستم فعلی را نشان میدهد. این کار ممکن است برخی مسائل مانند ذخیرهسازی تکراری را خودبهخود برطرف کند، ولی هدف اصلی شناسایی فرایندهای منطقی قابل انتقال و استفاده در سیستم جدید است.
گام بعد، استفاده از مدل منطقی برای تدوین گزینههای سازماندهی سیستم است. مانند مطالعه امکانسنجی، هدف ارائه تصویر کلی و نمایش تفاوت میان گزینههاست؛ شرحهای تکمیلی لازم نیست. DFDهای گزینهها معمولاً سیستمهای منطقی را نشان میدهند، زیرا باید عملکرد چند سیستم ممکن منطقی را توصیف کنند؛ هرچند حفظ سیستم موجود نیز میتواند یک گزینه با جنبههای فیزیکی باشد.
در ابتدای مشخصات نیازمندیها، نمودارهای گزینه منتخب باید بر اساس فهرست نیازمندیها با فرایندهای عملیاتی جدید و اطلاعات زمینهای تکمیل شوند. همچنین باید با ایجاد نگاشت مخزن منطقی-موجودیت به مدل منطقی داده متصل شوند. مدل حاصلِ سیستم موردنیاز آخرین گام استفاده از مدلسازی جریان داده است و در تعریف عملکرد بهعنوان نقطه شروع شناسایی عملکردها و رویدادهای سیستم به کار میرود.
6.1.3 محصولات
- مدل جریان داده؛
- فهرست داده؛
تصویر مرجع صفحه 66 سند اصلی.
صفحه 67 منبع
- نگاشت مخزن منطقی داده-موجودیت.
6.1.3.1 مدل جریان داده
مدل جریان داده از محصولات زیر ساخته میشود:
- نمودار زمینه (Context Diagram)؛
- نمودارهای جریان داده - مجموعه سلسلهمراتبی؛
- شرح فرایندهای ابتدایی؛
- شرح موجودیتهای خارجی؛
- شرح ورودی/خروجی.
6.1.4 نمادگذاری و مفاهیم
مدل جریان داده چهار نوع شیء پایه دارد:
- موجودیتهای خارجی: اشیائی بیرون از سیستم؛
- فرایندها: فعالیتهای پردازشی که اطلاعات را تبدیل میکنند؛
- مخازن داده: محلهای ذخیره اطلاعات؛
- جریانهای داده: مسیرهای حرکت اطلاعات.
در مدل فیزیکی میتوان «جریان مواد» و «انبار مواد» را نیز برای نمایش حرکت فیزیکی مواد غیر اطلاعاتی، مانند انبار قطعات یا تحویل لوازم نوشتاری، به کار برد.
شکل 26. نمودار منشأ محصولات مدلسازی جریان داده. روابط میان DFM فیزیکی فعلی، DFM منطقی، DFM سیستم موردنیاز، نمودار جریان سند، نمودار جریان مواد، نمودار زمینه، ماتریس فرایند/موجودیت، نگاشت مخازن منطقی/فیزیکی، نگاشت مخزن منطقی-موجودیت، گزینه سازماندهی سیستم، BAM و مدل منطقی داده را نشان میدهد.
تصویر مرجع صفحه 67 سند اصلی.
صفحه 68 منبع
6.1.4.1 فرایندها
تعریف 6-1: فرایند
فرایندها فعالیتهای تبدیلیاند که داده ورودی را به داده خروجی تبدیل میکنند و طی آن دادهها تغییر یا بهروزرسانی میشوند.
فرایند با یک مستطیل نمایش داده میشود که در بخش بالایی آن دو ناحیه کوچک جداشده برای شناسه و مکان وجود دارد.
- هر فرایند یک شماره شناسه دارد، اما این شماره ترتیب اجرا را نشان نمیدهد.
- هر فرایند نام دارد و بهتر است نام آن بیانگر یک فعالیت فعال باشد. نمونه نامهای خوب: «تنظیم صورتحساب»، «کنترل درخواست»، «ارسال سند»، «ثبت تراکنشهای حساب جاری». نامهای ضعیفتر: «مدیریت صورتحساب»، «پردازش درخواست»، «ثبت اسناد»، «مدیریت تراکنشهای حساب جاری»؛ زیرا عمل دقیق را کمتر مشخص میکنند.
- در مدل فیزیکی میتوان محل فیزیکی اجرای فرایند را نیز مشخص کرد؛ معمولاً نام یک واحد سازمانی یا شغل.
فرایندها قابل تجزیهاند و همین موضوع سلسلهمراتب DFDها را میسازد. برای هر فرایند سطح بالا میتوان نمودار جداگانهای رسم کرد که زیرفرایندهای سادهتر را نشان میدهد. شناسه زیرفرایند از شناسه فرایند والد و شماره داخلی ساخته میشود. برای مثال «11 - پردازش صورتحساب» میتواند به «11.1 - ایجاد صورتحساب»، «11.2 - ثبت صورتحساب» و «11.3 - ارسال صورتحساب» تجزیه شود.
فرایندهایی که دیگر تجزیه نمیشوند با ستاره در گوشه پایین راست مشخص میشوند و «فرایند ابتدایی» هستند.
شکل 27. نمونه نماد فرایند و فرایند ابتدایی؛ اجزای نماد شامل شناسه، نام فرایند، محل و علامت عدم تجزیه است.
تصویر مرجع صفحه 68 سند اصلی.
صفحه 69 منبع
6.1.4.2 مخازن داده
تعریف 6-2: مخزن داده
مخازن داده محلهایی در داخل سیستماند که دادهها در آنها به حالت سکون میرسند و سیستم اطلاعات را نگهداری میکند.
آنها با مستطیلی که یک انتهای آن باز است نمایش داده میشوند و شناسه و نام دارند. برای خوانایی نمودار، یک مخزن را میتوان تکرار کرد؛ هر رخداد تکراری با خط عمودی نشانهگذاری میشود.
در مدل فیزیکی، مخزن میتواند محل مشخصی مانند پوشه اسناد، دفتر ثبت یا یک فایل رایانهای باشد. پس از عقلانیسازی، مخزن نباید هیچ اشارهای به روش فیزیکی ذخیرهسازی داشته باشد.
مخزنها از دو دیدگاه تقسیم میشوند:
- دائمی/اصلی در برابر گذرا؛
- فیزیکی در برابر منطقی.
مخازن اصلی با حرف M یا D و یک شماره یکتا شناخته میشوند. D مخزن رایانهای و M مخزن دستی را نشان میدهد؛ M فقط در نمودارهای فیزیکی فعلی مجاز است. مخازن گذرا با T و شماره مشخص میشوند و داده فقط موقتاً در آنها قرار میگیرد؛ پس از ورود، رخداد بعدی خروج/حذف است. اگر مخزن گذرا دستی باشد، پس از T علامت (M) میآید.
تصویر مرجع صفحه 69 سند اصلی.
صفحه 70 منبع
ویژگیهای مخزن گذرا:
- خواندن مخرب است؛ هر خواندن همزمان داده را از مخزن حذف میکند. بنابراین داده ذخیرهشده فقط یک بار قابل استفاده است. اگر چندبار استفاده لازم باشد، باید آن را مخزن اصلی دانست و در مدل منطقی داده موجودیتهایی برای آن وجود داشته باشد.
- معمولاً چند فرایند میتوانند در مخزن گذرا بنویسند، اما احتمالاً فقط یک فرایند از آن میخواند و حذف میکند.
- پس از درج داده، همان داده در مخزن تغییر نمیکند؛ ولی نسخههای بعدیِ تغییرکرده ممکن است جداگانه درج شوند.
اگر مخزن در نمودار سطح پایین و داخل یک فرایند ظاهر شود، شناسه آن از حرف نوع، شناسه فرایند، «/» و شماره ساخته میشود؛ مثلاً D2/1 در داخل فرایند 2 و D2.1/3 داخل فرایند 2.1.
مخازن نیز میتوانند در سطح پایین تجزیه شوند؛ در این حالت شناسه از شناسه مخزن والد و یک حرف افزوده ساخته میشود.
در مدل فیزیکی ممکن است نوع یکسانی از داده در چند مخزن تکرار شود. برای تمایز، میتوان نام نقش/صفت را در کروشه بعد از نام مخزن نوشت.
شکل 28. نمونههای مخزن داده: D1 «حسابهای جاری» بهعنوان مخزن اصلی رایانهای و نمونه تکرارشده؛ T2 بهعنوان مخزن گذرا؛ M3 بهعنوان مخزن اصلی دستی؛ D2/2 بهعنوان مخزن رایانهای داخلی فرایند 2؛ M3a و M3b بهعنوان مخازن تجزیهشده؛ و T3(M) بهعنوان مخزن گذرای دستی.
تصویر مرجع صفحه 70 سند اصلی.
صفحه 71 منبع
6.1.4.3 موجودیتهای خارجی
تعریف 6-3: موجودیت خارجی
موجودیتهای خارجی اشیائی بیرون از سیستماند که از سیستم اطلاعات دریافت میکنند یا به آن اطلاعات میفرستند.
آنها میتوانند شغل یا نقشهایی مانند انباردار، مدیر یا تأییدکننده؛ سازمانهای خارجی مانند بانک مرکزی برای یک بانک یا پارلمان برای یک وزارتخانه؛ سیستمهای اطلاعاتی خارجی مانند حقوق و دستمزد و مجموعه قوانین؛ یا واحدهای داخلی استفادهکننده از سیستم اطلاعاتی مانند حسابداری و بخش تبلیغات باشند.
موجودیت خارجی با بیضی افقی نمایش داده میشود. هر موجودیت با یک حرف کوچک و، در صورت زیادبودن تعداد، با دو حرف شناخته میشود. اگر یک موجودیت با جریانهای فراوان مرتبط باشد میتوان برای جلوگیری از تقاطع خطوط چند نسخه از آن روی نمودار آورد؛ تمام رخدادهای تکراری با یک خط مورب مشخص میشوند.
برای نشاندادن نقشهای مختلف یک موجودیت، میتوان نام نقش/صفت را در کروشه بعد از نام آن نوشت. همین نوع صفت یا نقش میتواند در مدل فیزیکی به نام فرایند نیز متصل شود.
مثال: D1 «رزرو [از کدام کتابخانه]» و D1 «رزرو [به کدام کتابخانه]».
شکل 29. مخزن داده دارای نام نقش.
شکل 30. موجودیتهای خارجی، شامل نمونههای تکرارشده و تجزیهشده و نقشهایی مانند مدیر شعبه [فرستنده] و مدیر شعبه [گیرنده].
پاورقی 22: چنین نشانههای نقش یا صفت در مدل جریان داده فیزیکی میتوانند به نام فرایندها نیز متصل شوند.
تصویر مرجع صفحه 71 سند اصلی.
صفحه 72 منبع
یک موجودیت خارجی در نمودار سطح بالا میتواند در نمودار سطح پایین به چند موجودیت تجزیه شود. در این حالت حرف شناسه با شماره تکمیل میشود؛ مثلاً «c - مدیر» میتواند به «c1 - مدیر بخش» و «c2 - سرپرست گروه» تجزیه شود.
هر شیء خارج از سیستم اطلاعاتی در DFD فقط میتواند بهصورت موجودیت خارجی نمایش داده شود.
6.1.4.4 جریانهای داده
تعریف 6-4: جریان داده
اطلاعات در حال حرکت در سیستم با جریانهای داده نمایش داده میشود که نماد آنها پیکان است.
در نمودار سطح بالا فقط جریانهای مهمتر لازماند و جزئیات در نمودارهای پایینتر بیان میشوند. هر جریان دادهای که مرز نمودار سطح پایین را قطع میکند باید در نمودار سطح بالاتر نیز با یک جریان قابل تطبیق باشد. یک جریان در سطح بالا ممکن است در سطح پایین به چند جریان تقسیم شود.
پیکان دوسویه فقط در نمودارهای سطح بالا مجاز است تا نشان دهد در سطوح پایینتر هم جریان ورودی و هم خروجی وجود دارد.
شکل 31. نمونههای جریان داده در مدل رزرو خودرو و حساب جاری؛ پیکانها جریانهایی مانند داده حساب جاری، صورتحساب بانکی، یادداشت خطای حسابداری و جریانهای رزرو را نشان میدهند.
تصویر مرجع صفحه 72 سند اصلی.
صفحه 73 منبع
جریان اطلاعاتی که مرز سیستم را قطع نمیکند نیز میتواند با پیکان خطچین نشان داده شود. چنین جریان ارتباطی طبیعتاً فقط میان موجودیتهای خارجی است و زمانی باید نمایش داده شود که فهم نمودار را بهتر کند.
هر جریان داده باید نامی داشته باشد که محتوای آن را کوتاه و روشن بیان کند.
داده درون سیستم فقط در اثر یک فرایند حرکت میکند؛ بنابراین جریان مستقیم میان دو مخزن داده یا میان موجودیت خارجی و مخزن داده مجاز نیست.
6.1.4.5 فرایندهای ابتدایی
تعریف 6-5: فرایند ابتدایی
فرایندی که در پایینترین سطوح DFD قرار دارد و دیگر نباید یا نمیتوان آن را تجزیه کرد.
شرح فرایند ابتدایی جزئیاتی را ارائه میکند که از خود نمودار قابل برداشت نیست. هدف آن فراهمکردن مبنا برای شرح عملکرد در مراحل بعدی است. شرح باید به موارد زیر اشاره کند:
- دادههایی که باید در دسترس باشند - پس از عقلانیسازی، نگاشت مخزن منطقی-موجودیت این موضوع را نشان میدهد؛
- قواعد عملیاتی، محدودیتها و شرایط؛ مثلاً «اگر برداشت موجب منفیشدن مانده حساب شود، فرایند برداشت باید درخواست را رد کند»؛
- قواعد مربوط به ورودیهای مختلف و آنچه باعث شروع فرایند میشود؛ مثلاً در اثر برگه برداشت، فرایند حساب را کنترل و رسید صادر میکند، ولی در اثر درخواست مانده، موجودی حساب را نمایش میدهد؛
- اینکه چه کسی و چه زمانی فرایند را آغاز میکند.
اگر شرح بیش از حد طولانی شد، باید امکان تجزیه فرایند بررسی شود. عملیات ابتدایی مشترک بین چند فرایند را میتوان بهعنوان «فرایند ابتدایی عمومی/مشترک» تعریف کرد. فرایندهای استفادهکننده و فرایند مشترک باید ارجاع متقابل داشته باشند. فرایندهای عمومی معمولاً روی DFD نمایش داده نمیشوند.
تصویر مرجع صفحه 73 سند اصلی.
صفحه 74 منبع
6.1.5 سلسلهمراتب DFD
هر نمودار باید خوانا باشد و جزئیاتی در یک سطح انتزاع را نشان دهد؛ ولی سیستم معمولاً پیچیده است و در سطوح مختلف جزئیات توصیف میشود. ازاینرو یک نمودار کافی نیست و از مجموعهای سلسلهمراتبی استفاده میشود.
بالاترین سطح «نمودار جریان داده سطح 1» است. در این نمودار دامنه سیستم، منابع و مصرفکنندگان خارجی اطلاعات، جریانهای اصلی ورودی و خروجی، عملکرد اساسی، فرایندها و فعالیتهای سیستم و بهطور ضمنی مرزهای سیستم تعیین میشوند. لازم نیست مرز بهطور جداگانه رسم شود؛ موجودیتهای خارجی مرز را مشخص میکنند.
هر فرایند سطح بالا که جزئیات بیشتری دارد میتواند در یک نمودار سطح پایین تجزیه شود. در نمودار پایین، فرایند والد همچون چارچوبی است که داخل آن فرایندهای سادهتر و مخازن داخلی قرار میگیرند. جریانهای ورودی و خروجی و اشیای مرتبط فرایند والد باید در سطح پایین نیز قابل مشاهده باشند؛ هرچند جریانها، موجودیتهای خارجی و مخازن میتوانند در سطح پایین تجزیه شوند. مخزنی که چند فرایند سطح بالاتر از آن استفاده میکنند نباید داخل یک فرایند سطح پایین قرار گیرد.
معمولاً سه سطح DFD کافی است؛ جزئیات بیشتر دیگر به اهداف تکنیک، یعنی شناسایی عملکردها و رویدادها، کمک نمیکند.
6.1.6 فرایند مدلسازی جریان داده
سه مدل اصلی تهیه میشود:
- مدل جریان داده فیزیکی فعلی؛
- مدل جریان داده منطقی؛
- مدل جریان داده سیستم موردنیاز.
مدل فعالیت سازمانی و مدل گردش کار بر تمام این مراحل اثر مهم دارند.
6.1.6.1 مدل جریان داده فیزیکی فعلی
این مدل در نخستین فعالیتهای بررسی/ارزیابی وضعیت و در آغاز پروژه تهیه میشود. رویکرد نموداری امکان توصیف دقیق، صریح و جامع سیستم فعلی را فراهم میکند، گفتوگو میان کاربر و تحلیلگر را بهبود میدهد و بیان نیازمندیهای سیستم جدید را آسان میسازد.
تصویر مرجع صفحه 74 سند اصلی.
صفحه 75 منبع
هدف اصلی مدل فیزیکی فعلی، نشاندادن مشکلات محیط موجود از طریق نمایش فرایندهای جاری و سپس توافق موردبهمورد درباره آنها و ثبتشان در فهرست نیازمندیها است. خدماتی که سیستم جدید باید پشتیبانی کند نیز در همین مرحله توصیف میشوند.
ترسیم DFD را میتوان به چند روش آغاز کرد. اگر تحلیلگران کمتجربهاند یا خدمات فعلی بسیار پیچیده است، بهتر است ابتدا نمودار زمینه، نمودار جریان اسناد و/یا نمودار جریان مواد تهیه شود؛ در غیر این صورت بهتر است مستقیماً DFD رسم شود.
روش ایجاد DFD اولیه:
a. با مشارکت کاربر و بر اساس منشور پروژه مرزهای سیستم را شناسایی کنید.
b. ورودیها و خروجیهای اصلی را شناسایی کنید.
c. منابع و مصرفکنندگان جریانهای اصلی داده را شناسایی و بهصورت موجودیت خارجی نمایش دهید.
d. برای هر جریان داده یک فرایند پردازشکننده/تولیدکننده و مخازن مربوط را تعیین کنید؛ مخازن محل ارجاع به داده، منشأ خروجی یا محل نگهداری ورودی را نشان میدهند.
e. جریانهای داده میان عناصر را رسم کنید.
f. فرایندهای داخلی بدون ارتباط بیرونی، مانند بایگانی و کپی داده، را بیفزایید.
g. جریانهای داخلی بیشتری میان فرایندها بیفزایید.
h. سازگاری و کاملبودن نمودار را بررسی کنید.
فرایندهای صرفاً پرسوجویی بهتر است بهجای DFD در فهرست نیازمندیها ثبت شوند، زیرا نمودار را پیچیده میکنند و روش تولید نتیجه پرسوجو را بهخوبی توصیف نمیکنند.
برای بررسی سازگاری داخلی و کاملبودن:
- نام هر فرایند باید شامل یک فعلِ دارای مفعول/بیانگر عمل باشد؛ دشواری در نامگذاری ممکن است نشان دهد فرایند باید تجزیه شود.
- هر ورودی فرایند باید ارتباط روشن با خروجیها داشته باشد.
- هرچه جریان داده مستقیم میان فرایندها کمتر باشد، جداسازی فرایندها بهتر انجام شده است.
تصویر مرجع صفحه 75 سند اصلی.
صفحه 76 منبع
- فرایندها نباید منشأ اولیه یا مصرفکننده نهایی داده باشند. ممکن است خود فرایند دادههایی مانند شماره سریال یا مجموع ایجاد کند، اما هر داده ورودی باید به شکلی در خروجی بازتاب یابد.
- هر مخزن داده باید هم جریان ورودی و هم جریان خروجی داشته باشد؛ هر داده باید زمانی ایجاد و زمانی استفاده شود.
نمودار سطح اولِ کنترلشده باید با کاربران مرور و تأیید شود. اگر توافق حاصل نشود، موضوع باید به مدیریت پروژه ارجاع شود.
اگر مرزهای سیستم در ابتدا روشن نیستند، رسم نمودار زمینه مفید است. با نمایش کل سیستم بهصورت یک فرایند، نمودار موجودیتهای خارجی اصلی و جریانهای عمده ورودی/خروجی را نشان میدهد. پس از توافق بر مرزها، فرایند نماینده سیستم بر اساس گروههای مرتبط جریان داده به فرایندهای جزئیتر تجزیه میشود.
نمودار جریان اسناد برای سیستم فعلی عمدتاً دستی مفید است. میتوان چند نمودار تهیه و سپس ترکیب کرد. مراحل پیشنهادی:
- اسناد اصلی و جریانهای اطلاعات را فهرست کنید؛
- جریان اسناد را رسم کنید؛
- بر مرز سیستم توافق کنید؛
- فرایندهای سیستم را شناسایی کنید.
6.1.6.2 مدل جریان داده منطقی
سیستم فیزیکی فعلی احتمالاً طی سالهای زیاد شکل گرفته و تحت محدودیتهایی مانند موارد زیر بوده است:
- تجهیزات یا فناوری قدیمی؛
- پراکندگی جغرافیایی؛
- روابط سازمانی تاریخی؛
- تحمل کاستیها و خطاها.
تحلیلگر باید از سیستم فعلی مدلی منطقی بسازد که تکرارها و افزونگی میان مخازن و فرایندها را حذف کند و فرایندهای سطح پایین را بر اساس حوزههای کارکردیِ موردنظر کاربر گروهبندی مجدد نماید. فعالیتهای عقلانیسازی عبارتاند از: عقلانیسازی مخازن، عقلانیسازی فرایندهای سطح پایین، گروهبندی مجدد فرایندها و بازسازی سلسلهمراتب DFD، و کنترل سازگاری و کاملبودن.
تصویر مرجع صفحه 76 سند اصلی.
صفحه 77 منبع
در عقلانیسازی مخازن داده باید افزونگی ناشی از نگهداری چندباره داده و اشارههای فیزیکی - مانند «صورتحساب آبی» یا «اقلام زیرخطدار» - حذف شوند. ساختار منطقی دادههای محیط فعلی در مدل منطقی داده توصیف میشود.
هر مخزن اصلی در DFD منطقی باید به یک یا چند موجودیت در ساختار منطقی داده نگاشت شود. موجودیتهای گروهشده در یک مخزن میتوانند:
- با یکدیگر مرتبط باشند؛
- همزمان ایجاد شوند؛
- بخشی از یک جریان عمده داده باشند؛
- با یک مفهوم مشترک توصیف شوند، مانند «اسناد».
هر مخزن اصلی باید شامل یک یا چند موجودیت باشد. در حالت عادی هر موجودیت دقیقاً به یک مخزن تعلق دارد و هر موجودیت باید در یک مخزن قرار گیرد. این ارتباط در «نگاشت مخزن منطقی-موجودیت» یا فهرست ارجاع متقابل ثبت میشود. مخازن منطقی حاصل دیگر تکرار غیرضروری داده ندارند و DFDها باید بر اساس مخازن جدید بازترسیم شوند؛ در صورت نیاز جریانها نیز برای حفظ محتوای اطلاعاتی نمودار تغییر نام مییابند.
اگر مخزنی در سطح پایین تجزیه شود و شامل ساختار ابرنوع/زیرنوع موجودیت باشد، هم گروه موجودیت سطح بالا و هم گروههای زیرنوع در نگاشت ثبت میشوند. در این حالت ابرنوع در هر بخش تجزیهشده همراه زیرنوع ظاهر میشود؛ این یک استثنای ظاهری بر قاعده «هر موجودیت در دقیقاً یک مخزن» است.
اگر تجزیه فقط بر اساس رخدادهای دارای صفات مختلف باشد، نگاشت سطح بالاتر کافی است.
مخازن گذرا معمولاً باید حذف شوند، زیرا غالباً ناشی از محدودیت فیزیکیاند و معمولاً میتوان آنها را به یک وضعیت از مخزن اصلی نگاشت کرد، مانند دادههای پایان دوره که هنوز ثبت نهایی نشدهاند.
پاورقی 23: در ساختارهای ابرنوع/زیرنوع، اگر زیرنوعها در مخازن متفاوت قرار گیرند، ابرنوع نیز همراه آنها ظاهر میشود چون زیرنوع بدون ابرنوع وجود ندارد. این تکرار فقط نحوی/نمادی است؛ از نظر معنا مجموعه رخدادهای موجودیت جدا از هماند و تمایز زیرنوعها دقیقاً همین مجموعههای مجزا را بیان میکند.
تصویر مرجع صفحه 77 سند اصلی.
صفحه 78 منبع
در عقلانیسازی فرایندهای ابتدایی/سطح پایین، موارد زیر باید رعایت شود:
a. فرایند منطقی باید دادهها را طبق نیاز عملیات سازمان تبدیل یا استفاده کند. عملیات صرفاً مربوط به بازآرایی داده، مانند مرتبسازیای که هیچ تبدیل دادهای انجام نمیدهد، حذف میشود.
b. فرایند منطقی باید نشان دهد «چه چیزی» رخ میدهد، نه «کجا» و «توسط چه کسی»؛ اشارههای مکانی حذف میشوند.
c. اگر فرایندی فقط برای نمایش یا چاپ به داده دسترسی دارد، باید حذف و پرسوجوی متناظر در فهرست نیازمندیها ثبت شود؛ مگر اینکه آن فرایند عنصر مهمی از عملیات باشد.
d. اگر داده در اثر فرایند تغییر نمیکند، فرایند با یک جریان داده جایگزین میشود.
e. اگر دو یا چند فرایند همیشه همزمان یا پشتسرهم رخ میدهند، در صورت امکان ادغام میشوند.
f. اگر فرایندی صرفاً برای جمعآوری داده از چند محل فیزیکی وجود دارد، حذف میشود.
g. اگر بخشی از شرح فرایند نیازمند قضاوت ذهنی یا کار انسانی است، فرایند به دو قسمت تقسیم میشود: یک موجودیت خارجی و جریان داده برای عامل انسانی، و یک فرایند برای پردازش داخلی.
h. اگر یک عنصر عملیاتی در چند فرایند تکرار میشود، به شرح یک فرایند ابتدایی عمومی منتقل و از تمام فرایندهای استفادهکننده به آن ارجاع داده میشود.
ممکن است عقلانیسازی چند بار تکرار شود تا تصویر منطقی مناسب حاصل شود. جریانهای دادهای که از نظر منطقی زائد شدهاند حذف میشوند.
گروهبندی مجدد فرایندهای ابتدایی یعنی ساخت دوباره سلسلهمراتب برای رهایی از گروهبندی تحمیلشده توسط شرایط سازمانی و فیزیکی فعلی. در ایجاد گروههای جدید باید موارد زیر در نظر گرفته شود:
- گروهبندیهای کارکردی تعریفشده توسط کاربران؛
- شباهت نوع فرایندهای ابتدایی، مانند فرایند عملیاتی یا فرایند مدیریت داده مرجع؛
- استفاده از گروههای داده مشابه.
تصویر مرجع صفحه 78 سند اصلی.
صفحه 79 منبع
در کنترل سازگاری و کاملبودن باید بررسی شود مخازن، فرایندها و جریانهای تبدیلشده همچنان وظایف سیستم را برآورده میکنند و نمادگذاری، شناسهها، تجزیه سلسلهمراتبی و نامگذاری بهدرستی اصلاح شدهاند.
در تحلیل سیستم فیزیکی فعلی باید تا حد امکان از عقلانیسازی تصادفی و زودهنگام خودداری کرد. نخست باید واقعیت همانگونه که رخ میدهد، با همه خطاها، ثبت شود تا مشکلات شناسایی شوند. تنها پس از پایان کشف فرایندهای فعلی و تهیه مدل منطقی داده باید تصویر منطقی سیستم ساخته شود.
محدودیتهای فیزیکیای که بر سیستم جدید نیز اثر خواهند گذاشت بهتر است هنگام منطقیسازی در فهرست نیازمندیها ثبت شوند.
6.1.6.3 DFDهای گزینههای سازماندهی سیستم
تدوین گزینههای سازماندهی سیستم نخستین گام ترسیم سیستم جدید است. معمولاً چند راه برای ایجاد سیستم وجود دارد و هر گزینه یکی از این راهها را مشخص میکند. دامنه و مرز سیستم پیشنهادی با یک DFD سطح بالا و، برای فرایندهای پیچیده، گاهی نمودار سطح دوم نمایش داده میشود.
DFDهای گزینهها معمولاً منطقیاند؛ اما اگر یکی از گزینهها حفظ سیستم دستی فعلی باشد، نمودار آن میتواند اشارههای فیزیکی داشته باشد.
پس از انتخاب گزینه مناسب - که ممکن است ترکیبی از چند گزینه باشد - توصیف سیستم موردنیاز آغاز میشود.
6.1.6.4 مدل جریان داده سیستم موردنیاز
این مدل بر یکی از مبناهای زیر شکل میگیرد:
- مدل جریان داده منطقی، تطبیقیافته با دامنه و مرزهای گزینه منتخب و تکمیلشده برای برآوردن نیازهای فهرست نیازمندیها؛
- نمودار جریان دادهای که پیشنهاد سازماندهی منتخب را پشتیبانی میکند؛
- مدل فعالیت سازمانی که فعالیتهای اصلی قابل پشتیبانی توسط سیستم آینده را توصیف میکند.
این مدل نقطه شروع تعریف عملکردها و کنترل مدل منطقی داده سیستم موردنیاز است و همچنین مبنای خوبی برای شناسایی مجموعه اولیه رویدادهاست.
عملکردها فرایندهایی از سیستماند که رویدادهای حوزه کاری را پردازش میکنند؛ به بیان دیگر، فرایندهایی که کاربران آنها را واحد عملیاتی میدانند. عملکردها در سطح فرایندهای ابتدایی شناسایی میشوند؛ جریان ورودی حامل رویداد آغازگر شناسایی و مسیر آن از میان فرایندهای لازم تا تولید خروجی دنبال میشود.
تصویر مرجع صفحه 79 سند اصلی.
صفحه 80 منبع
رویدادهای وابسته به گذشت زمان از مرز سیستم عبور نمیکنند؛ بنابراین عملکردهای مربوط به آنها را نمیتوان از یک جریان ورودی شناخت. فرایندهای ابتداییای که ورودی خارجی ندارند ولی در مخزن داده مینویسند میتوانند نشاندهنده چنین رویدادهایی باشند.
مدل جریان داده سیستم موردنیاز وقتی از تعریف عملکرد خوب پشتیبانی میکند که:
- هر فرایند ابتدایی فقط یک ورودی آغازگر داشته باشد؛ اگر چند ورودی وجود دارد، آنها باید متقابلاً انحصاری باشند؛
- جریان داده میان فرایندها تا حد امکان کمینه باشد؛
- فرایندهای مدلکننده خطا در آن وجود نداشته باشند، زیرا تکنیکهای بعدی به خطاها میپردازند.
در ابتدا رویدادها را میتوان از جریانهای ورودی DFD و فهرست عناصر داده در شرح ورودی/خروجی شناسایی کرد. بعداً تحلیل تاریخچه موجودیت رویدادهای بیشتری را آشکار میکند. برای یافتن رابطه میان عناصر داده و رویدادها باید توجه کرد:
- یک نوع جریان داده میتواند برای ساده نگهداشتن نمودار، دستهای از رویدادها را حمل کند؛ این رویدادها در واقعیت ممکن است آنی یا دستهای وارد شوند.
- جریان ورودی ممکن است یک دسته رویداد «قابل استفاده» باشد که تحلیلگر یا کاربر عمداً آن را چنین تعریف کرده است.
- یا ممکن است فقط برای خوانایی نمودار چند رویداد نامرتبط را یکجا حمل کند و از نظر تحلیل رویداد یک دسته قابل استفاده نباشد.
- ممکن است برای رخداد منفرد و دستهایِ یک رویداد عملکردهای جدا منطقی باشد، اما نباید فقط به این علت جریانها و فرایندهای ابتدایی جدا ایجاد کرد، زیرا نمودار بیهوده پیچیده میشود.
- یک نوع رویداد ممکن است از چند جریان داده و حتی چند نوع جریان وارد شود، اما هر رخداد مشخص رویداد فقط از یک جریان میآید. مثلاً رویداد «دستور انتقال» میتواند از جریان «دستور بدهکار» یا «دستور بستانکار» برسد، اما همه عناصر داده همان رخداد باید از همان جریان برسند؛ نمیتوان شناسه حساب را در یک جریان و مبلغ را در جریان دیگری قرار داد، زیرا یک رخداد را دو نیم میکند.
پاورقی 24: خطاهای یکپارچگی باید در مدلسازی فرایند مفهومی بررسی شوند؛ خطاهای نحوی و خرابی رسانه در طراحی فرایندهای فیزیکی.
تصویر مرجع صفحه 80 سند اصلی.
صفحه 81 منبع
در DFDهای سیستم موردنیاز معمولاً دو نوع موجودیت خارجی دیده میشود:
- موجودیتی که نسبت به کل سیستم خارجی است؛
- موجودیتی که نسبت به سیستم خودکار خارجی است، اما در کل حوزه سیستم قرار دارد.
نوع دوم همان نقشهای کاربری سیستم است و باید بتوان آنها را بدون ابهام به اقلام فهرست نقشهای کاربری نگاشت کرد.
تصویر مرجع صفحه 81 سند اصلی.
صفحه 82 منبع
7. مروری بر مدلسازی منطقی داده
مدلسازی منطقی داده برای بررسی و توصیف اطلاعات ساختیافتهای به کار میرود که برای پشتیبانی فعالیتهای سازمان گردآوری میشوند. این تکنیک هم ساختار داده سیستم فعلی و هم مدل داده آینده سیستم موردنیاز را توصیف میکند.
مدلسازی منطقی داده یکی از مهمترین و مرکزیترین عناصر روش SSADM است؛ بدون آن نمیتوان یک پروژه فناوری اطلاعات را واقعاً پروژهای مطابق SSADM دانست.
در الگوی پایه توسعه سیستم، مدلسازی منطقی داده در دو بخش استفاده میشود:
- بررسی/ارزیابی وضعیت: برای کشف و توصیف ساختار داده پشتیبان سیستم فعلی؛
- مشخصات: برای توصیف مدل داده موردنیاز سیستم آینده که مبنای طراحی فایل و پایگاه داده خواهد بود. در بخش مشخصات، این تکنیک نقش کلیدی در تهیه مدل مفهومی دارد.
پاورقی 25: [CCTA95]، [CCTA95A]، Reference Manual Part 4: Modelling Data, Specification (Conceptual Model), 4-9—4-51؛ Users Guide Part 3: Logical Data Modelling in Specification, 3-17—3-27؛ همچنین [CCAT90].
شکل 32. جایگاه مدلسازی منطقی داده در الگوی پایه توسعه سیستم: مدل منطقی داده سیستم فعلی در بخش بررسی و مدل منطقی داده سیستم موردنیاز در بخش مشخصات/مدل مفهومی قرار دارد.
تصویر مرجع صفحه 82 سند اصلی.