• 0
نور الإسلام

TFS و Source Controls


سؤال

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

هل تعرف ما هو الـ Source Control .. أم لا ؟

وهل تعرف ما هو الـ Team Foundation Server أم لا .. وهل تعمل به ؟

من فضلكم أجيبوا على أسئلة التصويت .. فضلاً لا أمراً

جزاكم الله خيراً

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

73 إجابة على هذا السؤال .

  • 0

منتدى هندسة البرمجيات هو المكان الامثل للتصويت

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

لا أعلم أخي طارق إبراهيم .. ما أحسست أن هندسة البرمجيات لها علاقة بالموضوع .. فلم أحب أن أضع موضوعاً غير متعلق بالقسم.

ولكن لا مشكلة بإذن الله .. يمكنكم نقله إلى المكان المناسب :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أظن الموضوع عام ولا يختص بقسم دون الآخر ... ولكن Team Foundation Server متعلق أكثر بـ MS ... أما Source Control فللكل ...

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

استخدم git ك source control ولكني ما زلت مبتدئ به ،، أما المصطلح الثاني فلا أعلمه وأعتقد أنها فرصه جيدة لتعريفنا بها

شكرا :).

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاكم الله خيراً على التصويت .. وأتمنى المزيد من التصويتات ..

أخ وجدي ..

الـ TFS ليس مجرد Source Control ولكنه أعمق من هذا بكثير ولكني فضلت السؤال فقط عنه بصفة عامة على اعتبار أن أحد مكوناته هي الـ Source Control ..

وهو أحد منتجات ميكروسوفت التي أعتبرها علامة مميزة جداً في عالم تطوير البرمجيات الفترة الماضية .. وتم إصدار ثلاثة نسخ منها إلى الآن .. TFS 2005 و TFS 2008 و الوافد الجديد الذي أنتظره بفارغ الصبر TFS 2010 والموجود منه حالياً النسخ التجريبية ..

وبإذن الله سأحاول أن يكون هناك فرص أكبر للتعرض على المنظومة من قرب والاستفادة منها أكثر .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
أظن الموضوع عام ولا يختص بقسم دون الآخر ... ولكن Team Foundation Server متعلق أكثر بـ MS ... أما Source Control فللكل ...

+1

إذا كنت ستتحدث عن منتجات شركه ما, فالأفضل أن تنقل هذا التصويت إلي قسم هذه الشركه,,,,

أنا كنت أستخدم IBM Rational ClearCase

و الأن أصبحت أستخدم AccuRev

:D

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاكم الله خيراً

أخ هويدى .. أنا لا أتحدث عن منتج بعينه .. ولكن كنت أريد أن أعرف مدى إلمام المبرمجين العرب بهذا الأمر الأساسي الذي ولا بد منه ..

أما سؤالي عن الـ TFS لأنه أولاً متعلق بالموضوع .. ولأنه يدعم كل منتجات ميكروسوفت .. وأيضاً له بعض الـ plugins من أجل الـ Java كما أنه Extensible ويمكن الزيادة عليه ... إلخ إلخ .. فرأيته برنامج عام يمكن للجميع أن يستفيد منه عند معرفته بطريقة أو بأخرى ..

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السؤال الاول - نعم

السؤال الثانى - لم استخدمه لكن بحكم عملى اعمل على ادوات بديلة مثل IBM RTC, RRC and RQM. وحسب ماقرأت عن TFS من صفحة الويكيبيديا اجد ان بعض خصائصها قريبة من IBM RTC. و عامة الكلاينت لمعظم ادوات IBM مبنى على Eclipse و منطقيا يوفر دعم لاكثر من لغة. أخى {هويدي} - IBM Rational ClearCase ممكن مقارنته مع Microsoft Visual SourceSafe. ممكن انت تقصد IBM Rational ClearQuest و هو النسخة القديمة قبل التطوير الى RTC و هو مشابه بشكل كبير الى TFS ايضا. أنا لااستطيع الحكم او تقييم TFS قبل تجريبه بكل تأكيده لكن بكل الاحوال خطوة موفقة من مايكروسوفت.

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

