Nitel Araştırmalarda Kuram Oluşturma Stratejisi

Standard

Kuram oluşturma yaklaşımının amacı yeni kavramlara, yeni açıklamalara ulaşmaktır (Yıldırım ve Şimşek, 2008). Gömülü teori verilerin sistematik bir şekilde bir araya getirilerek ve analiz edilerek, yeni olguların keşfedilmesi yöntemidir (Glaser ve Strauss,1967; Aktaran Ilgar, M. Z. & Ilgar, S. C., 2015). Temellendirilmiş ifadesi, kuramın veriler temelinde geliştirileceği, verilerle temellendirileceği anlamına gelir. Verilerin nitel çözümlemesiyle kuram inşa edilir.

Kuram oluşturmaya ilişkin alanyazında farklı isimlendirmeler söz konusudur:

GÖMÜLÜ KURAM, TEMELLENDİRİLMİŞ KURAM, KURAM OLUŞTURMA,  ALT TEORİ, GROUNDED THEORY

KURAM OLUŞTURMA ARAŞTIRMA ÖRNEĞİ:  Undergraduate students’ experiences with recorded lectures: towards a theory of acculturation

Yazar: Şebnem Çilesiz (Department of Educational Foundations and Leadership, University of Louisiana at Lafayette, 200 E. Devalcourt St., Lafayette, LA 70506, USA e-mail: cilesiz@louisiana.edu)
APA Referans: Cilesiz, S. (2015). Undergraduate students’ experiences with recorded lectures: towards a theory of acculturation. Higher Education, 69, 471-493.

Detaylara aşağıdaki sunum dosyasından erişebilirsiniz.

Öğretim Teknolojisi Alanının Tarihsel Gelişimi ve Tanımlanması

Standard

Öğretim Teknolojisi Alanının Tarihsel Gelişimi ve Tanımlanması (RAISER R.A. Defining And Naming Our Field (Chapter 1))

Bu bölümde alanın ne olduğu, ne tür tanımların var olduğu ve zamanla bu tanımlarda ne tür değişimlerin yaşandığı betimlenmiştir. Sadece tanımlar değil zamanla aslında öğretim teknolojisi alanının isimlendirmesinde de değişimler gözlenmiştir.

Öğretim teknolojisinin ne olduğu sürekli değişim göstermektedir. Sürekli yeni fikir ve icatlar öğretim teknolojisi alanının değişmesini sağlamıştır. Ayrıca bu alan çok geniş sınırları olan bir alan olduğu için bu alanda farklı konularda çalışan uzmanlar bulunmaktadır. Her uzman odaklanmış olduğu konuyu öğretim teknolojisi alanının kalbini oluşturduğunu düşünmektedir.

İlk Tanımlamalar: Bir medya olarak öğretim teknolojisi

İlk tanımlamalarda öğretim teknolojisinin bir medya olduğu (öğrenenlere öğretileceklerin sunulduğu bir araç olarak görüldüğü) konusuna odaklanılmıştı. 1900’lü yılların ilk çeyreğinde öğretim teknolojisi alanı yeni yeni gelişen bir görsel öğretim aracı olarak ele alınmıştı. Film ve ses kaydının gelişmesi ile sesli-görsel öğretim teknolojilerine doğru bir yönelim gerçekleşti. Bu süre boyunca sürekli öğretimsel medya üzerine odaklanıldı. Üstelik alan içinde ve alan dışında birçok kişi tarafından hala öğretim teknolojisi alanı öğretimsel medya olarak tanınmaktadır.

Öğretim teknolojisinin bir süreç olarak ele alınması

1950’lerden itibaren artık öğretim teknolojisini bir süreç olarak ele alan bir yaklaşım gelişmeye başladı. Öğretim teknolojisi öğretimsel problemleri ele alan ve bu problemlere gerçekleştirilebilir çözümler sunan bir alan olarak ele alınmıştır.

1963 Tanımlaması

