commit 9dd749f6c9ebbb6846620ca9566e2dc7b4811ffa Author: dbrw Date: Mon Sep 11 16:24:31 2017 +0700 initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..373f98a --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +tags +.dot +.phpcd diff --git a/README.md b/README.md new file mode 100644 index 0000000..6dcaf37 --- /dev/null +++ b/README.md @@ -0,0 +1,138 @@ +# Questionnaire + +Aplikasi berbasis web untuk publikasi kuesioner pada lingkup Yayasan Widya +Anindya (Perguruan Tinggi, SMK dan lainnya). + +## Latar Belakang + +Guna melancarkan akreditasi Perguruan Tinggi LEPISI pada 2018, aplikasi ini +dibuat untuk memenuhi kebutuhan akan dokumen-dokumen: +- dokumen #1 +- dokumen #2 +- ... + +### Kebutuhan Perangkat Lunak + +- PHP 7.0 +- nginx + +## Design + +### Use Case Diagram + +#### UC Diagram pembuatan kuesioner + +```plantuml +left to right direction +actor Admin + +Admin -- (Membuat Kuesioner) +Admin -- (Mengubah Kuesioner) +Admin -- (Membuat Seksi) +Admin -- (Mengubah Seksi) +Admin -- (Membuat Pertanyaan) +Admin -- (Mengubah Pertanyaan) +Admin -- (Membuat Pilihan) +Admin -- (Mengubah Pilihan) +``` + +#### UC Diagram pengisian kuesioner + +```plantuml +left to right direction +actor Responden +actor Admin + +Responden -- (Mengisi identitas) +Responden -- (Mengisi kuesioner) +Responden -- (Menyelesaikan kuesioner) +(Menerima notifikasi pengisian) -- Admin +``` + +#### UC Diagram pencetakan laporan kuesioner + +```plantuml +left to right direction +actor Admin + +Admin -- (Mencetak rekap pengisian kuesioner) +Admin -- (Mencetak laporan hasil pengolahan kuesioner) +``` + +### Class Diagram + +```plantuml +class Questionnaire { + id : int + title : varchar (100) + descriptions : text + released_at : datetime + created_at : datetime + updated_at : datetime + deleted_at : datetime +} + +class Section { + id : int + questionnaire_id : int + title : varchar (100) + descriptions : text + created_at : datetime + updated_at : datetime + deleted_at : datetime +} + +class Question { + id : int + section_id : int + number : int + text : varchar (300) + descriptions : text + question_type : enum ('text', 'choice', 'number') + created_at : datetime + updated_at : datetime + deleted_at : datetime +} + +class QuestionChoice { + id : int + question_id : int + number : int + text : varchar (300) + descriptions : text + created_at : datetime + updated_at : datetime + deleted_at : datetime +} + +class Respondent { + id : int + login : varchar (100) + name : varchar (100) + handphone : varchar (100) + email : varchar (100) + gender : enum ('m', 'f') + descriptions : text + created_at : datetime + updated_at : datetime + deleted_at : datetime +} + +class Answer { + id : int + respondent_id : int + question_id: int + text : text + choice : int + created_at : datetime + updated_at : datetime + deleted_at : datetime +} + +Questionnaire "1" -- "1..*" Section +Section "1" -- "1..*" Question +Question "1" -- "0..*" QuestionChoice +Respondent "1" -- "1..*" Answer +Question "1" - "1" Answer +``` +