استخدم git و كتبت موضوعا عنه

اما البرنامج اللذي ذكرته من ميكروسوفت فلا اظن انه يصل الى مستوى git

-3

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السؤال الاول - نعم

السؤال الثانى - لم استخدمه لكن بحكم عملى اعمل على ادوات بديلة مثل IBM RTC, RRC and RQM. وحسب ماقرأت عن TFS من صفحة الويكيبيديا اجد ان بعض خصائصها قريبة من IBM RTC. و عامة الكلاينت لمعظم ادوات IBM مبنى على Eclipse و منطقيا يوفر دعم لاكثر من لغة. أخى {هويدي} - IBM Rational ClearCase ممكن مقارنته مع Microsoft Visual SourceSafe. ممكن انت تقصد IBM Rational ClearQuest و هو النسخة القديمة قبل التطوير الى RTC و هو مشابه بشكل كبير الى TFS ايضا. أنا لااستطيع الحكم او تقييم TFS قبل تجريبه بكل تأكيده لكن بكل الاحوال خطوة موفقة من مايكروسوفت.

جزاك الله خيراً أخي أحمد على الإضافة ..

استخدم git و كتبت موضوعا عنه

اما البرنامج اللذي ذكرته من ميكروسوفت فلا اظن انه يصل الى مستوى git

برنامج git ما هو إلا Source Control ... أما الـ TFS أعمق من هذا بكثير ..

فلا يمكن مقارنة git بـ TFS إلا في جزئية ال Version Control ... ولا أرى أنه يوجد بالسوق برنامج متكامل وقوي ورائع مثل الـ TFS لمنتجات ميكروسوفت خاصة ..

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

حاليا نستخدم في شركتي VisualSVN و ليس مجاني

و لكن بالنسبة لل Server Side يمكنك استخدام النسخة المجانية VISUALSVN SERVER Standard Edition او اشراء Enterprise Edition لمزيد من ال features

او استخدام cvsnt و مجاني

و يمكنك بالنسبة لل Client ايضا استخدام tortoisesvn و يتم استخدامها عن طريق Windows Explorer و مجاني

و بالنسبة لل MS Visual Studio يمكنك استخدام ankhsvn كـ Plug in و مجاني

تم تعديل بواسطه AhmedElbaz
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاك الله خيراً أخ أحمد الباز على المشاركة النافعة ..

ولكن أرأيت .. كم Tool تريدها لكي تعمل بكفاءة وأنت تستخدم SVN .. وطبعاً هذا لأنه OpenSource فهناك الكثير من الشركات تساهم لتطوير المنتج بوجهة نظر شخصية .. فينتج أكثر من منتج .. وكلها يكمل بعضها بعضاً .. ولكي تعمل بكفاءة أو تستفيد بكل هذه الأدوات عليك أن تقوم بإنزالها جميعاً ومن ثم قراءة كل الـ instructions الخاصة بعملية التثبيت .. إلخ إلخ .. إلى أن تستطيع أن تنشيء Environment مناسبة للعمل ...

ولكن انظر الفارق بين هذا وبين ما قدمته ميكروسوفت بخصوص TFS ... فهي مجرد Package واحدة .. بها عدة أمور وكلها تعمل Out Of the Box بدون أي أعباء إضافية .. وطبعاً هي ليست مجانية

1) تحتوي على Version Control

2) تحتوي على WorkItem Tracking

3) تحتوي على Reporting Services من أجل استخراج التقارير النافعة الخاصة بكل مشروع

4) تحتوي على Sharepoint من أجل التفاعل بين أعضاء المشروع الواحد

5) تحتوي على Build Machine .. فعن طريق TFS يمكنك استخدامه في عملية ال Continuous Integration و الـ Gated Check-ins

6) يمكن من خلاله تطبيق Process معينة على مشروعك .. مثل الـ Scrum أو ال XP أو MSF ..... إلخ إلخ

