الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

هل تحلل قبل البدء على الورق؟وأي الطرق تستخدم؟

مغلق
بدأه ابوأنس في 22 سبتمبر 2005 · 13 رد · 1,482 مشاهدة · في هندسة البرمجيات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

السؤال للجميع: هل تحلل النظام أو البرنامج قبل البدء على الورق؟ وأي طرق التحليل تستخدم؟

عن نفسي ففي المشاريع المتوسطة والكبيرة أستخدم RUP(Rational Unified Process) أما في البرامج البسيطة أكتفي بكتابة بعض النقاط

ماذا عن باقي الأعضاء المبرمجين؟

#2

في البرامج الصغيرة اضع الفكرة في رأسي و ابدأ في كتابة البنية العامة للكود بشكل "ناقص", يعني ابدا في كتابة الخطوات العامة, و اذا وجدت ان هناك خطوة معقدة (تستغرق أكثر من اربعة اسطر و تحتاج الى اكثر من عشر ثواني من التفكير) اكبتها على شكل استدعاء لـ function غير مكتوب بعد!

في البرامج المتوسطة قد احاول الشخبطة قليلا على الورق قبل البدء في الكتابة! و طبعا اتبع نفس تلك الطريقة في الكتابة. :lol:

اما البرامج الكبيرة فلم يحصل لي بعد شرف كتابتها :)

#4

-09

الورقة و القلم و الرسم

أهم ثلاث اشياء

ارجوا مساعدتى للعمل كمبرمج اوراكل باى شركة خبرتى 1 سنه و ربنا الموفق

خبرى 6 سنوات فى فيجوال بيزك 6و ASP

#5

أنا للأسف لم أكتب برامج من اللي يحبها قلبك (الحاجات الكبيره) لكن مهما كان البرنامج صغير لازم ورقه وقلم ...,,,

#6

لم أكتب في حياتي برنامجاً يزيد عـن 1500 سطر ... يعـني تقريباً جميع البرامج صغيرة للغاية...

ولكن نصيحتي يجب استخدام الورقة والقلم ولو اضطررت فقـم بتمثيل الكائنـات بواسطـة UML وركز على الواجهـة وليس معالجة البيانات ... هذا الأسلوب يبسط المشروع الذي تقوم بكتابته بحيث يكون مفهـوماً لك وبالتالي فسيكون أغلب عـملك هـو كتابة الكـود دون أن تهتم وأنت تكتب في الخوارزميات والمعالجـة وبدون أن يضرب دماغـك أو ينقطع تفكيرك وتقوم برمي المشروع برمته

#7

حدث بالنسبة لي أن كتبت برامج تعدت الخمسة الاف سطر و هي من النوع المتوسط، و قد خططت علاقات الفورم ببعضها ثم استوردت مكتبة خاصة بي صممتها و بها كل الدوال التي أستخدمها في ال validfation أو visaul effects أو sound effects و ذلك للتسهيل و تقليل حجم الكود و ضمان التطوير المستمر.

بعد ذلك أكتب الأكواد و أسماء التحكمات و أرسم الشكل التصوري لكل فورم علي حدة.

أحيانا يحدث اني (اتزنق) في تسليم مشروع و يكون لا مفر من عمل تحليل بسيط له ثم البدء في التطوير مباشرة و عموما لم يحدث معي أن كان التصميم علي الورق هو نفسه الواقعي حيث أن الكثير من الأفكار تظهر أثناء الأشغال الشاقة (العمل :) )

Oracle 10G Certified Professional Developer.

عودة بعد 3 سنوات غياب، ان شاء الله سوف اتكلم معكم قريبا احبائي

#8

السلام عليكم ورحمة الله وبركاته

اخوانى الكرام

بالنسبة لى انا لم اكتب برنامجا كبيرا بمعنى الكلمة حتى الان فانا طورت برامج ومواقع انترنيت ما بين الصغيرة والمتوسطة وان كان هناك مواقع انترنيت صممتها اسطرها تعد بعشرات الالاف

