16
Milestone 4 : Sequence Diagram, Class Diagram, & Critical Design Review Tugas 4 Analisa dan Desain Perangkat Lunak - E Tahun Ajaran 2014/2015 Jurusan Sistem Infromasi - FTIf - ITS

Progres 3.1 Adpl

Embed Size (px)

DESCRIPTION

HLR, domain model, usecase, robustnest, sequence

Citation preview

Tugas 4

Milestone 4 : Sequence Diagram, Class Diagram, & Critical Design ReviewTugas 4Analisa dan Desain Perangkat Lunak - E

Tahun Ajaran 2014/2015Jurusan Sistem Infromasi - FTIf - ITS

Kelompok :No.NamaNRP

1. Stezar Priansya5213100131

2. Achsanul Kamal5213100146

3. RobbighFaubendri5213100164

4. Tommy Gunawan5213100183

5. Zetry Prawira5213100192

6. Rachman Setiawan5213100507

DROPBOXHigh Level Requirement System harus dapat digunakan untuk mengunggah, memodifikasi, mendownload, serta mensharefile atau folder lewat internet. User harus terlebih dahulu membuat akununtuk bisa login dan mulai menggunakan sistem. Sistem akan mengingat detail pengguna (username, email, password,dll) pada saat user melakukan login. User dapat mengunggahfile ke akun Dropboxuser setelah terlebih dahulu melakukan login ke dalam sistem. User dapat merename, menggandakan, memindahkan, serta menghapusfile yang telah diupload sebelumnya. User dapat membuat folder baru dan merename, menggandakan, memindahkan, serta menghapusfolder yang telah dibuat. User dapat sharing folder dan memberikan invitation kepada user lain untuk berkontribusi di dalam shared folder yang telah dibagikan. User dapat juga melakukan sharing file dan haring folder dengan mengirimkan link ke user lainnya. User dapat mengunduh shared file yang telah di share oleh user lainnya. User dapat melihat isi dan mengunduh shared folder yang telah di share oleh user lainnya. User dapat melihat timeline aktivitas yang dapat berupa filehistory, folder history, maupun perubahan lain yang dilakukan oleh user tersebut melalui Event. User dapat melihat fileatau folder apa saja yang pernah dihapus di dalam recycle bin. User dapat merestorefile dan folder yang telah dihapus di dalam recycle bin. User dapat melihat informasi batas penyimpanan. User bisa mendapatkan notifikasi tentang apabila kapasitas penyimpanan sudah hampir penuh, perangkat yang tersambung dengan akun Dropbox milik user, aplikasi baru yang tersambung dengan aku Dropboxuser, kabar terbaru dan tips dari Dropbox.Daftar Istilah : Akun Deleted File Deleted Folder Event File FileHistory Folder Folder History Invitation Link Notifikasi Recycle Bin Shared file Shared folder User

Domain Modeling

Package Use Case

Use Case Diagram

Use Case NarrativeUsecase: Mengunggah file

Actors: User

Purpose: Mengunggahfile ke akun Dropbox

Preconditions: File belum terunggah ke akun Dropbox

Postconditions:File telah terunggah ke akun Dropbox

Flow of Events

Actor ActionSystem Response

1. User membuka homepage Dropbox

2. Sistem menampilkan homepage Dropbox

3. Dari homepage user menekan tombol upload[Gambar UP1]

4. Sistem akan menampilkan halaman pengunggahan

5. Pada halaman pengunduhan user menekan tombol Choose files [Gambar UP2]

6. Sistem akan menampilkan browse untuk memilih file yang akan diunggah

7. user memilih file yang akan di upload setelah itu klik tombol open

8. Jika kapasitas oenyimpanan masih ada, maka sistem menampilkan proses pengunggahan file.

9. Setelah pengunggahan file berhasil maka user menekan tombol done

AlternativeFlow of Events

Line 8: Apabila kapasitas dropbox telah penuh maka sistem akan menampilkananda tidak memiliki cukup kapasitas untuk melakukan pengunggahan file. Hapus beberapa file atau upgrade account anda.Apabila koneksi tidak ditemukan atau terputus maka proses pengunggahan akan berhenti dan sistem menampilkan pesan peringatan.

Gambar 2 : UP1

Gambar 3 : UP2UseCase : MengunduhFile

Actors: User

Purpose :Mengunduhfile dari Dropbox

Preconditions : File belum diunduh dari Dropbox

Postconditions :File sudah diunduh dari Dropbox

Flow of Events

Actor ActionSystem Response

1. User masuk ke homepage

2. Sistem menampilkan homepage

3. Sistem menampilkan list file

4. dari homepage user memilih file yang akan diunduh, lalu mengklik kanan file yg akan diunduh

5. Sistem akan menampilkan option menu

6. User meng-klik tombol Download[Gambar D1]

7. Sistem akan menampilkan proses download

AlternativeFlow of Events

Jika koneksi internet bermasalah maka proses download gagal dilakukan dan system akan memberitahuuser bahwa proses download gagal.User juga dapat langsung mengklik file yang akan didownload maka akan muncul priview file yg akan didownload lalu klik tombol download

Gambar 4 : D1

Usecase:Menshare folder

Actors: User

Purpose: Untuk melakukan sharing folder kepada pengguna lain