7) يدعم التواصل مع برامج الـ Office الشهيرة .. مثل Excel و MS Project من أجل عمليات إدارة المشاريع وتوزيع المهام .. إلخ

8) هذا بالإضافة إلى أنه يدعم Out Of the Box التواصل مع VS الذي أعتبره أقوى بيئة برمجية في العالم الآن. وتم إصدار عدة إصدارات منها من أهمها ال Team System 2005/2008 .. أو Ultimate 2010 .. والتي تحتوي على أدوات تساعد الـ Developer والـ Tester والـ Architect والـ Database Engineer .... وأكثر من هذا.

وهناك الكثير جداً جداً لم أذكره وإنما ذكرته بإيجاز ...

فانظر ما هو الفارق ؟!

تم تعديل بواسطه أحمد عبد المنعم
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكرا يا أحمد علي المعلومات القيمة

كنت بس بتكلم عن SVN لانها الاداة المستخدمة في شركتي و ليس لافضليتها

علي العموم عملية تنصيب SVN بسيطة الي حد ما و يتميز بسرعة عالية في الاداء

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

نعم أنا أعلم قصدك أخي أحمد .. وشكراً للمعلومات القيمة والسهلة التي أوردتها لنا

وأعلم أن هناك كثير من الشركات تستخدم SVN وغيره من البرامج وهذا لأنه أولاً: مفتوح المصدر أي مجاني ولا توجد تعقيدات في الـ Licensing والدفع وما شابه كما أنه مناسب لبيئات التطوير التي تعتمد على منتجات أخرى غير منتجات ميكروسوفت

جزاك الله خيراً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أنا استخدمت SVN في الماضي و أستخدمه حالياً في مشاريع خارج العمل, و أستخدم داخل العمل TFS من وجهة نظري SVN رائع في حالة أن يكون المستخدمون Occasionally Connected و لا تفهمني خطأ فالTFS يدعم هذا الاسلوب و لكن أراه في SVN أبسط و دون أن تشعر أنك تفعل شئ مختلف.

أعتقد أيضاً أن خواص ربط الWork Item مع الSource Control هي أكثر من رائعة حيث أن هذا يمكنك من ربط الCheck ins معWorkitems و هو يسهل الكثير من الوقت في المستقبل عندما تحتاج أن تعرف لماذا تم كتابة هذه الفقرة بهذه الطريقة, و عندما ترجع لتاريخ الملف تجد السبب هو مشكلة حدثت و لها Bug ID و هذه الBug لها تاريخ يمكنك العودة له و الاستفادة منه لفهم المشكلة.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
فانظر ما هو الفارق ؟!

لا فارق ولا شي, كل هذا يصب في خانة البهرجات الدعائية

اضرب لك مثال بسيط جدا على منتجات ميكروسوفت: visual source safe اسوأ اداة source control في تاريخ البشرية

مثال آخر: star team, اسوأ اداة source control رأيتها في حياتي, مليئة بـ"خصائص" لا قيمة لها مثل اللتي ذكرتها في قائمتك, لكنه عديم الفائدة و لا يقوم بشيء مفيد سوى تحويل حياة المطورين و مديري المشاريع الى جحيم

المضحك في الامر انك تسخر من ان svn مفتوح المصدر!!

svn ليس كفوء بما فيه الكفاية و لكن السبب ليس انه مفتوح او مغلق بل السبب انه مبني على تكنلوجيات و افكار قديمة (cvs)، و حين اقول غير كفوء بما فيه الكفاية فاعني ذلك مقارنة بـ git, اما لو قارنت svn بالادوات الاخرى (التجارية) فاظنه يتفوق على اغلبها.

-6

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

في البداية أهلاً بك في النقاش .. الذي أتمنى أن يكون بناءً ولا داعي للانفعال

في البداية أنا لست متحيزاً لميكروسوفت فعلى سبيل المثال أنا أكره شيء يدعى Internet Explorer وأحاربه في كل مكان لأنه متصفح أقل ما يقال عنه أنه سيء ..