1963 yılında öğretim teknolojisi geleneksel tanımdan uzaklaşarak yeniden tanımlanmıştır. Bu tanımlamada göze çarpan birkaç özellik bulunmaktadır.

  1. Öğretim teknolojisi medya olmanın ötesinde öğrenme sürecini kontrol eden mesajların tasarlanması ve kullanılması olarak ele alınmıştır
  2. Bu süreç çeşitli adımlardan oluşmaktadır.
  3. Öğretimden ziyade öğrenmeye vurgu yapılmıştır.

1970’ler

Öğretim teknolojisi komisyonu bir çağdaş birde geleneksel olmak üzere iki tanım yayınlamıştır. Öğretim teknolojisi

  1. Öğrenme öğretme sürecinin tasarlanması, gerçekleştirilmesi ve değerlendirilmesini ele alan sistematik bir süreci kapsayan bir alandır. Bu alan insan ve insanlar dışındaki canınlıların öğrenmelerini inceleyen araştırmaları esas almaktadır.
  2. Öğretimsel amaçlı kullanılan bir medyadır.

 

1977

Bu dönemde yapılan tanımda da öğretim teknolojisinin sistematik olduğu, bir tasarım süreci olduğu vurgulanmıştır. Bu yılda alan ile ilgili geniş tanımlamalar ve ne ile ilgilendiğine ilişkin detaylar ortaya konulmuştur.

1994

1994 yılına kadarki zamanda davranışsal öğrenme teorileri öğretim teknolojisi alanında etkili olmuştur. 1994 den sonra ise bilişsel ve yapılandırmacı öğrenme teorileri temele alınmıştır. Aynı zamanda bu süreçte bilgi iletişim teknolojilerinde de hızlı bir gelişim gözlenmiştir. Uzaktan eğitimin gelişimiyle işbirlikli öğrenme önem kazanmış ve uzun süre geçerli olan 1974’deki tanımlamanın yeniden ele alınma ihtiyacı ortaya çıkmıştır.

Öğretim teknolojisi öğrenme amaçlı tasarım, geliştirme, yararlanma, yönetim ve değerlendirme süreç ve kaynaklarını içeren teori ve uygulamalardır.

Böylece alanın beş ana bileşenden oluştuğu ifade edilmiştir. Ayrıca bu tanımda öncekinden farklı olarak sistematik ve süreç odaklı olma ifadelerine yer verilmemiştir. Öğretim teknolojisi ilk defa bir uygulama alanı olmaktan çıkıp bir teori ve araştırma alanı olarak ele alınmıştır.

AECT Tanımına Göre Öğretim Teknolojisi

Eğitim teknolojisi öğrenmeyi kolaylaştırmak ve performans artışı sağlamak amacıyla uygun teknolojik süreç ve kaynakların oluşturulması, kullanılması ve yönetilmesi ile ilgilenen çalışma ve etik uygulamalardır.

Bu tanımda birinci göze çarpan nokta öğretim teknolojisi alanına etik kavramının da eklenmesidir. İkincisi ise öğrenmeyi kolaylaştırma amacını içermesidir. Öğretim teknolojisi öğrenmeyi gerçekleştirmek için varolduğu belirtilmiştir. Ayrıca bu tanımda mevcut yeteneklerin ötesinde öğrenenlerde bir performans artışı amaçlandığı vurgulanmıştır.

Kitabın yazarı alanda ve gerçek yaşamda öğretim teknolojisi ile ilgili gözlemiş olduğu değişimleri göz önünde bulundurarak öğretim teknolojisi alanını yeniden ele almıştır.

Öğretim teknolojisi alanı öğrenme ve performans artışı ile ilgilenen bir alandır. Bu alan sistematik öğretim tasarım süreçlerinin kullanılmasını gerektirir. Ayrıca süreç içinde öğretimsel medyalardan faydalanılır. Son yıllarda öğretimsel problemlerin yanında performans artışı üzerine de yoğunlaşan bir alandır.

