diff --git a/src/script/analysis/course_analysis.py b/src/script/analysis/course_analysis.py
index d8b88331539a23bf4e7598923ba06fed57ff31ac..f992ee4368742c17f0a1e205b59b08573886b1f9 100644
--- a/src/script/analysis/course_analysis.py
+++ b/src/script/analysis/course_analysis.py
@@ -285,7 +285,7 @@ def listagem_disciplina(df,lista_disciplinas):
     reprovacao_media = np.mean(trancamento_np) 
     reprovacao_desvio = np.std(trancamento_np) 
 
-    #verifica se o resultado final não é nan
+    #verificar se o resultado final não é nan
 
     listagem = { "cache" : cache,
             "compara_aprov":  compara_aprov,
@@ -296,15 +296,5 @@ def listagem_disciplina(df,lista_disciplinas):
             "taxa_reprovacao":[float(reprovacao_media),float(reprovacao_desvio)] ,
             "nota": [float(nota_media),float(nota_desvio)] 
             } 
-    with open("cache/disciplinas.json",'w') as f:
-        f.write(json.dumps(listagem,indent=4)) 
- # [ ] ->media_disc
- # [ ] compara_aprov 
-
-def analises_disciplinas(df):
-    lista_disciplinas = {}
-    informacoes_gerais(df,lista_disciplinas) 
-    analises_gerais(df,lista_disciplinas) 
-    analises_semestrais(df,lista_disciplinas) 
-    transforma_json(lista_disciplinas) 
-    listagem_disciplina(df,lista_disciplinas) 
+	return listagem
+
diff --git a/src/script/build_cache.py b/src/script/build_cache.py
index 82e411147bad8697993c09395f19c4ac7e8ca025..f47bbb247a71119d6c6c8f113f1b1d85d79a6eb8 100644
--- a/src/script/build_cache.py
+++ b/src/script/build_cache.py
@@ -26,8 +26,7 @@ def build_cache(dataframe):
 	#generate_student_list(path)
 	#generate_admission_data(path)
 	#generate_admission_list(path)
-	#generate_course_data(path)
-	#generate_course_general_data(path)
+	generate_course_data(path)
 
 def generate_degree_data(path, dataframe):
 	ensure_path_exists(path)
@@ -145,8 +144,12 @@ def generate_admission_data(path,df):
 def generate_admission_list(path):
 	pass
 
-def generate_course_data(path):
-	pass
-
-def generate_course_general_data(path):
-	pass
+def generate_course_data(path,df):
+    informacoes_gerais(df,lista_disciplinas) 
+    analises_gerais(df,lista_disciplinas) 
+    analises_semestrais(df,lista_disciplinas) 
+	for disciplina in lista_disciplinas.keys():
+		save_json(path+disciplina+'.json' ,lista_disciplinas[disciplina]) 
+	disciplinas = listagem_disciplina(df,lista_disciplinas) 
+	save_json(path+'diciplinas.json',disciplinas) 
+	
diff --git a/src/script/main.py b/src/script/main.py
index a4f8ea7337d9fc7569f813de2e07f1a28c5b8eb1..d817a94ca032b1a7d29fe3dc185fe0017beb6044 100644
--- a/src/script/main.py
+++ b/src/script/main.py
@@ -30,11 +30,10 @@ def main():
     start_time = time.clock()
     start_time_exec = time.time()
 
-    dataframe = load_dataframes(os.getcwd() + '/script/' + 'base')
+    dataframe = load_dataframes(os.getcwd() + '/script/' + 'base/21A/1/')
 
     build_cache(dataframe)
     cpu_time = timedelta(seconds=round(time.clock() - start_time))
-    analises_disciplinas(dataframe)
     run_time = timedelta(seconds=round(time.time() - start_time_exec))
     print("--- Tempo de CPU: {} ---".format(cpu_time))
     print("--- Tempo total: {} ---".format(run_time))