ولست متحيزاً لفئة الـ Open Source أو ال Closed Source وما إلى ذلك .. فعلى سبيل المثال أنا أعمل ببعض الأدوات مفتوحة المصدر ولا شيء في هذا على الإطلاق

يمكنك أن تسميني Agnostic .. لا يهمني من الصانع مادامت التكنولوجيا تفيدني في عملي أو في مشكلتي

أولاً: أنا لم أسخر من ال SVN أصلاً .. وكوني أشرت أنه Open Source فهذا لأنه حقيقة .. فأنا دائماً أحب أن أشير إلى الأمور التي قد يراها البعض فائدة في حالته والبعض الأخر يراها سيئة .. فكما تعلم لا يوجد الطريقة المثلى دائماً في كل شيء .. فعلى حسب حالتك يكون الحل .. مثلاً لو أن شخصاً أراد أن يستخدم Source Control ولا يريد أن يدفع سنتاً واحداً لأن Business case الخاصة به تحتم عليه فعل ذلك فإذن الأفضل له أن يتجه لأي الأدوات المشهورة في ال Source Control كـ SVN على سبيل المثال وليس الحصر. إذن ذكري هنا أن SVN مفتوح المصدر ليست سُبه ولكنها معلومة يستفيد منها من لا يعرفها أو من تكون حالته لا تسمح إلا باستخدام أداة مفتوحة المصدر.

ثانياً: يحكم على الشيء من عمل به واختبره جيداً .. ولا يحكم عليه أبداً العواطف أو الانحياز لشركة دون أخرى .. استخدمت SVN سابقاً واستخدمت TFS حالياً ... وكما قلت هو ليس مجرد Source Control فالمقارنة هنا ليست عادلة .. ولكن سأقارن فقط بخصوص ال Source Control ... فالـ TFS أقوى بكثير جداً من الـ Visual Source Safe السيء جداً .. هذه واحدة ..

أما الثانية، فهي أن TFS يعمل عليه أكثر من 14000 مبرمج في آن واحد .. حسب تصريحات ميكروسوفت في إحدى الجلسات في PDC على ما أتذكر 2008 أو 2009 ... وخصائص الـ TFS هي ليست بهرجة دعائية .. بدليل أنها أضافت للتكنولوجيا الخاصة بالإدارة و البرمجة وغيرها أكثر بكثير مما تتخيل .. فهي تمكن الفريق من تطبيق Scrum على سبيل المثال وتحديد المهام وخلافه وربط كل هذا بالـ Source Control فهذه ميزة لم تكن بهذه القوة من قبل .. ولا أظنها ستكون في الفترة الحالية خاصة بعد بزوغ شمس TFS 2010 الذي يحتوي على بعض المزايا الرائعة التي لم أرها من قبل في أي منتج لأنه ببساطة لا يوجد منتج مثل الـ TFS.

أنا هنا لا أقارن الـ TFS بغيره لأن المقارنة لا تصلح كما أذكر ذلك مراراً وتكراراً .. ولكني كنت أحاول أن أعرف من يعرفه ومن لا يعرفه .. وإذا كانت الأداة التي تستعملها تؤدي لك الغرض إذاً فهذا رائع ولا تستغني عنها ما دمت لم تر في غيرها ما هو أفضل منها.

قريباً بإذن الله .. سأعرض مزايا الـ TFS حتى يعلم الجميع أن هناك الكثير من القوة والمزايا والاحتراف لم يعشه من قبل في مجال ال Software Management ..

جزاك الله خيراً

تم تعديل بواسطه أحمد عبد المنعم
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الVisual Source Safe منتج قديم جداً فأول نسخة ظهرت منه كانت تعمل على الDOS و اخر تحديث ظهر له كان عام 2005و لكن في نفس السنة ظهر TFS كبديل أقوى و أكثر احترافية, و هي أيضاً نفس السنة التي بدأ فيها العمل على Git و هنا لا يصح لنا مقارنة Git مع Visual Source Safe فالمقارنة غير عادلة بالمرة.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