Aslında sürekli öğretim teknolojilerini test edip duruyoruz. Bu durum ne zamana kadar devam edecek sorusunun cevabına ulaşabiliriz. Sürekli teknolojik yeniliklerin test edilmesi 1950’lerin anlayışına dayanan öğretim teknolojisini sadece bir medya olarak görme anlayışına dayanmaktadır. Bugün ise öğretim teknolojileri ile öğrenenlerin öğrenme performansları ve öğretim teknolojisinin öğrenenlerin öğrenmelerini nasıl kolaylaştıracağı sorusu üzerine odaklanılası gerekmektedir.

Yeniden İsimlendirme “Öğretimsel Tasarım ve Teknoloji”       

Öğretim teknolojisi dendiğinde insanların aklına ilk olarak DVD, mobil aygıtlar vs. gibi donanım ve yazılımlar gelmektedir. Aslında bunlar her ne kadar öğretimsel medya olsa da öğretim teknolojisi kavramı bu medya araçlarını çağrıştırmaktadır. Raiser yeni tanımlardaki yer alan kavramları da içinde barındıracak ayrıca öğretimsel medya ile öğretim teknolojisi kavramlarının birbiriyle karışmasını ortadan kaldıracak yeni bir isimlendirmenin gerektiğini düşünmektedir. Bu yeni tanım ile sürece performans artışı ögesinin de eklenmiş olacağı düşünülmüştür.

Kaynakça

RAISER R.A. Defining And Naming Our Field (Chapter 1))

Özetleme : Sinan KESKİN

Öğretim Tasarımı ve Öğrenme Kuramı

Standard

Merhaba.

Bu yazımda öğrenme kuramları ile öğretim tasarımı arasındaki ilişkiyi açıklamaya çalışacağım. Bunu açıklarken aşağıdaki soruyu temele aldım.

“Belirli bir öğrenme kuramını temel alarak geliştirilen bir öğretim ortamı aslında bir öğretim tasarım modeli sunar?” Önermesine katılıyor musunuz? Neden? Nasıl?

Öğretim tasarımı öğrenmenin zenginleştirilmesi, geliştirilmesi, etkili bir öğrenmenin gerçekleştirilmesi ve öğrenme becerilerinin kazandırılması amacıyla öğrenme materyalleri ve öğrenen ihtiyaçlarını göz önünde bulunduran bir süreçtir(Merrill, Drake, Lacy ve Pratt, 1996). Bu süreçte tasarımcılar belli öğretim tasarım modellerini göz önünde bulundurmaktadır. Tasarımcı dilerse alanyazında var olan tasarım modellerini kullanabilir ya da kendi tasarım modeline göre bu tasarımı gerçekleştirebilir. Tasarım modellerinde göz önünde bulundurulacak değişkenlere ve yapılara öğrenme kuramları yardımıyla karar verilir. Çünkü bireyin nasıl öğrendiği öğrenme kuramları tarafından ortaya konulmaktadır. Öğrenme kuramları tasarımcılara öğretim tasarımı sürecinde doğrudan tasarım çözümleri sunmazlar. Ancak bu süreçte göz önünde bulundurulması gereken yapılar ve çözüme götürecek yollar hakkında fikir verirler (Likewise, Merriam and Caffarella (1999); Aktaran: McLeod, 2003). Buna göre öğretim tasarım modellerinin belli öğrenme kuramlarına dayalı olarak gerçekleştirildiği anlaşılmaktadır. Akla her öğretim tasarımının bir öğrenme kuramınaa dayalı olmasının bir zorunluluk olup olmadığı gelmektedir. Öğretim tasarımının öğrenmeyi kolaylaştırmak amacıyla gerçekleştirildiği göz önünde bulundurulduğunda tasarımcının bireylerin nasıl öğrendiği, bilginin ne olduğunu iyi tanımlaması gerektiği anlaşılmaktadır. Her öğrenme kuramı bilgiyi, bireyi ve öğrenmeyi farklı bir şekilde ele almaktadır. Buna göre tasarımcı benimsemiş olduğu kurama göre hareket etmesi gerektiği anlaşılmaktadır.PID_Wordle

Üç temel öğrenme kuramında da öğrenmede çevrenin öneminden söz edilmektedir. Buna paralel olarak öğrenme kuramları öğrenme ortamlarının düzenlenmesi hakkında bir dizi kurallar öne sürmektedir. Bu kurallar öğrenme kuramlarının bilgiye ve öğrenmeye nasıl baktığı ile ilişkilidir. Belirli bir öğrenme kuramını temel alarak geliştirilen bir öğretim ortamı ilgili kuramın bilgiye ve öğrenmeye bakışını yansıtmaktadır. Kısaca ifade etmek gerekirse öğrenme kuramları öğrenme çevresini ve bu çevrenin tasarımını kendi ilkeleri doğrultusunda göz önünde bulundurmaktadır. Ayrıca bireyin nasıl öğrendiği ortaya konularak öğretimin nasıl gerçekleşeceği ifade edilir. Öğretim tasarımı süreci de etkili öğrenmeleri sağlamak amacıyla çevresel düzenlemeleri göz önünde bulundurmaktadır. Bu düzenlemeler yapılırken tasarımcı öğrenme kuramlarından faydalanmaktadır.

Belli bir öğrenme kuramının öğrenme, birey ve bilgi ile ilgili ilkeleri göz önünde bulundurularak geliştirilen bir öğretim ortamı ve bu süreç bir öğretim tasarımı modeli sunmaktadır. Yukarıda da ifade edildiği gibi öğretim tasarımı öğretim sürecinin kolaylaştırılmasını amaçlamakta ve bu amaç belli ilkelere göre tasarımcı tarafından gerçekleştirilmektedir. Öğrenen ihtiyaçları, karakteristikleri, içerik, öğrenmenin nasıl gerçekleştiği öğrenme kuramları tarafından ortaya konulmaktadır. Tasarımcı eğer alan yazında var olan modellerden birini kullanmak yerine benimsendiği öğrenme kuramının ilkelerine ve tanımlamalarına göre bir tasarım gerçekleştiriyor ise kendi öğretim tasarımı sürecini ortaya koyduğu söylenebilir.

Kaynakça

McLeod, G. (2003). Learning theory and instructional design. Learning Matters,2(2003), 35-43.

Merrill, M. D., Drake, L., Lacy, M. J., Pratt, J., & ID2_Research_Group. (1996). Reclaiming instructional design. Educational Technology, 36(5), 5-7.

Hanoi Kuleleri Oyunu C++ ve C# Dilinde Çözümü (Performans Analizinin Gerçekleştirilmesi)

Standard

Hanoi Kuleleri Nedir? Nasıl Oynanır?

Hanoi kuleleri matematik oyunu veya bulmacadır.Bu matematik oyununun oynandığı platform 3 direkten ve farklı boyutlarda disklerden oluşur.Bulmaca en küçük diskin farklı bir çubukta en üste koyulmasıyla biter fakat oyunun bazı kuralları vardır bunlar :

  • Her hamlede sadece bir disk taşınabilir,
  • hiç bir disk kendisinden küçük bir diskin üzerine koyulamaz.

Peki kaç disk için kaç haraket gerçekleştirilir:

3 disk = 7 hareket
4 disk = 15 hareket
5 disk = 31 hareket
6 disk = 63 hareket
7 disk = 127 hareket

hanoi kuleleri

hanoi kuleleri

Bilgisayarınız bu hareketleri ne kadar sürede tamamlar?

Aşağıda c dilinde yazılan kodlar ile hem bilgisayarınızı test etmiş olursunuz hemde bu sorunun yanıtını bulabilirsiniz. bilgisayarımda kuledeki disk sayısına göre harcanan zamana bir göz atalım:

1 diskten 15 disk’e kadar 1 saniyeden az bir zamanda işlem gerçekleşti. Diskler arttıkça işlem karmaşıklaşıyor. Bu yüzden zaman da artmaya başladı.
16>> 2 ms.
17>> 5ms.
18>> 9ms.
19 >>18ms.
20 >>40ms.
21>> 79 ms.
22>> 290ms.