انا اقوم بعمل تحليل بسيط بحيث اوضح الكائنات الاساسية عندى وكذلك محاولة تقسيم المشروع الى اجزاء قدر الامكان وهذا يسهل كثيرا اثناء عملية التطوير واوضح ذلك بالرسم ومن هذا التحليل البسيط اخرج بالجدوال الاساسية لقاعدة البيانات والعلاقات بينها - هذا اذا كان البرنامج يحتوى على قاعدة بيانات وهذا هو الغالب - .

اما شكل النماذج او الصفحات فانا غالبا ارتجله اثناء التصميم - فيعد التحليل المبدئى يكون فى راسى المطلوب من كل نموذج او صفحة - واقوم بتصميم بناء على مدخلاته ومخرجاته .

هذه الطريقة ليست صحيحة مائة فى المائة وان كانت تجدى معى فى معظم المشاريع ولكن حينما يكبر حجم المشروع - مع اعتمادى على الطريقة السابقة - اجد ان راسى بقت -- سلطة --- وغالبا اضطر الى اعادة التفكير فى جزء واحد اكثر من مرة وهذا يهدر وقت ويسبب مشاكل .

الاخ W3developer

ما هى RUP(Rational Unified Process) :(

وشكرا

تم تعديل هذه المشاركة بواسطة prince of egypt في 25 سبتمبر 2005 في 12:27

#9

بالنسبة لى فانا الان اعمل على برنامج كبير و اعمل عليه منذ ما يقرب من سنة و نصف ,

بالطبع عند تحليل النظام يجب وضع التصميم المبدئى له و كيفية عمل النظام

لكن فى 90% من البرامج التى قمت بتصميمها .. أجد أن الشكل النهائى لها يختلف شكلا و مضمونا عن التخطيط المبدئى له..

#10

بالنسبة لل RUP

Rational Unified Process

طريقة التحليل هذه طويلة نسبيا ولكنها مفيدة جدا في البناء والتطوير وتقوم على أساس البرمجة الهدفية oop وتعتمدها كثير من الشركات الكبيرة مثل ميكروسوفت , سن , ...

وتتلخص في تحديد الخدمات الأساسية الخاصة بالمشروع

ثم تفصيل الخدمات الفرعية من الخدمات الأساسية

ثم شرح كل خدمة فرعية على حدى

ثم بناء الأصناف Classes

هذا غيض من فيض والطريقة أكبر من ذلك ولكن هذا عرض سريع

#11

Xprogramming methodology

Web Citizen

ShrefInLife.gif

__________

General blog : Shref In Life

#12

بما أن تخصصي مهندس برمجيات في شركة مرموقة فإن هذا يجعلني أركز كثيرا في تطبيق مباديء دورة حياة تطوير البرمجيات.

في السابق كنت أستخدم waterfall ثم إنتقلت إلى UML و من ثم إلى Extreme Programming .

بالنسبة لي إن 75% تحليل و تصميم فقط.

#13

لا اعرف كيف يمكن البدء بالكتابة دون تخطيط

أضاعوني وأي فتى أضاعـوا * * * ليـوم كــريهـة وســـداد ثغــــر

وخـــــلونـي ومعتـرك المنايـا * * * وقد شـــرعوا أسنــتهم لنحـري

كأني لم أكــــــن فيهـم وسيطـا * * * ولم تك نســبتي في آل عمــرو

أجرر في الجـــوامع كـل يـوم * * * ألا لله مظــــلمتـي وهـصـــري

عسى الملك المجيب لمن دعاه * * * سينجيني فيعلم كيــف شكـري

فأجـــزي بالكرامـة أهـل ودي * * * وأجزي بالضـغينة أهل ضري

منتديات الرياضيات العربية

#14

Requirments

Design

Coding

Testing

Deployment

اهم الأمور قبل كتابة الكود هو أن تكون الrequirments واضحة وال design واضح وتفصيلي حتى أن الخوارزميات المستخدمة تكون مكتوبة مع بعض الأمثلة على الinputs وال ouput .

بالنسبة للتصميم فيمكن استخدام UML في وصف البرنامج وعلاقات الكائنات مع بعضها وغير ذلك من الأمور ..

بشكل عام أنا أحبذ طريقة بناء البرامج المشروحة في Microsoft Solution Framwork (MSF) و agile process و الطريقتين متشابهتين كثيرا ..

Coding on the Cloud and for the Cloud!

My Blog

هذا الموضوع مغلق.

مواضيع مشابهة