رجاء اخي احمد ومتميز والجميع.. اكملوا النقاش بشكل معقول ومنطقي وبناء..

تحياتي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

في البداية أهلاً بك في النقاش .. الذي أتمنى أن يكون بناءً ولا داعي للانفعال

في البداية أنا لست متحيزاً لميكروسوفت فعلى سبيل المثال أنا أكره شيء يدعى Internet Explorer وأحاربه في كل مكان لأنه متصفح أقل ما يقال عنه أنه سيء ..

ولست متحيزاً لفئة الـ Open Source أو ال Closed Source وما إلى ذلك .. فعلى سبيل المثال أنا أعمل ببعض الأدوات مفتوحة المصدر ولا شيء في هذا على الإطلاق

يمكنك أن تسميني Agnostic .. لا يهمني من الصانع مادامت التكنولوجيا تفيدني في عملي أو في مشكلتي

أولاً: أنا لم أسخر من ال SVN أصلاً .. وكوني أشرت أنه Open Source فهذا لأنه حقيقة .. فأنا دائماً أحب أن أشير إلى الأمور التي قد يراها البعض فائدة في حالته والبعض الأخر يراها سيئة .. فكما تعلم لا يوجد الطريقة المثلى دائماً في كل شيء .. فعلى حسب حالتك يكون الحل .. مثلاً لو أن شخصاً أراد أن يستخدم Source Control ولا يريد أن يدفع سنتاً واحداً لأن Business case الخاصة به تحتم عليه فعل ذلك فإذن الأفضل له أن يتجه لأي الأدوات المشهورة في ال Source Control كـ SVN على سبيل المثال وليس الحصر. إذن ذكري هنا أن SVN مفتوح المصدر ليست سُبه ولكنها معلومة يستفيد منها من لا يعرفها أو من تكون حالته لا تسمح إلا باستخدام أداة مفتوحة المصدر.

ثانياً: يحكم على الشيء من عمل به واختبره جيداً .. ولا يحكم عليه أبداً العواطف أو الانحياز لشركة دون أخرى .. استخدمت SVN سابقاً واستخدمت TFS حالياً ... وكما قلت هو ليس مجرد Source Control فالمقارنة هنا ليست عادلة .. ولكن سأقارن فقط بخصوص ال Source Control ... فالـ TFS أقوى بكثير جداً من الـ Visual Source Safe السيء جداً .. هذه واحدة ..

أما الثانية، فهي أن TFS يعمل عليه أكثر من 14000 مبرمج في آن واحد .. حسب تصريحات ميكروسوفت في إحدى الجلسات في PDC على ما أتذكر 2008 أو 2009 ... وخصائص الـ TFS هي ليست بهرجة دعائية .. بدليل أنها أضافت للتكنولوجيا الخاصة بالإدارة و البرمجة وغيرها أكثر بكثير مما تتخيل .. فهي تمكن الفريق من تطبيق Scrum على سبيل المثال وتحديد المهام وخلافه وربط كل هذا بالـ Source Control فهذه ميزة لم تكن بهذه القوة من قبل .. ولا أظنها ستكون في الفترة الحالية خاصة بعد بزوغ شمس TFS 2010 الذي يحتوي على بعض المزايا الرائعة التي لم أرها من قبل في أي منتج لأنه ببساطة لا يوجد منتج مثل الـ TFS.

أنا هنا لا أقارن الـ TFS بغيره لأن المقارنة لا تصلح كما أذكر ذلك مراراً وتكراراً .. ولكني كنت أحاول أن أعرف من يعرفه ومن لا يعرفه .. وإذا كانت الأداة التي تستعملها تؤدي لك الغرض إذاً فهذا رائع ولا تستغني عنها ما دمت لم تر في غيرها ما هو أفضل منها.

