CH01. L05. The Psychology of Testing

MaharaTech - ITI MOOCA
19 Nov 201703:59

Summary

TLDRهذا النص يناقش الفرق بين العقلية اللازمة لนัก البرمجيات و那些 who are testing البرمجيات. يناقش الأهمية من الاختبار من شخص غير المبرمج، ومدى مستويات الاعتماد على الشخص الآخر في الاختبار. كما يناقش النصائح لتحسين التواصل بين المختبرين والفريق الآخرين، ويشدد على أن الأخطاء التي يتم اكتشافها خلال الاختبار يمكن أن توفر الكثير من الوقت والمال ويحد من المخاطر التي قد تواجه المنتج. وي終了 بنصائح لتحسين التواصل البناء.

Takeaways

  • 🤔 الفرق في التفكير بين مطور البرمجيات و مختبر البرمجيات في عملية الاختبار.
  • 👥 الأهمية من الاعتماد على شخص مختلف عن المطور في الاختبار لتحسين التركيز والقدرة على اكتشاف الأخطاء.
  • 🔍 ترتيب مستويات ال استقلال في الاختبار من أقل إلى أكثر دقة، بدءًا من المبرمج نفسه وحتى الشخص الخارجي من الشركة.
  • 💡 الأهمية من التواصل ال建設ي بين مختبر البرمجيات وفريق التطوير للتجنب من المشاعر السلبية.
  • 🚫 ال勘誤 الشخصية في الاختبار و将其视为一项建设性活动،因为它有助于提高产品质量和开发者的技能。
  • 🧐 مهارات مختلفة تتطلبها مختبر البرمجيات مثل الcuriosity, الskepticizm المهني، النظر النقدي، والاهتمام بالتفاصيل.
  • 💼 ال勘誤 التي يتم اكتشافها خلال الاختبار يوفر وقتًا واموالًا يمكن أن تضيعها الشركة إذا تم إطلاق المنتج مع وجود ال勘誤.
  • 🛠️ اكتشاف ال勘誤 خلال الاختبار يساعد على تحسين مهارات المطورين من خلال اكتشاف أخطائهم وتحسين مهارتهم.
  • 🗣️ مهارات التواصل الشخصية لمختبري البرمجيات لتحقيق التواصل ال建設ي مع الآخرين.
  • 📝 النصائح لتحقيق التواصل ال建設ي مثل الإيمان بالتعاون، فهم المشاعر الشخصية للآخرين، التأكد من فهم الآخرين وفهمهم.
  • 📑 تقديم نتائج الاختبار لفريق كاملًا بطريقة neutral، دون الانتقاد أو الاتهام، مما يساعد على تحسين الأداء الجماعي.

Q & A

  • ما هي الفرق في التفكير بين مطور البرمجيات و مختبر البرمجيات؟

    -الفرق في التفكير ينبوع من الدورتين المختلفتين، حيث يركز المطور على إنشاء وتطوير الكود، في حين يركز المختبر على اكتشاف الأخطاء والفشلات.

  • لماذا يجب أن يعتمد الفحص على شخص ليس مطور البرمجيات؟

    -الاعتماد على شخص آخر يمكن أن يوفر مزيد من الوضوح والوضوح، حيث يمكن أن يساعد في اكتشاف الأخطاء التي قد تفوتها المطور.

  • ما هي مستويات الاعتماد في الفحص على شخص آخر؟

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

  • لماذا يكون من الأفضل تخصيص مهمة الفحص لشخص آخر؟

    -因为这可以让开发者更专注于开发,而测试人员可以专注于发现缺陷和失败。

  • في ما مرحلتين يمكن تنفيذ الفحص المستقلة؟

    -الفحص المستقلة يمكن تنفيذه في أي مستوى من مراحل الفحص، سواء كانت فحص الوحدات أو الدمج أو الأنظمة أو القبول.

  • ما هي المفاهيم الخاطئة التي يمكن أن توجد حول الفحص والمختبر؟

    -قد يرى المختبر كشخص ينقل الأخبار السيئة ويكتشف الأخطاء في العمل، مما يمكن أن يؤدي إلى اعتبار الفحص كنشاط مدمر.

  • كيف يمكن تجنب المشاعر السيئة بين المختبرين وبقية الفريق؟

    -يمكن تجنب المشاعر السيئة من خلال التواصل بطريقة بناءة، وتقديم المعلومات بشكل إيجابي وغير شخصي.

  • ما هي مهارات المختبر التي يمكن أن تتطلب في عملية اكتشاف الفشلات؟

    -تشمل مهارات المختبر الفضول، التnegativism المحترف، النظر النقدي، والاهتمام بالتفاصيل، بالإضافة إلى خبرته وتوقع الأخطاء قبل بدء الفحص.

  • كيف يمكن أن توفر العيوب التي يتم اكتشافها خلال الفحص الوقت والمال؟

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

  • كيف يمكن أن تساعد العيوب التي يتم اكتشافها في تحسين مهارات المطور؟

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

  • ما هي مهارات الاتصال الشخصية التي يجب أن يمتلكها المختبرين أو قادة الفحص؟

    -يجب أن يمتلك المختبرين مهارات الاتصال الشخصية مثل الإيمان بمفهوم التعاون، فهم المشاعر والدوافع الشخصية للآخرين، التأكد من فهم الطرفين، وتقديم النتائج بطريقة neutral.

  • في النهاية من هذا الفيديو، ما هي النصائح التي يجب أن تتذكرها؟

    -في النهاية من الفيديو، يجب أن تتذكر ترتيب المحتوى الملخص في نص يمكن فهمه بسهولة، ويمكنك العثور على ذلك في ملف بعنوان 'The Psychology of Testing'.

