سؤال

لذا...

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

كنت أعتقد أن هذا كان بسبب الجوهرية الطريقة التي نتعلم كيفية البرنامج:ونحن عادة ما تكون مدفوعة لإيجاد حل العاملة ، وليس لفهم المشكلة.ثم ظننت أن هذا يرجع ذلك إلى حقيقة أن معظم الناس في المجتمع الرسمي ليست المهندسين ، ولكن علماء الرياضيات أو علوم الحاسب.في الوقت الحاضر, أنا أتساءل عما إذا كان لمجرد الرسمي-أساليب المجتمع الاختباء وراء بعض نوع من "التشويش" القانون استخدام جميع رموز يونيكود ، بنشاط تطوير وقحا ، unesthetic أدوات و تضحك في وجه من المعايير.

نعم لقد تم الانتقال من "إلقاء اللوم عليهم" إلى "إلقاء اللوم لنا" المنظور ;-)

لذا سؤالي هو:هل تستخدم أي نوع من الطرق الرسمية في الشركة الخاصة بك ؟ هل أدخلت عليها ، أو كانت الشروط المسبقة?ما هي التقنيات التي تستخدمها لمسح الضباب الرياضيات من مخاوف الناس و حثهم على استخدام الرسمية الأساليب ؟ ما رأيك الأدوات الحالية تفتقر للمزيد من الاستخدام ؟

هل كانت مفيدة؟

المحلول

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

وإذا كنت <م> لا يمكن تبين لهم ذلك، ربما كنت تريد أن تبني الأساليب القائمة على فلسفة بدلا من التطبيق العملي. ما لم تشارك الآخرين فلسفتك ثم أنت لن تحصل في أي مكان. وربما كنت لا ينبغي.

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

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

نصائح أخرى

وشكرا لجميع المساهمات. هم الثاقبة للغاية. واسمحوا لي أن لهب قليلا (لا أعتبر الشخصية، على الرغم من: -)

يبدو

ومعظم الناس يعتقدون أن الطرق الرسمية هي فقط حول التحقق من البرنامج. أو النظم الحيوية. قد يكون هذا صحيحا إذا نسعى مبتذلة النهائي: لإثبات نقوم به الحق برنامج (التحقق من صحة v.s.، الذي يطلب، كما قال أحد المساهمين، إذا نقوم به البرنامج المناسب)

ولكن النظر في نموذج الحقائق / أدوات فحص، مثل السبائك. تعلم استخدام أداة مثل هذا يأخذ ammount negligable من الوقت لأي شخص استخدامها لUML وOO. ومع ذلك، فإنه يمكن أن تعطيك فكرة فورية على النموذج الخاص بك. وعادة ما يستغرق ما لا يزيد عن 10 دقيقة للعثور على مكافحة سبيل المثال على مجموعة فرعية صغيرة بما يكفي لنموذج واحد يحاول استخدام (وهذا يشمل واصفا هذا النموذج في سبيكة في المقام الأول).

ومتطلبات السحب الهندسة كمثال على ذلك. واحد عادة رسم الكثير من UML. قليل من الناس استخدام الرصاص المسبوك، على الرغم من وannoted العديد من قواعد العمل بشكل غير رسمي في اللغة الطبيعية. لماذا ا؟ ضيق الوقت؟

وينظر الآن إلى حقيقة أن غالبية فقط يستخدم لها / له القناة الهضمية الشعور لإثبات أن النموذج هو للإرضاء. مرة أخرى لماذا؟ أنا يمكن أن تتخذ نفس المقدار من الوقت (ربما حتى أقل من ذلك، لأنني لست بحاجة إلى أن يهتم جماليات الرسم) لكتابة هذا النموذج في سبيكة، وانظروا فقط لsatisfiability؟ وأي نوع من الرياضيات الذي أحتاجه الآن؟ "يسند"؟ اسم نزوة لالاتحادات الدولية والقيم المنطقية ؛-) محددو الكمية؟ أسماء نزوة لForEachs () ...

وماذا عن نظم المعلومات الكبيرة؟ أنها لا تحتاج إلى أن تكون حاسمة ... مجرد محاولة لتحليل في رأسك المفاهيمي (لا التنفيذ!) رسم بياني مع أكثر من 600 فصول. أرى الكثير من الناس ضجيجا رؤوسهم في الحائط مع الأخطاء نموذج سهلة جعل لأنها غاب عن بعض القيود، أو نموذج يسمح الأشياء الغبية أن يحدث.

والحقيقة هي، واحدة لا تحتاج إلى استخدام نهج رسمية من الرأس الى الذيل. منح، ويمكنني أن يثبت وجود تطبيق كامل في كوك، وأشهد أنه هو 100٪ متوافق مع بعض مواصفات. قد يكون هذا النهج الحاسوب عالم / عالم الرياضيات.

ومع ذلك، مع بنور الفلسفة GTD، لماذا لا يمكنني تفويض بعض المهام للكمبيوتر والسماح لها للمساعدة في تحسين التنمية الخاص بي؟ هل هو حقا مسألة "وقت"، أو عادي، وقلة بسيطة من القدرات التقنية والرغبة في التعلم / inovate؟

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

وفي حين أن هناك بعض المناطق حيث أستطيع أن أرى دورا للالطرق الرسمية في مؤسسة (حسابات الاستيفاءات والمنطق الثقيلة البرمجيات المتخصصة، حاجة كبيرة لخصائص يمكن اثباتها كما هو الحال في سلامة البرامج الهامة) أنها توفر القليل من المساعدة في الحصول على متطلبات الصحيحة على على سبيل المثال كيفية الوفاء النظام العميل من خلال إصدار واحد أو أكثر من أوامر التوريد لمجموعة من الممكن جهات خارجية أو داخلية.

وأعتقد أن الحكم لم يصدر بعد على النهج القائمة على نموذج واللغات مجال معين. أعتقد أنهم سينجحون أو تفشل تبعا لما إذا كانت تقديم التغذية الراجعة أسرع من تكنولوجيا المعلومات لرغبات واحتياجات الجانب التجاري، وعما إذا كانت تفترض رجال الأعمال سوف تضطر إلى القيام بأي مهمة دراسة.

وتقنية أمرا سهلا. الاتصال هو الثابت. الطرق الرسمية قد تساعدنا على القيام الأمور في نصابها الصحيح، ولكن تلك التي رأيتها تفعل شيئا لمساعدتنا على القيام بالأشياء الصحيحة. (نعم، هذه هي الكليشيهات، ولكن هذا لأنهم لا مفر منه ومؤلم صحيح).

أنا أخذ دورة على المواصفات والتحقق'.كجزء من الهيكل بالطبع نحن نفعل ما يلي- 1.أدوات التعلم مثل PVS(نموذج نظام التحقق) http://pvs.csl.sri.com/ و SMV(البرمجيات النمذجة والتحقق) http://www.cs.cmu.edu/~modelcheck/smv.html 2.وبصرف النظر عن أن نفعل تشريح الحوادث التي حدثت بسبب فشل في البرنامج.مثلا- فشل أريان V

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

ولقد حاولت الحصول على الناس لتبني أساليب مواصفات رسمية عدة مرات (Z وسبيكة) وجعلت نفس اكسبيرينسي لديك: معظم الناس، في حين أن الشعور أنها تخدم غرضا مفيدا، غير مريحة جدا استخدامها ل العمل الفعلي.

ومضحك بما فيه الكفاية، ونفس الناس أكثر من سعداء لإنتاج الرسوم البيانية UML عديمة الفائدة تماما في كميات عملاقة لفهرس الصور.

وأعتقد أن هناك سببين رئيسيين لذلك:

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

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

والطرق الرسمية لا معنى في النظم حيث تكلفة الفشل منخفضة.

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top