قريباً بإذن الله .. سأعرض مزايا الـ TFS حتى يعلم الجميع أن هناك الكثير من القوة والمزايا والاحتراف لم يعشه من قبل في مجال ال Software Management ..

جزاك الله خيراً

أتفق معك تماماً أخ أحمد ... للأسف الكثيرون ينظرون إلى TFS على أنه مجرد Source Control ... لا يعلمون أهميته في Mass Team Collaboration وEnterprise Test Environment وPublishing Areas وReporting Features وBuilding Tools ووووو الكثير والكثير غيرها ... وليس كونه مايكروسوفت صار سيئاً ... بالعكس هناك عدد من منتجات مايكروسوفت من أروع المنتجات في مجالها حول العالم ... وأنا لست منحازاً لمايكروسوفت أو غيرها ، فأنا هذه الأيام أتعلم PHP وMySQL ، ولكن المنتج القوي يجب أن نعطيه كل احترامنا .. وTFS من هذه الفئة المحترمة.

وأتمنى أن يتقبل الجميع كل احترامي وتقديري

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

TFS و RTC يوفران فى الاساس دعم للـ SCM and Wrok items و خلافه. و حتى ممكن اتجاههم و خصائصهم متشابهة لكن بطرق مختلفة.

هذه بعض الروابط التى تجرى مقارنة تفصيلية بن ادوات الراشنال و مايكروسوفت على مستوى الخصائص :

- الاصداريات السابقة للـ IBM Rational:

* TFS 2008 vs ClearCase/ClearQuest UCM

- أحدث اصدراية للـ RTC فى الوقت الحالى:

* TFS 2008 vs RTC 2.0

بالنسبة لى انا افضل RTC للاسباب التاليه :

-دعم لاكثر من نظام كلاينت و سيرفر غير متجانس و اكثر من نظام تشغيل .

-امكانية تكامله مع منتجات اخرى و ذلك لدعم اكثر (More Lifecycle integration) مثل RRC and RQM. واعتقد انه لايوجد مايشابة RQM فى TFS.

-دعم MS Visual Studio ليس مجرد ملئ للفجوات فى الخصائص بل هى تشابه تماما مثيلتها فى Eclipse.

والسلام ختام

تم تعديل بواسطه Ahmedvc
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاك الله خيراً أخ محمد .. وكذلك أخ أحمد على الإضافة الرائعة :)

ولكن لم أفهم هذه الجملة:

-امكانية تكامله مع منتجات اخرى و ذلك لدعم اكثر (More Ligecycle integration) مثل RRC and RQM. واعتقد انه لايوجد مايشابة RQM فى TFS.

هل يمكنك توضيحها بارك الله فيك :) .. جزاك الله خيراً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

لقد ضربت مثال visual source safe و starteam للدلالة على اني لا اثق في ادوات الـ source control التجارية مطلقا.

ايضا من تجربتي, فان البرامج التجارية دائما ما تكون مليئة بالبهرجات الدعائية من دون مصداقية لان هدف الشركات يكون بيع هذه البرمجيات للشركات الاخرى,

لهذا نجد ان قائمة الـ features تكون عادة موجهة للتأثير على صناع القرار في الشركات و ليس لاقناع المبرمج بان هذا المنتج سيسهل حياته.

صناع القرار في الشركات عادة لا يفهمون الكثير, ربما يكفي ان يعرفوا ان المنتج من microsoft + بعض المصطلحات الفضفاضة مثل scrum ليقتنعوا ان شركتهم يجب ان تشتري هذا المنتج!!!

عادة يتم القرار ايضا دون استشارة المبرمجين في الشركة, او ربما يستشيرونهم دون الاخذ برأيهم.

هذا من جهة الدعاية

اما من جهة الاستخدام

فبالنسبة لي المصدر المفتوح دائما افضل حين يتعلق الامر بادوات البرمجة و التطوير, لان المبرمجين هم انفسهم يطورون هذه الادوات بما يناسبهم و يسهل عليهم امورهم البرمجية.