Outlines

00:00

🧐 The Duality of Minds: Developer vs. Tester

This paragraph discusses the distinct mindsets between developers and testers during software development and testing processes. It emphasizes the importance of having a separate individual, not the developer, to perform testing to ensure a more objective and thorough examination of the software. The paragraph also outlines the various levels of independence in testing, from the developer testing their own code to having an external entity conduct the testing. The goal is to enhance the quality and reliability of the software by identifying defects and failures more effectively.

🗣️ Communication Strategies in Software Testing

The second paragraph focuses on the communication aspect between testers and other team members such as analysts, designers, and developers. It addresses common misconceptions about the role of testers, who are often seen as bearers of bad news due to their responsibility to find defects. The paragraph suggests adopting a constructive communication approach to avoid negative feelings and misunderstandings. It highlights the unique skills required for a tester, such as curiosity and attention to detail, and the benefits of finding defects early in the development process, which can save time, money, and protect the product's reputation. Additionally, it provides guidelines for testers to communicate effectively and maintain a cooperative environment within the team.

Mindmap

Keywords

💡الاختبارات

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

💡التنمية

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

💡الاعتماد على الشخص الغير مبرمج

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

💡التواصل

التواصل هو مفتاح النجاح في العمل الجماعي. في النص، يُناقش كيف يمكن للمتحدين في فريق التطوير التواصل بشكل إيجابي مع المتحدين الآخرين، بما في ذلك المحللين والمصممين، لتجنب المشاعر السلبية.

💡المفاهيم الخاطئة

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

💡التفاعل الإيجابي

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

💡المهارات المختلفة

المهارات المختلفة هي مجموعة من المهارات التي يحتاجها المتحدون في الاختبارات. في النص، يُذكر مهارات مثل الcuriosity، professional pessimism، critical eye، وattention to detail كعناصر أساسية في العملية.

💡الأخطاء

الأخطاء هي المشاكل التي يمكن أن تظهر في البرمجيات. في النص، يُناقش كيف العثور على الأخطاء خلال الاختبارات يمكن أن يوفر وقتًا ومالًا ويحد من المخاطر التي يمكن أن تواجه المنتج.

💡التحسين

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

💡المهارات الشخصية

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

💡النسخة النهائية

النسخة النهائية هي النتيجة النهائية من العملية الشاملة للبرمجيات. في النص، يُذكر أن النتائج من الاختبارات يجب أن تقدم لفريق كامل بشكل محاسن لتحسين العملية وتجنب الانتقاد.

Highlights

The importance of distinguishing the mindset of testers from developers during the software development process.

The rationale behind the necessity for testing to be conducted by someone other than the developer.

Exploring the levels of dependency on a different person for testing purposes.

The benefits of separating the testing task from the development task for increased focus and defect detection.

The various levels of independent testing, from the developer to external parties.

The first level of independence where the code writer also performs the testing.

The second level of independence involving a different developer from the same team for testing.

The third level of independence where testing is done by someone from a different group or department.

The fourth level of independence with testing conducted by an external company or outsourced party.

The significance of communication between the tester and other team members such as analysts, designers, and developers.

Misunderstandings about the role of testers and the perception of testing as a destructive activity.

The importance of constructive communication to avoid negative feelings between testers and the team.

Skills required for effective testing, including curiosity, professional pessimism, and attention to detail.

The value of finding defects during testing in saving time, money, and reducing risks for the product.

How identifying defects can improve a developer's skills by learning from their mistakes.

The personal skills testers should possess for constructive communication with the team.

Four key communication strategies for testers to foster cooperation and understanding within the team.

The recommendation to review and revise the content of the video in a text form for better comprehension.

The availability of a summary document named 'The Psychology of Testing' for further reference.

Transcripts

play00:05

The tester's mind during the testing process is different

play00:07

in the way of thinking from the developer's mind while developing the software.

play00:10

As there is a difference between them,

play00:12

we will clarify it in this video.

play00:15

why should testing depend on a person who is not the developer?

play00:18

what are the levels of dependency on a different person

play00:21

in testing. Also, as there is a difference between them,

play00:24

we will learn and remember some

play00:27

communication tips with rest of the team.

play00:29

Although any developer is capable of test his own code,

play00:32

but separating this task and assigning it to a different tester

play00:35

is better. Because it will help him more

play00:38

to focus his efforts during testing and

play00:41

the tester can find defects and failures.

play00:44

The independent testing can be executed at any level of testing,

play00:46

whether unit testing , integration, system

play00:49

or acceptance test. There are levels of independence,

play00:52

which can be arranged from the least to the most accurate

play00:55

as follows:

play00:57

The first level : The one who wrote the code is the one to test it.

play01:00

The second level : The one who will test it is another one

play01:03

but still from the developers team. The third level:

play01:06

Another one will test but he is from a different group or department in the same company.

play01:09

The fourth level : The one who test the code is

play01:12

from a different company or he may be an outsource

play01:15

or certification by an external body.

play01:18

Let's move to the second section which is

play01:20

about the communication between the tester and the rest of the team, like:

play01:23

analysts, designers and developers.

play01:26

In the beginning, we need to know the misconceptions about testing and tester

play01:29

in the view of others.

play01:31

It's known about him that he is the person who always has bad news

play01:33

who find defects in our work,

play01:36

in which we did our best and when they

play01:39

find defects or failures in a product, this means

play01:41

that we criticize the product and the developer

play01:44

who wrote its code. Therefore,

play01:47

testing is seen as a destructive activity.

play01:50

we can avoid all the bad feelings

play01:52

between testers and others by communicating

play01:54

in a constructive way.

play01:57

We shall start the constructive communication

play02:00

with some information which you should

play02:03

transfer and correct to those who you work with.

play02:05

The process of finding failures in a system requires

play02:08

some different skills, which is done by the tester.

play02:11

Some of them are: curiosity, professional pessimism,

play02:14

a critical eye, attention to detail.

play02:17

In addition to his experience in

play02:20

adding his own error guessing before starting testing.

play02:23

this results from repeating the testing process

play02:26

to different projects, and expecting which

play02:29

modules or layers that have defects in

play02:32

a system like that. Secondly,

play02:34

the defects we find during testing will save a lot of time

play02:37

and money that we may lose later on

play02:40

if this product was launched with its defects. it will also

play02:43

reduce the risks which may face the product and its reputation.

play02:46

The defects we find, will improve

play02:48

the developer's skills, as he will discover

play02:51

his own mistakes which will improve his skills later.

play02:54

After those three facts about testing, we also,

play02:57

as testers or test leaders, should have

play03:01

personal skills to communicate with others

play03:03

in constructive way.

play03:06

These are some ways we will remember

play03:08

during communication.

play03:11

1. Believe in the concept of cooperation is better than war.

play03:14

2. Give yourself a chance to understand

play03:17

how the other person feels and reasons of his reaction.

play03:20

3. Be sure that the other person

play03:23

has understood my words correctly

play03:25

and you also have understood his.

play03:28

4. The results of testing process should be submitted to

play03:31

the whole team in a neutral way without criticizing any one,

play03:33

or accusing anyone of the team to have a problem.

play03:36

They should be presented in a constructive way that

play03:39

can help the whole team. i.e. we don't

play03:41

personalize the problem. By the end of this video,

play03:44

remember that it's important to revise the content

play03:47

we've summarized in a text form, to be more comprehended.

play03:50

this part you can find in a file named

play03:52

The Psychology of Testing.

Rate This

5.0 / 5 (0 votes)

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