23>> 548ms.
24>> 878ms.
25 >>1746ms.
26 >>3191ms.
27 >>7252ms.
28>> 13265ms.
29>> 26914ms.

Çözüm için ipuçları :

İlk önce Diskler büyükten küçüğe doğru sıralanır.En büyük disk en altta olmak üzere. Oyunun amacı en küçük diskin şekil nereye oynatılacaksa o direğe takılması ve ardından küçük diskten sonraki disklerin farklı direklere geçirilerek aynı kulenin farklı bir direğe kurallara uyulmak şartıyla konulmasıdır.Şekildeki gibi eyer 3 tane disk varsa o zaman 7 hareket yapılması gerekir 7 hareketi geçmemeli.

http://www.dynamicdrive.com/dynamicindex12/towerhanoi.htm Bu sayfada basitçe bir similatör var. Buradan kendinizi test edebilirsiniz.

c++ Dilinde Çözüm

aşağıda hanoi kulesi problemi rekürsif fonksiyon ile çözülmüştür.

#include “stdafx.h”

#include <stdio.h>

#include <time.h>

#define MAX_SIZE 5001

#define ITERATIONS 100 //Hanoi kulesinin eleman sayısını buraya yazıyoruz Otomatik artmayı for ile buradan okunan değer ile sağladık.

void hanoi1(int n, char *kaynak, char *ara, char *hedef){  //Hanio Fonksiyonumuz(ozyinelemeli)

if (n != 1) //printf(“%s -> %s\n”, kaynak, hedef);

{

hanoi1(n – 1, kaynak, hedef, ara);

// printf(“%s -> %s\n”, kaynak, hedef); yazdırarak zaman kaybetmemek için kapattım

hanoi1(n – 1, ara, kaynak, hedef);

}

}

int main(void)

{

int i;

clock_t start, stop;

int duration;

printf(” Performans Olcumu (Hanoi Kuleleri)\n ———————————————–\n”);

for (i = 1; i<ITERATIONS; i++){

start = clock();

hanoi1(i, “A”, “B”, “C”);

stop = clock();

duration = (int)(1000 * (stop – start) / CLK_TCK);

printf(“%d elemanli hanoi kulesi %4d milisaniye surdu\n”, i, duration);

printf(“\n”);       }

int m;

scanf_s(“%d”, &m);

return 0;

}

 

c# Dilinde Çözüm

using System;
using System.Collections.Generic;
using System.Text;

namespace Tower
{
class Program
{
static int movecount = 0;
static public void Solve2DiscsTOH(Stack<int> source, Stack<int> temp, Stack<int> dest)
{
temp.Push(source.Pop());
movecount++;
PrintStacks();
dest.Push(source.Pop());
movecount++;
PrintStacks();
dest.Push(temp.Pop());
movecount++;
PrintStacks();
}

static public bool SolveTOH(int nDiscs, Stack<int> source, Stack<int> temp, Stack<int> dest)
{
if (nDiscs <= 4)
{
if ((nDiscs % 2) == 0)
{
Solve2DiscsTOH(source, temp, dest);
nDiscs = nDiscs – 1;
if (nDiscs == 1)
return true;

temp.Push(source.Pop());
movecount++;
PrintStacks();
//new source is dest, new temp is source, new dest is temp;
Solve2DiscsTOH(dest, source, temp);
dest.Push(source.Pop());
movecount++;
PrintStacks();
//new source is temp, new temp is source, new dest is dest;
SolveTOH(nDiscs, temp, source, dest);
}
else
{
if (nDiscs == 1)
return false;
Solve2DiscsTOH(source, dest, temp);
nDiscs = nDiscs – 1;
dest.Push(source.Pop());
movecount++;
PrintStacks();
Solve2DiscsTOH(temp, source, dest);
}
return true;
}
else if (nDiscs >= 5)
{
SolveTOH(nDiscs – 2, source, temp, dest);
temp.Push(source.Pop());
movecount++;
PrintStacks();
SolveTOH(nDiscs – 2, dest, source, temp);
dest.Push(source.Pop());
movecount++;
PrintStacks();
SolveTOH(nDiscs – 1, temp, source, dest);
}
/***
// For your understanding purpose
if (nDiscs == 5)
{
SolveTOH(3, source, temp, dest);
temp.Push(source.Pop());
SolveTOH(3, dest, source, temp);
dest.Push(source.Pop());
SolveTOH(4, temp, source, dest);
}
else if(nDiscs == 6)
{
SolveTOH(4, source, temp, dest);
temp.Push(source.Pop());
SolveTOH(4, dest, source, temp);
dest.Push(source.Pop());
SolveTOH(5, temp, source, dest);
}
else if (nDiscs == 7)
{
SolveTOH(5, source, temp, dest);
temp.Push(source.Pop());
SolveTOH(5, dest, source, temp);
dest.Push(source.Pop());
SolveTOH(6, temp, source, dest);
}
***/
return true;
}

static public Stack<int> A = new Stack<int>();
static public Stack<int> B = new Stack<int>();
static public Stack<int> C = new Stack<int>();

static public void PrintStacks()
{
if (countA != A.Count ||
countB != B.Count ||
countC != C.Count)
{
int diffA = A.Count – countA;
int diffB = B.Count – countB;
int diffC = C.Count – countC;
if (diffA == 1)
{
if (diffB == -1)
Console.Write(“Move Disc ” + A.Peek() + ” From B To A”);
else
Console.Write(“Move Disc ” + A.Peek() + ” From C To A”);
}
else if (diffB == 1)
{
if (diffA == -1)
Console.Write(“Move Disc ” + B.Peek() + ” From A To B”);
else
Console.Write(“Move Disc ” + B.Peek() + ” From C To B”);
}
else //if (diffC == 1)
{
if (diffA == -1)
Console.Write(“Move Disc ” + C.Peek() + ” From A To C”);
else
Console.Write(“Move Disc ” + C.Peek() + ” From B To C”);
}
countA = A.Count;
countB = B.Count;
countC = C.Count;
Console.WriteLine();
}

PrintStack(A);
Console.Write(” , “);
PrintStack(B);
Console.Write(” , “);
PrintStack(C);
Console.Write(” , “);
}
static int countA = 0;
static int countB = 0;
static int countC = 0;

static public void PrintStack(Stack<int> s)
{
Stack<int>.Enumerator et = s.GetEnumerator();
Console.Write(“[“);
string str = “”;
while(true)
{
if(et.MoveNext() == false)
break;
str += et.Current.ToString();
}
for (int i = str.Length – 1; i >= 0; i–)
Console.Write(str[i]);
Console.Write(“]”);
}

static void Main(string[] args)
{
while (true)
{
Console.Write(“\nEnter the number of discs (-1 to exit): “);
string s = Console.ReadLine();
movecount = 0;
int maxdisc = Convert.ToInt32(s);
if (maxdisc == -1)
{
Console.WriteLine(“Good Bye!”);
return;
}
if (maxdisc <= 1 || maxdisc >= 10)
{
Console.WriteLine(“Enter between 2 – 9”);
continue;
}
for (int i = maxdisc; i >= 1; i–)
A.Push(i);
countA = A.Count;
countB = B.Count;
countC = C.Count;
PrintStacks();
SolveTOH(maxdisc, A, B, C);
Console.WriteLine(“Total Moves = ” + movecount);
while (C.Count > 0)

C.Pop();

}
}
}
}


Ekran Çıktısı:

hanoi Kulesi nasıl çözülür c

Kaynaklar:

http://www.csharpnedir.com/forum2/forum_posts.asp?TID=22806

http://www.dynamicdrive.com/dynamicindex12/towerhanoi.htm

http://www.onurmihci.com/wp-content/uploads/2010/05/HANO%C4%B0-KULELER%C4%B0.ppt