على سبيل المثال git يستخدم حاليا لادارة الكثير من المشاريع المفتوحة المصدر، و ما يميزه هو سرعته العالية و امكانية استخدامه في عمل parallel development يعني يمكن لفريق مكون من اكثر من عشر اشخاص ان يقوم كل منهم بتطوير جزء معين من المشروع دون التأثير على الآخر، و هذا هو اهم شيء من اجل التطوير بطريقة scrum لانه من دون ذلك سيقوم الجميع بالتطوير في نفس الخط: trunk, و سيكون من الصعب جدا ان يقوم اي شخص بتطوير شيء دون التأثير على بقية الفريق.

من خصائص git ايضا انه لا يحتوي على سرفر ولا setup معقد، فهو مجرد اداة عادية يمكنك تشغيلها من اي مكان

و هذه خاصية و ليس نقص.

هناك خصائص كثيرة اخرى لا تتوفر في اغلب ادوات الـ source control و ربما يعتبرها البعض رفاهية تقع خارج نطاق هذه الادوات, مثل git bisect اللذي يساعد في ايجاد الاخطاء بشكل اوتوماتيكي للغاية و لا اظن ان اي اداة تجارية تستطيع القيام بامر مشابه. ببساطة لان من طور هذه الخاصية هم المبرمجون انفسهم اللذي يحتاجونها لاتمام عملهم باقل قدر ممكن من وجع الراس.

لاحظ مثلا خصائص TFS انه يحتوي على build machine؟؟؟ بالله عليك ما فائدة هذا الامر؟ الا يوجد العديد من الادوات اللتي تقوم بعمل build للكود؟

-3

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أولاً أخي حسن .. أنا سعيد جداً بالنقاش معك .. بحق .. نقاش ممتع وعلمي وبه استفادة عالية لي فجزاك الله خيراً

ثانياً أريد أن أعلق على ما ذكرت .. فما ذكرته أنت بخصوص git وأنا لم أعمل به - حتى يكون النقاش عادلاً - كما يبدو لي أنت لم تعمل بالـ TFS ... يعتبر features صغيرة في الـ TFS موجودة من الإصدار الأول له مثل ال Parallel Development ، والـ Conflict Resolving ومعرفة الأخطاء وأي مكان سبب الخطأ ومن سببه وفي أي وقت .. كل هذا مدعم بمجرد العين المجردة في ال TFS وهو أداة تجارية!!!

ثالثاً أنت قلت أن الأدوات مفتوحة المصدر قام ببرمجتها مبرمجين .. فأنا لا أعرف هل مغلقة المصدر قام ببرمجتها أحد أخر غير المبرمجين ؟! لا بالطبع .. بل أزيدك من البيت شعراً .. إن الـ TFS تعمل به ميكروسوفت داخلياً وهو ما يسمى بالـ Dogfooding .. وهو مصطلح يعني أن الشركة المنتجة لبرنامج معين تقوم بتطبيقه في مؤسستها وهذا يعطي درجة اختبار أعلى .. خاصة في ميكروسوفت:

1) عدد المبرمجين ومن يعاونهم في كل الأدوار هائل ..

2) المبرمج يعمل بأداة صنعت من أجل المبرمج

وهذا يعني أن TFS من أقوى إن لم يكن أقوى الـ Packages في مجاله الآن ..

رابعاً بخصوص أن git ليس له سيرفر وأمور مشابهة لذلك .. فهذا جيد ولا شك .. ولكن TFS صنع ليدعم المؤسسات والشركات كما أنه يحتوي على عدة Components تجعله أضخم من أن يكون مجرد Installer صغير!

خامساً استعجبت من سؤالك عن ال Build Machine؟ من أهم أساسيات العمل في فريق هو الـ Continous Integration and Build Automation .. بمعنى .. أنه في حالة قام أحد أعضاء الفريق بإنهاء Feature معينة وقام بعمل Check in أي أعطى الـ TFS أمر بتخزين ما تم كتابته من الكود على ال branch المناسب .. مباشرة تقوم ال Build Machine بعمل الآتي:

1) تتأكد من الكود كله يمر بمرحلة الـ Build بسلام بعد إضافة الكود الجديد .. وإن فشل ال Build يتم الإعلان والإشارة إلى مكان الخطأ مباشرة وأي ملفات الأكواد التي بها الخطأ وما إلى ذلك .. بل وتقوم بإعطاء مهمة لأحد المبرمجين بإصلاح الخطأ مع إرسال كل التفصيلات الخاصة بالخطأ الذي حدث دون تدخل بشري أصلاً

2) بعد ذلك أي بعد التأكد من الـ Build وسلامته .. يتم تشغيل كل ال Unit Tests أوتوماتيكياً .. والتأكد من أنها جميعاً تعمل وتنجح .. وإلا ستعطي الـ Build machine رسالة خطأ تحذيرية وتعطي كل المعلومات الكافية عن أي Unit Test الذي فشل ... إلخ

3) كل Build تعني أنك قمت بعمل نسخة جاهزة للعمل .. وبالتالي مع الوقت يكون عندك نسخ كثيرة .. وليست نسخة واحدة .. يقوم الـ TFS بالحفاظ عليها .. ويمكنك من خلاله حذف ما تريد وإعطاء مهام محددة مثل Acceptance Testing للـ Build الفلانية يقوم بها ال Tester الفلاني .. ثم يدخل ال Tester للمهمة الخاصة به .. ويستطيع من خلالها الوصول لل Build المطلوبة التي ربما تكون منذ ثلاثة أيام وتحتوي على Features مختلفة عن ال build الحالية ثم يقوم بعمل ال Test الخاص به .. ومن ثم تسجيل النتائج على ال TFS وهذا على سبيل المثال وليس الحصر

4) يمكن لل Build machine أن تكون عبارة عن أكثر من جهاز .. وكل جهاز يقوم بعمل build لجزء معين .. وهذا مفيد في حالة الفريق الذي يعمل على أكثر من Environment مثلاً فيدخل كل فريق على ال Build الخاصة به ... وهكذا

هناك أمور لا تعد ولا تحصى يمكن أن أسردها هنا خاصة بال Build Machine ...

وأقولها وبكل بساطة .. أي مشروع به فريق يعمل ب Source Control ولا يعمل ب Build machine ليس مشروعاً برمجياً على الإطلاق! لأنه من أبسط القواعد المعروفة خاصة في ال Agile Methods

جزاك الله خيراً :)

تم تعديل بواسطه أحمد عبد المنعم
4

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم ...

الصراحة أنا تعرفت على git على يد الأخ حسن. لم أكن افهم الفائدة أو كيف استخدم تلك الأدوات "المعقدة" المستخدمة لإدارة المشاريع.

لذلك لن أدخل في النقاش من هذه الناحية,

لدي فقط تعليق بسيط:

ثالثاً أنت قلت أن الأدوات مفتوحة المصدر قام ببرمجتها مبرمجين .. فأنا لا أعرف هل مغلقة المصدر قام ببرمجتها أحد أخر غير المبرمجين ؟! لا بالطبع .. بل أزيدك من البيت شعراً .. إن الـ TFS تعمل به ميكروسوفت داخلياً وهو ما يسمى بالـ Dogfooding .. وهو مصطلح يعني أن الشركة المنتجة لبرنامج معين تقوم بتطبيقه في مؤسستها وهذا يعطي درجة اختبار أعلى .. خاصة في ميكروسوفت:

1) عدد المبرمجين ومن يعاونهم في كل الأدوار هائل ..

2) المبرمج يعمل بأداة صنعت من أجل المبرمج

الـ Dogfooding لها إيجابيات, كما أن لها سليبات. هناك شخص يسمى jalf كتب عن الموضوع,و كيف أن التغني بالموضوع هو أمر دعائي أكثر منه أمر ذو فعالية حقيقية.

تحياتي...

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .