آخرین اخبار و مقالات و مطالب پیرامون اشکال زدایی در ایران آی سی تی نیوز ، پایگاه فناوری اطلاعات و ارتباطات ایران
بر روی این دامنه اینترنتی سیستم مدیریت محتوا
پارس سی ام اس
نصب شده است که نرم افزاری قوی جهت طراحی سایت
می باشد. طراحی وب
با استفاده از پرتال
( پورتال
) پارس منجر به طراحی وب سایت
شما می شود. طراحی وب سایت
کپی رایت پورتال
پارس
فرض کنید شرکت و یا سازمان شما قصد طراحی و پیاده سازی یک وب سایت را داشته باشد. کار را از کجا شروع و در چه نقطه ای به انتها می رسانید؟ برای طراحی و پیاده سازی به چه امکاناتی نیاز دارید؟ در صورت نیاز به سازماندهی یک گروه کاری به چه تخصص ها و یا توانمندهایی نیاز خواهید داشت؟ معیار انتخاب افراد جهت مشارکت در گروه چیست و این معیار تا چه میزان متأثر از یک پشتوانه علمی است؟ هر گروه وب دارای الزامات و محدودیت های مختص به خود برای تقسیم وظایف، مسئولیت ها و پیاده سازی فرآیندها در جهت طراحی و پیاده سازی یک وب سایت است.
راهنمای مدیران
چه نکاتی در موفقیت یک گروه وب نقش دارند؟
ارکان موفقیت یک گروه وب
محمد کرامتی- دنیای کامپیوتر و ارتباطات
فرض کنید شرکت و یا سازمان شما قصد طراحی و پیاده سازی یک وب سایت را داشته باشد. کار را از کجا شروع و در چه نقطه ای به انتها می رسانید؟ برای طراحی و پیاده سازی به چه امکاناتی نیاز دارید؟ در صورت نیاز به سازماندهی یک گروه کاری به چه تخصص ها و یا توانمندهایی نیاز خواهید داشت؟ معیار انتخاب افراد جهت مشارکت در گروه چیست و این معیار تا چه میزان متأثر از یک پشتوانه علمی است؟ هر گروه وب دارای الزامات و محدودیت های مختص به خود برای تقسیم وظایف، مسئولیت ها و پیاده سازی فرآیندها در جهت طراحی و پیاده سازی یک وب سایت است.
عناوین رسمی، شرح وظایف و ساختار گزارش دهی می تواند بسیار متغیر باشد. گروه های وب موفق در یک چیز با یکدیگر مشترک هستند و آن هم وجود مجموعه ای کامل از توانمندی ها و تخصص های مورد نیاز در ساختار گروه و فرآیندهای مربوطه است. تمامی مهارت ها و توانمندی های مورد نیاز را می توان در 9 رکن مهم خلاصه کرد. در یک گروه موفق، می توان به سرعت جایگاه و موقعیت هر یک از افراد گروه را نسبت به ارکان اصلی تعیین و مشخص نمود که چه زمانی این پتانسیل ها و توانمندی ها در عمل و در مراحل طراحی و پیاده سازی مفید واقع می شوند (توجیه علمی و فنی وجود یک شخص در گروه).
در صورتی که طراحی و پیاده سازی یک وب سایت در تحقق اهداف از قبل تعیین شده خود با مشکل مواجه و عملا دستیابی به آنها دور از دسترس قرار گیرد، علت آن را می بایست در حذف یکی از ارکان مورد نیاز در ساختار گروه و یا فرآیندها جست وجو کرد.
ارکان نه گانه یک گروه وب کاری
- بررسی نیاز کاربران (user research) : طراحی کاربر محور بدین معنی است که بدانیم نیاز کاربران چیست. چگونه فکر می کنند و رفتار آنان به چه صورت است. بررسی نیاز و خواسته کاربران، ما را قادر می سازد که یک وب سایت متناسب با نیاز کاربران را به درستی طراحی و پیاده سازی نمائیم. - استراتژی سایت (site strategy): تعریف اهداف سایت، یکی از مهم ترین مراحل در چرخه طراحی و پیاده سازی یک وب سایت است که به مهارت های خاص خود نیاز دارد. رسیدن به یک نقطه مناسب در خصوص اهداف سایت، نحوه اولویت بندی اهداف مختلف و ارزیابی موفقیت یک سایت جملگی موضوعاتی هستند که می بایست توسط استراتژی سایت تبین گردند.
- استراتژی تکنولوژی (technology strategy): وب سایت ها از لحاظ بکارگیری فناوری پیچیده بوده و این پیچیدگی می تواند همواره وجود داشته باشد. شناسایی استراتژی به کارگیری فناوری ها برای یک سایت (شامل پلت فرم، استانداردها، فناوری ها و نحوه قرار گرفتن آنها در کنار یکدیگر)، برای موفقیت یک سایت و اجتناب از اشتباهات گزاف، بسیار حائز اهمیت و ضروری است.
- استراتژی محتویات (content strategy): محتویات، اغلب علتی است که کاربران را راغب به مشاهده وب سایت شما می نماید. چه محتویاتی می بایست ارائه شود تا انتظار کاربران تأمین گردد؟ چه میزان محتویات مناسب است؟ شکل و یا فرم ارائه محتویات می بایست به چه صورت باشد؟ قبل از این که بتوان محتویاتی را تولید کرد، لازم است که به سؤالات فوق که مبانی و یا اصول استراتژی محتویات را مشخص می نماید، پاسخ داده شود.
- طراحی مستقل از طراحی فیزیکی و ملاحظات فنی (abstract design): طراحی معماری اطلاعات و تعاملات، اهداف استراتژیک را به یک فریم ورک مفهومی در جهت استفاده کاربر ترجمه می نماید. طراحی فوق در فرآیند پیاده سازی وب دارای جایگاه و ارزش خاص است.
- پیاده سازی تکنولوژی (technology implementation): ایجاد یک سیستم فنی منوط به انجام مجموعه ای از فعالیت ها و دانش خاص است: زبان ها و پروتکل ها، کدینگ و اشکال زدایی، تست و ارزیابی. هر انداره که پیچیدگی یک سایت بیشتر باشد، بکارگیری مجموعه ای از پتانسیل ها در جهت بالفعل کردن اهداف سایت متناسب با استراتژی تکنولوژی ارزش بیشتری پیدا می کند.
- تولید محتوا (content production): دانستن این که چه محتویاتی لازم است به تنهایی کافی نیست و می بایست بدانیم که چگونه آنها را تولید نماییم. جمع آوری اطلاعات خام و اولیه، نوشتن و ویرایش، جایگاه افراد در هیات تحریریه و تأیید نهایی یک مطلب جهت انتشار بر روی سایت، جملگی بخشی از فرآیند تولید محتویات را تشکیل می دهند.
- طراحی به هم پیوستن (concrete design): قبل از این که abstract design بتواند یک رابط کاربر کامل را ارائه نماید، می بایست جزئیات مشخص تری از اینترفیس ها، نحوه به کارگیری امکانات و حرکت بین آنها، طراحی اطلاعات و ویژوال، مشخص گردد. پرداختن به موارد فوق در این مرحله انجام می گیرد.
- مدیریت پروژه (project management): نقطه ای که تمامی توانمندی های تاکتیکی را با یکدیگر ترکیب تا نیروی محرکه لازم به منظور هدایت پروژه به سمت جلو را تامین نماید، مدیریت پروژه است که انجام صحیح و علمی آن مستلزم بکارگیری مجموعه ای از مهارت ها است. رعایت نکردن اصول علمی در این بخش، عدم اتمام و تکمیل فعالیت ها در بازه زمانی تعریف شده و افزایش هزینه ها را به دنبال خواهد داشت.
- بکارگیری ارکان نه گانه در عمل همان گونه که در بخش قبل اشاره گردید برای طراحی و پیاده سازی یک وب سایت به مجموعه ای از مهارت ها نیاز است که آنها را به نه رکن اصلی تقسیم کردیم. آیا این بدان معنی است که هر گروه وب مجبور است از حداقل نه نفر برای نه رکن اشاره شده استفاده نماید؟ پاسخ به سؤال فوق منفی است چرا که همواره این احتمال وجود دارد که در گروه افرادی با قابلیت های چندگانه وجود داشته باشد. این موضوع در خصوص توانمندی های استراتژی ملموس تر و از مصداق بیشتری برخوردار است.
به عنوان نمونه، شخصی با قابلیت های فراوان در پیاده سازی فناوری ها می تواند در بسیاری موارد در خصوص استراتژی فناوری نیز در گروه مورد استفاده قرار گیرد. از طرف دیگر، سازمان های زیادی به این باور رسیده اند که برای تأمین یکی از توانمندی های مورد نیاز در گروه وب ممکن است به وجود چندین فرد نیاز باشد. (خصوصا در خصوص ارکان تاکتیکی). در اکثر موارد نحوه سازماندهی گروه وب و فرآیندها به شرایط خاص یک سازمان بستگی دارد. ولی با تمرکز بر روی ارکان اشاره شده و انتخاب افراد متناسب با ساختار فوق، این اطمینان ایجاد خواهد شد که هیچیک از پتانسیل های مورد نیاز و تأثیرگذار در موفقیت یک سایت را از دست نداده ایم.
... گذشته از این، استفاده از روش مذکور سبب افزایش حجم فایل اجرایی پس از کامپایل، کندی در بارگذاری و اجرای برنامه، سخت تر شدن انجام عملیات اشکال زدایی (دیباگ)، بالا بردن میزان استفاده از حافظه اصلی و تحمیل بار مضاعف بر دوش پردازنده به دلیل استفاده مکرر از حلقه های تکرار و تصمیم گیری می شود ...
... ) 3– طراحی های ساده برای اشکال زدایی، معتبر کردن، ویرایش و مهندسی دوباره ساده ترند ...
... حتی ماهرترین برنامه نویسان هم کد بی نقص نمی نویسند و همواره نیاز است که کدهای خود را رفع ایراد کنند تا از مشکلات آن با خبر شود، اما این اشکال زدایی یعنی چه و به چه صورت می توان آن را رفع کرد؟ شما یک برنامه نوشته اید که خروجی آن مطابق با نتیجه دلخواه شما نیست و کدهای شما هم از نظر منطقی درست به نظر می آیند، ولی خروجی آن درست نیست ... یکی از راه های یافتن اشکال این است که در هر مرحله مهم از برنامه، متغیرهای کد خود را مشاهده کنید و مطمئن شوید که درست در کدام خط و کجای برنامه داده های شما اشتباها تغییر می کنند ... روش دیگر، استفاده از ابزارهای اشکال زدایی (debugger) است ... visual studio debugger این برنامه به همراه تمامی نسخه های ویژوال استودیو منتشر شده است و امکانات زیادی دارد که می توان از میان آن ها به موارد زیر اشاره کرد:1- یکسان کردن سورس و سمبل کدها به طور کامل2- اضافه شدن به پردازش های در حال اجرای روی سیستم برای اشکال زدایی (از این روش به منظور اشکال زدایی سرویس های ویندوزی نوشته شده در ویژوال استودیو استفاده می شود ... )3- امکان اشکال زدایی برنامه های نوشته شده در دات نت و برنامه های محلی نوشته شده در ++c 4- امکان اشکال زدایی به صورت از راه دور5- قابلیت های ویژه و حرفه ای برای گذاشتن نقطه توقف (breakpoint)6- نمایش داده ها و وضعیت آنها ...
... این کار debug (اشکال زدایی) برنامه را راحت تر و نگهداری کد را ساده تر می کند ...
... این نرم افزار که مکمل نرم افزار اشکال زدایی فایرباگ (firebug) است زمان بارگذاری صفحه را تحلیل کرده و در همین حال به دیگر مواردی که به بهبود آن منجر می شود، کمک می کند ...
... همانطور که می دانید اصطلاحا به اشکالات نرم افزاری باگ اطلاق می شود ولی آیا تاکنون فکر کرده اید واقعا چرا نرم افزارها باگ دارند؟ چرا هیچ وقت شر این باگ ها از سرمان کم نمی شود؟ شاید هیچ مفهوم و موضوع دیگری در علوم مهندسی را نتوان یافت که به اندازه مفهوم باگ، این واقعیت مهم را برای انسان روشن کرده باشد که هیچ فرمول و قانون ساخت انسان، بی اشکال و نقص نیست و در هر طرح و برنامه ای، بدون تردید، نقصان ها و لغزش هایی وجود دارد که در نگاه اول به نظر نرسیده است ... از این رو متون و کتاب های مفصلی در زمینه debugging یا اشکال زدایی از نرم افزار و متدهای آن تالیف شده است و همچنان ادامه دارد ... برنامه نویسان تازه کار معمولا از این شاخه مهندسی نرم افزار گریزانند و امیدوارند برنامه هایی بنویسند که به قدری خوب باشد که اصلا کارش به اشکال زدایی نکشد، ولی پس از دو سه سال کار حرفه ای در این زمینه سرانجام تسلیم می شوند و آشنایی با اصول علمی اشکال زدایی برایشان به یک ضرورت تبدیل می شود، مگر اینکه نخواهند به اصول اخلاقی و حرفه ای مهندسی نرم افزار متعهد باشند و از اینکه برنامه های ساخت آنها پر از انواع باگ و ایراد باشد، باکی نداشته باشند اما برطرف کردن باگ ها برای بسیاری از برنامه نویسان غیرآماتور یکی از قسمت های چالش برانگیز و لذت بخش کار است و تقریبا مثل حل کردن معماست ...
... در بیشتر اوقات مشکل در این توپولوژی شکستن خط اصلی است که کاری مشکل برای اشکال زدایی (troubleshooting) به حساب می آید ...
... همچنین اگر برنامه ای را که به یک زبان واحد نوشته شده است و در کامپایلری بدون اشکال به فایل اجرایی نهایی منتج شده است، در پیاده سازی دیگر آن کامپایلر بخواهیم کنیم ممکن است با اشکالات متعدد روبه رو شویم که عملا اشکال یابی و اشکال زدایی آن را غیرممکن خواهد ساخت و در نتیجه فرد مجبور خواهد بود همواره با یک کامپایلر کار کند ... این که نتوان یک برنامه به یک زبان واحد را در کامپایلرهای دیگر همان زبان کامپایل کرد، یک اشکال بزرگ به شمار می رود که به آن نداشتن قابلیت انتقال1 گفته می شود ... مثلا ممکن است سوال شود که وقتی یک برنامه در کامپایلری مثل کامپایلر ++ c بورلند بدون اشکال به فایل اجرایی تبدیل می شود، چه لزومی دارد آن را به کامپایلر ++ c مایکروسافت انتقال دهیم؟ این سوال از دو دیدگاه قابل بررسی است ... اما برنامه نویس باید به این نکته توجه داشت باشد که اگر قرار باشد برنامه خود را در یک کامپایلر دیگر از آن زبان یا در سیستم عامل دیگری کامپایل کند، ممکن است حتی اگر با خطایی نیز مواجه نشود، یک اشکال منطقی ظریف در برنامه ظهور کند که معمولا یافتن این گونه اشکالات زمانگیر و خسته کننده است ... در صورتی که اگر آ ن دستور انتساب مقدار به مؤلفه ها وجود داشت این اشکال رخ نمی داد ...
... پیش از این php با وجود وسعت کاربردش، یک محیط کار مجتمع و توانمند نداشت و برنامه نویسان ناچار بودند برنامه های خود را در ویراستارهای معمولی نوشته و در سرورهای خود آزمایش و اشکال زدایی کنند ...
|
صفحه 1
|
2 | 3 | 4 |
|