Preconditions: Folder belum berstatus shared folder

Postconditions: Folder telah berstatus shared folder dan mempunyai link

Flow of Events

Actor ActionSystem Response

1. User masuk ke homepage Dropbox

2. Sistem menampilkan homepage Dropbox beserta file yang ada.

3. User memilih folder yang ingin di share lalu mengklik tombol share

4. Sistem menampilkan share option

5. User memilih tombol invite people to collaborate atau send link.[Gambar : S1]

10. Sistem menampilkan share link

11. Sistem mengubah status folder dan folder mempunyai link

AlternativeFlow of Events

Line 3 : Jika folder tidak ada maka user harus membuatnya terlebih dahulu dengan menu create New Folder.Line 5 : User juga bisa memilih menu invitepeople melalui email untuk memudahkan user melakukan sinkronisasi dan mengubah isi sharedfoder.[Gambar : S2]

Gambar 5 : S1

Gambar 6 : S2Robustness DiagramUse Case Menshare Folder

Use Case Mengunduh file

Use Case Mengunggah file

Sequence DiagramUse Case Menshare Folder

Use Case Mengunduh File

Use Case Mengunggah File

Static Class Diagram

Critical Design ReviewMenshare FolderKamal : bigh, itu pada share folder, setelah masuk ke home page, apa saja yang ditampilkan?Robbigh : pada home page terdapat folder.getAll yang akan menampilkan seluruh folder yang ada pada dropbox usernya Kamal : nah ketika user meng-klik folder yang akan di share, proses pada sistem nya itu gimana ya?Robbigh : pada sistem akan membuat sebuah link (createLink()) dan link tersebut akan dimasukkan ke entitas database link (addNewLink()). Dan juga nanti akan membuat sebuah status yang akan di simpan di entitas Share Folder (setStatus()). Dan akan ditampilkan ke Share page apabila telah berhasil.Zetry : Untuk status itu gimana yaa? apa perbedaannya?Robbigh : kalau status itu, jika nilai nya setStatus(0) berarti folder nya bukan merupakan folder share / belum di share sama sekali. tapi jika nilainya setStatus(1) berarti folder tersebut sudah pernah di share sebelumnya.Zetry : ooh oke kalau gitu. Tapi kenapa share folder dan folder dibedakan jadi 2. Seharusnya itu dijadikan 1 entitas saja, karena cuma beda di status saja. Agak tidak mubazir Kamal : Iya sehingga tidak membingungkan saat proses share folder, karena ketika folder itu di share maka objek yang ada di entitas folder dibuang setelah itu dipindah ke dalam entitas shared folder, hal ini sedikit rancu.Stezar : Iya juga mal, selain itu aku juga tidak menemukan atribut spesifik yang digunakan untuk menspesialisasi entitas shared folder dari entitas folder. Jadi mendi dihapus aja bigh.Robbigh : Bailah akan aku perbaiki.Zetry: Lalu gimana dengan alternate nya untuk yang share email?Robbigh: Naah disini bedanya hanya user akan memasukkan nama / email orang yang mau di share folder (enteremailreceipant()). Dan juga invitation tersebut akan masuk ke entitas Invitation (adnNewInvitation())Mengunduh FileRachman : Ste, yang download itu proses pada system gimana?Stezar: Pada download, user akan memasuki homepage dari dropbox, dan dari situ system akan langsung memunculkan seluruh file yang ada (getAllFile()). Nantinya user akan memilih file yang ingin di download dengan cara mengklik kanan, dan system akan mendowload dengan cara mengambil file tersebut di database File (getIDFile()) dan akan menaruh file tersebut di system komputer user tersebut.Rachman : ooh gitu. Tapi kan kita kemarin rencana nya download tersebut bukan dari file yang ada di akun dropbox user. tapi bisa dari URL yang dia dapatkan, itu bagaimana prosesnya?Stezar: nah kalau itu, user akan memasukkan link pada browser, dan browser langsung mendirect ke file yang iya tuju atau file preview. Disana nantinya sudah ada pilihan untuk mendownload file , dan jika user menekan pilihan download (onDownload()). maka sistem akan bertindak sama dengan yang tadi.Mengunggah Filetommy : kalau proses upload kan dari homepage user langsung meng-klik upload, sedangkan di sequance diagram kok ada cek kapasitas, itu buat apa?Stezar : jadi begini, user mengecek kapasitas itu gunanya agar tahu account user tersebut masih bisa mengupload file maksimal ukurannya berapa, kan kalau kapasitasnya udah limit maka proses upload juga ga akan jalan.Rachman : oh jadi begitu, terus kalau seandainya ternyata account user tersebut kapasitasnya udah penuh berarti sistem akan menampilkan halaman upgrade gitu ya?Robbigh : iya, kemudian user baru bisa meng-eupload file.Kamal : berarti yang nampilin halaman upgrade itu masuk ke alternatenya kan?Stezar : BenarTommy : Lalu validasiFile gunannya buat apa?Robbigh : itu seperti semacam konfirmasi ke user apa file yang dipilih tadi jadi diupload apa tidak?Stezar : iya kalau user jadi meng-upload file maka sistem akan memproses upload filenya memakai method addToFile()Rachman : Sip Sip