COVER
BAB IV
BAB IV
ANALISA SISTEM USULAN DAN PERANCANGAN
4.1 Langkah – Langkah Metodologi
Dalam hal ini langkah – langkah metodologi System Development Life Cycle waterfall untuk perancangan sistem dimulai dengan project initiation, project planning, analysis, design, implementation, deployment. Namun pada penulisan Tugas ini, langkah metedologi yang akan di bahas sampai pada tahap design.
4.1.1 Project Initiation
Dalam Tahapan ini akan dilakukan identifikasi permasalaham yang terjadi dalam perusahaan terkait dengan proses manajemen proyek. Selain itu dilakukan juga diskusi awal dengan pihak perusahaan untuk mengamankan persetujuan bahwa akan dilakukan perancangan sistem baru di perusahaan.
4.1.2 Project Planning
Dalam Tahapan ini akan diperoleh suatu masalah yang dihadapi oleh perusahaan dimana anggota tim proyek mengalami kesulitan untuk menggunakan berbagai aplikasi yang berbeda selama pengerjaan proyek berlangsung. Oleh karna itu, dibuatlah sebuah perencanaan untuk merancang sebuah sistem manajemen proyek yang dapat menggabungkan semua kebutuhan terkait proyek dalam satu sitem. Sehingga diharapkan seluruh anggota tim dan pihak manajemen dapat lebih dimudahkan dalam mengelola setiap proyek yang ada 4.1.3 Analysis
Berdasarkan pengamatan yang dilakukan kepada pihak perusahaan diperoleh beberapa hal yaitu analisis terkait perancangan sistem manajemen proyek dilakukan dengan menganalisis fungsi-fungsi yang akan di bangun berdasarkan perencanaan sebelumnya dan kemudian menggam,barkan nya kedalam beberapa diagram UML sebagai berikut :
4.1.4 Activity Diagram
Berdasarkan analisa yang telah dilakukan , akan dibahas aktivitas yang dilakukan oleh seluruh user yang terdaftar dalam sistem. Sistem manajemen proyek yang diusulkan akan di bagi ke dalam 3 akess user yaitu Administrator, Management dan team member ( presales dan Engineer) sebagai berikut : 1. Administrator bertugas untuk membuat atau menambah user baru yang dapat
mengakses sistem manajemen proyek. Saat menambahkan user, sistem akan secara langsung men-generate password default “standar123”
2. Management dan anggota tim yang sudah memiliki akses kedalam sistem dapat melakukam login dengan memasukkan username dan password default yang diberikan.
3. Untuk mengubah password default menjadi password pribadi, management dan anggota tim dapat menggunakan fitur change password yang tersedia dalam sistem.
4. Setelah berhasil login, sistem akan menampilkan halaman utama beripa list project beserta progress-nya masing – masing. Fitur List Proyek ini akan menampilkan informasi proyek yang terbagi menjadi dua bagian, yaitu proyek yang masih dalam tahapan pengerjaan (on-going) dan proyek yang sudah selesai dikerjakan (completed).
5. Sistem juga memiliki fitur chatting agar management dan anggota tim dalam satu proyek tertentu dapat melakukan komunikasi terkait proyek, halini akan sangan berguna karena dapat mengurangi pekerjaan dalam pembuatan chat group untuk masing masing proyek pada aplikasi chatting yang digunakan perusahaan sebelumnya.
6. Management dan team member dapat menggungah dokument proyek yang diperlukan, misalnya timeline ( oleh Project Manager) dan task deliberables ( Oleh presales).
7. Selain itu, dokumen yang sudah di unggah kedalam siatem juga dapat diunduh secara langsung dan akan tersimpan kedalam folder yang ditentukan sendiri oleh masing-masing management dan anggota tim.
8. Seluruh user dari sistem manajemen proyek dapat keluar dari sistem dengan menjalankan fungsi log out.
Berikut adalah fitur sistem yang hanya dapat diakses oleh Administrator sebagai berikut :
1. Administrator dapat menambah user baru kedalam sistem dan sekaligus menentukan role dari user tersebut (sebagai management atau team member) 2. History chat per proyek juga hanya dapat dihapus oleh administrator, namun
harus berdasarkan request dari management.
Berikut adalah fitur sistem yang hanya dapat diakses oleh Managememt sebagai berikut :
1. Management dapat menambah proyek baru kedalam sistem ketika berhasil mendapatkan proyek dari customer. Untuk menambahkan proyek baru, management harus menambahkan tem member yang akan bekerjasama dalam mengerjakan proyek tersebut.
2. Setelah berhasil menambahkan proyek, management akan membagi proyek kedalam beberapa sprint dan disesuaikan dengan timeline yang sudah disetuju oleh pihak customer yang bersangkutan. Pembagian proyek dalam Sprint dilakukan karena saat ini perusahaan sudah menggunakan metodologi Agile-Scrum dalam setiap pembangunan atau pengembangan sistem.
3. Setelah berhasil menambahkan sprint, pihak manajemen akan menambahkan task per sprint-nya dan kemudian menentukan siapa team member yang akan mengerjakan task tersebut.
4. Pihak Manajemen juga dapat menambahkan informasi lebih detail lagi terkait proyek dengan mengisi message board pada sistem.
Berikut adalah fitur sistem yang hanya dapat diakses oleh Team Member sebagai berikut :
1. Informasi tambahan terkait proyek dapat diliha oleh team member pada menu Message Board dalam sistem.
2. Team member yang sudah terlibat dalam mengerjakan proyek dapat melihat task yang harus dikerjakan sesuai deadline yang ditampilkan pada sistem.
3. Ketika task dari sprint tertentu sudah selesai dikerjakan maka team member dapat mengubah status dari task tersebut dengan menerkan tombol “Done”
Berikut merupakan tampilan dari Activity Diagram yang mewakili seluruh bisnis proses yang ada pada sistem manajemenproyek yang akan dibangun sebagai berikut :
Login kedalam sistem
Menambahkan User kedalam sistem
Mencoba login kedalam sistem
Mecoba login kedalam sistem
ya Berhasil?
tidak
Ubah password
Log out ya
Ubah password
Melihat list proyek yang tesedia
tidak
Berhasil?
Proyek baru?
Menambah proyek baru ya
Memilih proyek yang ingin dilihat
tidak
Melihat informasi proyek
Mengupdate informasi proyek pada
board (jika ada) Menambah sprint dari task juga menugaskan nya
kepada anggota tim
Menggungah dokumen proyek
Mengunduh dokumen proyek
Melakukan obrolan dengan
anggota tim Menghapus history chat dalam
jangka waktu tertentu berdasarkan request
management Log out
Memilih proyekyang ingin dilihat
Melihat deskripsi detail dari proyek
Melihat informasi tambahan proyek
Melihat sprint dan task yang ditugaskan
Mengunduh dokumen proyek
Melakukan obrolan dengan anggota tim
Menggugah dokumen task deliverables
Memperbaharui task yang telah selesai
dikerjakan Log out
Gambar 4.1 – Activity Diagram
4.1.5 Use Case Diagram yang di usulkan
Berikut bisnis proses yang telah dijabarkan pada activity diagram diatas, berikut merupakan tampilan menggunakan Use Case Diagram untuk ,menjelaskan hubungan dari aktor dengan perancangan sistem manajemen proyek.
Change password Login
List Project Add Project
View project Edit Project
Add Message Board
View Message Board View Sprint
Add Sprint
Delete Sprint View Sprint
View Task add Task View Task
Edit Task Delete Task
Change status Project upload Project download
Chatting
List user Add new user
Clear chat
Text
Gambar 4.2 – Use Case Diagram Usulan Management
Project Member
Penjelasan Untuk setiap use case diatas akan dijabarkan pada use case description sebagai berikut.
4.1.5.1 Use Case Login
Tabel 4.1
Use Case
Login Use Case Name: LoginScenario: Menampilkan seluruh fungsi dalam sistem sesuai role Triggering Event: User pertama kali membuka sistem project management
setelah sesi sebelumnya habis, atau setelah log out Brief Description: Sistem menampilkan seluruh fungsi yang ad sesuai role
yang diberikan
Actors: Management, Team Member dan Administrator Related Use
Cases:
Semua use case yang tersedia pada diagram
Stakeholders: -
Preconditions: User sudah memiliki akun dan belum masuk kedalam sistem
Post Conditions: User berhasil masuk kedalam sistem dan dapat menggunakan sistem sesuai role yang dimiliki Flow of
Activities:
Actor System
1. Management / team member/ Administrator masuk kedalam sistem untuk pertamakali nya setelah session habis 2. Management / team
member/ Administrator
1.1 Sistem Menampilkan form untuk user melakukan login 1.2 Sistem melakukan
validasi kedalam database. Jika data yang dimasukkan
memasukkan username dan password ke dalam form yang telah
disediakan dan menekan tombol login
sesuai, maka sistem akan mengarahkan user kedalam halaman home
Exception Conditions:
Sistem menampilkan pesan error jika terdapat fiel yang melanggar validasi
4.1.5.2 Use Case List User
Tabel 4.2 Use Case List User Use Case Name: List User
Scenario: Melihat user yang terdaftar dalam system
Triggering Event: Administrator ingin melihat list user dalam sistem manajemen proyek
Brief Description: Sistem menampilkan list user dalam sistem manajemen proyek
Actors: Administrator
Related Use Cases:
Login
Stakeholders: -
Preconditions: User sudah terdaftar dalam database dengan role Administrator dan sudah masuk ke dalam sistem
Post Conditions: Administrator berhasil melihat list user baru beserta role- nya
Flow of Activities:
Actor System
1. Administrator menekan 1.1 Sistem menampilkan
tombol list user list user yang ada dalam sistem
Exception Conditions:
-
4.1.5.3 Use Case Add New User
Tabel 4.3 Use Case Add New User Use Case Name: Add New User
Scenario: Menambahkan user baru beserta roles-nya dalam sistem Triggering Event: Administrator ingin menambahkan user bar uke dalam
sistem manajemen proyek
Brief Description: Sistem menambahkan user baru dalam system manajemen proyek
Actors: Administrator
Related Use Cases:
Login
Stakeholders: -
Preconditions: User sudah terdaftar dalam database dengan role Administrator dan sudah masuk kedalam sistem Post Conditions: Administrator berhasil menambahkan user baru beserta
role-nya Flow of
Activities:
Actor System
1. Administrator menekan tombol Add New User 2. Administrator mengisi field pada form yang
1.1 Sistem menampilkan form Add New User 2.1 Sistem melakukan
pengecekan terhadap
berisi informasi terkait user baru dan kemudian menekan tombol Add
data dan jika validasinya sesuai, sistem akan menyimpan data ke dalam database
Exception Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.4 Use Case Change Password
Tabel 4.4 Use Case Change Password Use Case Name: Change Password
Scenario: Mengubah password untuk masuk ke dalam sistem Triggering Event: Management / Team Member ingin mengubah password
default menjadi password pribadi
Brief Description: Sistem mengubah password untuk masuk ke dalam system
Actors: Management dan Team Member Related Use
Cases:
Login
Stakeholders: -
Preconditions: Management / Team Member sudah terdaftar dan sudah masuk ke dalam sistem
Post Conditions: Management / Team Member berhasil mengubah password Flow of
Activities:
Actor System
1. Management / Team Member menekan
1.2 Sistem menampilkan form Change Password
tombol Change Password
2. Management/Team Member mengisi field pada form yang berisi informasi terkait password lama dan password baru, kemudian menekan tombol Change
2.2 Sistem melakukan pengecekan terhadap data dan jika
validasinya sesuai, sistem akan menyimpan data ke dalam database
Exception Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.5 Use Case List Project
Tabel 4.5 Use Case List Project Use Case Name: List Project
Scenario: Menampilkan daftar proyek yang tersedia
Triggering Event: Management / Team Member ingin melihat proyek yang ada
Brief Description: Sistem menampilkan daftar proyek yang tersedia dalam perusahaan
Actors: Management dan Team Member Related Use
Cases:
Login
Stakeholders: -
Preconditions: Management / Team Member berhasil masuk ke dalam sistem
Post Conditions:
Management / Team Member dapat melihat seluruh daftar proyek yang tersedia (management) atau proyek yang ditugaskan kepadanya (team)
Flow of Activities:
Actor System
1. Management / Team Member menjalankan fungsi login hingga berhasil masuk ke dalam sistem
1.1 Sistem menampilkan daftar proyek yang tersedia sesuai role
Exception Conditions:
-
4.1.5.6 Use Case Add Project
Tabel 4.6 Use Case Add Project Use Case Name: Add Project
Scenario: Menambah proyek baru
Triggering Event: Management ingin menambah proyek baru ke dalam system
Brief Description: Management menambahkan proyek baru dan deskripsinya ke dalam sistem
Actors: Management
Related Use Cases:
Login
Stakeholders: -
Preconditions: Ada proyek baru yang diterima perusahaan
Post Conditions: Detil proyek baru berhasil ditambahkan ke dalam system
Flow of Activities:
Actor System
1. Management menekan tombol Add Project 2. Management mengisi
field pada form yang berisi deskripsi umum proyek dan kemudian menekan tombol Submit
1.1 Sistem menampilkan form Add Project 2.1 Sistem melakukan
pengecekan terhadap data dan jika
validasinya sesuai, sistem akan menyimpan data ke dalam database
Exception Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.7 Use Case Edit Project
Tabel 4.7 Use Case Edit Project Use Case Name: Edit Project
Scenario: Memperbaharui deskripsi proyek
Triggering Event: Management ingin memperbaharui deskripsi proyek Brief Description: Management memperbaharui informasi dari proyek
tertentu
Actors: Management
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam system
Post Conditions: Deskripsi dari proyek yang dipilih telah berhasil diperbaharui
Flow of Activities:
Actor System
1. Management memilih proyek yang ingin diperbaharui dengan menekan menu proyek 2. Management memilih
menu Project Description 3. Management
memperbaharui field yang diperlukan dan kemudian menekan tombol Save
1.2 Sistem menampilkan form Add Project 2.2 Sistem menampilkan
informasi pada menu Project Description
3.1 Sistem melakukan pengecekan terhadap data dan jika validasinya sesuai, sistem akan menyimpan data kedalam database
Exception Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.8 Use Case View Project
Tabel 4.8 Use Case View Project Use Case Name: View Project
Scenario: Menampilkan deskripsi proyek
Triggering Event: Team Member ingin melihat deskripsi proyek
Brief Description: Team Member melihat deskripsi dari proyek yang dipilih
Actors: Team Member
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem
Post Conditions: Deskripsi dari proyek yang dipilih dapat dilihat Flow of
Activities:
Actor System
1. Team Member memilih proyek yang ingin diperbaharui dengan menekan menu proyek 2. Team Member memilih
menu Project Description
1.3 Sistem menampilkan informasi proyek dalam beberapa menu
2.3 Sistem menampilkan informasi pada menu Project Description
Exception Conditions:
-
4.1.5.9 Use Case Add Message Board
Tabel 4.9 Use Case Add Message Board Use Case Name: Add Message Board
Scenario: Menambah informasi tertentu terkait proyek Triggering Event: Ada informasi tambahan terkait proyek yang perlu
diketahui oleh anggota tim
Brief Description: Management menambah informasi tambahan terkait proyek pada board yang tersedia
Actors: Management
Related Use Login, List Project
Cases:
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem
Post Conditions: Informasi tambahan terkait proyek berhasil ditambahkan Flow of
Activities:
Actor System
1. Management memilih salah satu proyek dari list proyek yang ada 2. Management memilih
menu Message Board 3. Management mengisi
informasi pada text area message dan membuat variasi font jika
diperlukan, selanjutnya menekan tombol Save
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan form Message Board 3.1 Sistem akan menyimpan
informasi yang dimasukkan ke dalam database
Exception Conditions:
-
4.1.5.10 Use Case View Message Board
Tabel 4.10 Use Case View Message Board Use Case Name: View Message Board
Scenario: Melihat informasi tertentu terkait proyek
Triggering Event: Ingin melihat informasi tambahan terkait proyek
Brief Description: Team Member melihat informasi tambahan terkait proyek pada board yang tersedia
Actors: Team Member
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem
Post Conditions: Informasi tambahan terkait proyek berhasil dilihat Flow of
Activities:
Actor System
1. Team Member memilih salah satu proyek dari list proyek yang ada 2. Team Member menekan
menu Message Board
1.2 Sistem menampilkan informasi proyek dalam beberapa menu
2.2 Sistem menampilkan informasi tambahan Message Board
Exception Conditions:
-
4.1.5.11 Use Case View Sprint
Tabel 4.11 Use Case View Sprint Use Case Name: View Sprint
Scenario: Melihat sprint proyek
Triggering Event: Ingin melihat sprint yang ada dalam proyek Brief Description: Management melihat sprint yan ada dalam proyek
Actors: Management
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem Post Conditions: Sprint proyek telah dilihat
Flow of Activities:
Actor System
1. Management memilih salah satu proyek dari list proyek yang ada 2. Management menekan
menu TodoList
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.3 Sistem menampilkan sprint yang ada
Exception Conditions:
-
4.1.5.12 Use Case Add Sprint
Tabel 4.12 Use Case Add Sprint Use Case Name: Add Sprint
Scenario: Menambahkan sprint dalam proyek
Triggering Event: Ada sprint yang perlu ditambahkan dalam proyek Brief Description: Management menambah sprint sesuai deadline proyek
yang telah ditentukan
Actors: Management
Related Use Cases:
Login, List Project Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem
Post Conditions: Sprint proyek berhasil ditambahkan ke dalam proyek Flow of
Activities:
Actor System
3. Management memilih salah satu proyek dari list proyek yang ada 4. Management memilih
TodoList
5. Management menekan tombol Add New Sprint
1.3 Sistem menampilkan informasi proyek dalam beberapa menu
2.3 Sistem menampilkan sprint yang ada 5.1 Sistem menampilkan
sprint baru Exception
Conditions:
-
4.1.5.13 Use Case Delete Sprint
Tabel 4.13 Use Case Delete Sprint Use Case Name: Delete Sprint
Scenario: Menghapus sprint
Triggering Event: Ingin menghapus sprint tertentu
Brief Description: Management ingin menghapus sprint tertentu dari proyek
Actors: Management
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem
Post Conditions: Sprint tertentu berhasil dihapus
Flow of Activities:
Actor System
2. Management memilih salah satu proyek dari list proyek yang ada 3. Management memilih
TodoList
4. Management memilih sprint yang ingin dihapus dan menekan tombol Delete
1.2 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan sprint yang ada 4.1 Sistem menampilkan
sprint baru
Exception Conditions:
-
4.1.5.14 Use Case View Task
Tabel 4.14 Use Case View Task Use Case Name: View Task
Scenario: Melihat task berdasarkan sprint proyek yang dipilih Triggering Event: Ingin melihat task dalam sprint tertentu
Brief Description: Management melihat task yang ada berdasarkan sprint yang dipilih pada proyek
Actors: Management
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem, dan sprint sudah ada dalam proyek
Post Conditions: Task dalam sprint dalam proyek telah dilihat
Flow of Activities:
Actor System
1. Management memilih salah satu proyek dari list proyek yang ada 2. Management memilih
TodoList
3. Management memilih salah satu sprint dan menekan tombol See Task
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan sprint yang ada 3.1 Sistem menampilkan
task berdasarkan sprint yang dipilih
Exception Conditions:
-
4.1.5.15 Use Case Add Task
Tabel 4.15 Use Case Add Task Use Case Name: Add Task
Scenario: Menambahkan task dalam sprint proyek
Triggering Event: Ada task yang perlu ditambahkan dalam sprint proyek Brief Description: Management menambahkan task pada sprint yang dipilih
kemudian menugaskannya kepada anggota tim
Actors: Management
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam system, dan sprint sudah ada dalam proyek
Post Conditions: Task dalam sprint proyek berhasil ditambahkan
Flow of Activities:
Actor System
1. Management memilih salah satu proyek dari list proyek yang ada 2. Management memilih
TodoList
3. Management memilih salah satu sprint dengan menekan tombol Link Sprint
4. Management menekan tombol Add New Task 5. Management mengisi
field yang dibutuhkan dan menugaskannya kepada anggota tim, kemudian menekan tombol Save
3.1 Sistem menampilkan informasi proyek dalam beberapa menu
3.2 Sistem menampilkan sprint yang ada 3.3 Sistem menampilkan
task berdasarkan sprint yang dipilih
4.1 Sistem menampilkan form Add New Task 5.1 Sistem melakukan
pengecekan data dan jika validasinya sesuai, sistem akan menyimpan data kedalam database
Exception Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.16 Use Case Edit Task
Tabel 4.16 Use Case Edit Task Use Case Name: Edit Task
Scenario: Memperbaharui task dalam sprint proyek
Triggering Event: Ada task yang perlu diperbaharui dalam sprint proyek Brief Description: Management memperbaharui task pada sprint yang dipilih
Actors: Management
Related Use Login, List Project
Cases:
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem, sprint dan taks sudah ada dalam proyek
Post Conditions: Task dalam sprint proyek berhasil diperbaharui Flow of
Activities:
Actor System
1. Management memilih salah satu proyek dari list proyek yang ada 2. Management memilih
TodoList
3. Management memilih salah satu sprint dengan menekan tombol Link Sprint
4. Management menekan tombol Edit Task 5. Management
memperbaharui field pada task yang dipilih dan menekan tombol Save
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan sprint yang ada 3.1 Sistem menampilkan
task berdasarkan sprint yang dipilih
4.1 Sistem menampilkan form Add New Task 5.1 Sistem melakukan pengecekan data dan jika validasinya sesuai, sistem akan menyimpan data kedalam database Exception
Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.17 Use Case Delete Task
Tabel 4.17 Use Case Delete Task Use Case Name: Delete Task
Scenario: Menghapus task dalam sprint proyek
Triggering Event: Ada task yang ingin dihapus dalam sprint proyek Brief Description: Management menghapus task pada sprint yang dipilih
Actors: Management
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem, sprint dan taks sudah ada dalam proyek
Post Conditions: Task dalam sprint proyek berhasil dihapus Flow of
Activities:
Actor System
1. Management memilih salah satu proyek dari list proyek yang ada 2. Management memilih
TodoList
3. Management memilih salah satu sprint dengan menekan tombol Link Sprint
4. Management memilih task yang ingin dihapus dan menekan tombol Delete Task
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan sprint yang ada 3.1 Sistem menampilkan
task berdasarkan sprint yang dipilih
4.1 Sistem menghapus task yang dipilih
Exception Conditions:
-
4.1.5.18 Use Case Change Status
Tabel 4.18 Use Case Change Status Use Case Name: Change Status
Scenario: Mengubah status task dalam sprint proyek Triggering Event: Ada task yang telah selesai dalam sprint proyek
Brief Description: Team Member memperbaharui status dari task pada yang dipilih
Actors: Team Member
Related Use Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem, sprint dan taks sudah ada dalam proyek
Post Conditions: Status dari task yang dipilih dalam sprint proyek berhasil diperbaharui
Flow of Activities:
Actor System
1. Team Member memilih salah satu proyek dari list proyek yang ada 2. Team Member memilih
TodoList
3. Team Member memilih salah satu sprint dari dropdown list sprint
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan sprint yang ada 3.1 Sistem menampilkan
task berdasarkan sprint
4. Team Member memilih task yang statusnya ingin diperbaharui dan kemudian menekan tombol Undone
yang dipilih
4.1 Sistem memperbaharui status task yang dipilih menjadi Done
4.1.5.19 Use Case Project Upload
Tabel 4.19 Use Case Project Upload Use Case Name: Project Upload
Scenario: Melakukan upload file
Triggering Event: Terdapat dokumentasi proyek dan deliverables yang perlu di upload
Brief Description: Management / Team Member melakukan upload file terkait dokumentasi proyek
Actors: Management dan Team Member Related Use
Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem dan dokumentasi proyek serta deliverables telah ada
Post Conditions: Dokumentasi proyek dan deliverables berhasil di upload ke sistem
Flow of Activities:
Actor System
1. Management / Team Member memilih salah satu proyek dari list proyek yang ada
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2. Management / Team Member memilih menu Project Upload
3. Management / Team Member menekan tombol Upload 4. Management / Team
Member memilih file yang ingin diunggah dan kemudian menekan tombol Open
5. Management / Team Member menekan tombol Upload
2.1 Sistem menampilkan informasi pada menu Project Upload 3.1 Sistem menampilkan
Open File Dialog 4.1 Sistem menampilkan file
yang dipilih dalam field yang tersedia
5.1 Sistem menyimpan path lokasi file kedalam database, sementara file fisik disimpan dalam folder proyek Exception
Conditions:
Sistem menampilkan pesan eror jika terdapat field yang melanggar validasi
4.1.5.20 Use Case Project Download
Tabel 4.20 Use Case Project Download Use Case Name: Project Download
Scenario: Mengunduh file proyek yang dibutuhkan
Triggering Event: Management / Team Member ingin melihat informasi detail proyek
Brief Description: Management / Team Member mengunduh file proyek yang akan dikerjakan atau ingin dilihat
Actors: Management dan Team Member Related Use
Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam sistem dan dokumen proyek sudah dimasukkan dalam sistem
Post Conditions: File proyek yang diingkan berhasil diunduh Flow of
Activities:
Actor System
1. Management / Team Member memilih salah satu proyek dari list proyek yang ada 2. Management / Team
Member memilih menu Project Download 3. Management / Team
Member memilih file yang ingin diambil dengan menekan tombol Download 4. Management / Team
Member memilih lokasi untuk file yang ingin diunduh dan mengubah nama file jika
diperlukan, kemudian menekan tombol Save
1.1 Sistem menampilkan informasi proyek dalam beberapa menu
2.1 Sistem menampilkan informasi pada menu Project Download 3.2 Sistem menampilkan
Save File Dialog
4.1 Sistem menampilkan path lokasi file dari database dan mengunduh file dari folder proyek kemudian menempatkan file kedalam lokasi yang sudah ditentukan user sebelumnya
Exception Conditions:
-
4.1.5.21 Use Case Chatting
Tabel 4.21 Use Case Chatting Use Case Name: Chatting
Scenario: Melakukan chatting untuk berdiskusi terkait proyek Triggering Event: Management / Team Member ingin berdiskusi terkait
proyek yang dikerjakan
Brief Description: Management / Team Member melakukan diskusi terkait proyek bersama tim yang sudah ditentukan
Actors: Management dan Team Member Related Use
Cases:
Login, List Project
Stakeholders: -
Preconditions: Proyek sudah terdaftar dalam system, anggota tim sudah dimasukkan ke dalam proyek terkait
Post Conditions: Chatting antara anggota tim dalam satu proyek dapat dilakukan
Flow of Activities:
Actor System
1. Management / Team Member memilih salah satu proyek dari list proyek yang ada 2. Management / Team
Member memilih menu Chatting
3. Management / Team Member menuliskan chat yang diinginkan pada field yang
1.2 Sistem menampilkan informasi proyek dalam beberapa menu
2.2 Sistem menampilkan form Chatting
3.3 Sistem menampilkan isi chat kepada anggota tim dalam satu proyek dan menyimpan seluruh isi chat kedalam database
disediakan
Exception Conditions:
-
4.1.5.22 Use Case Clear Chat
Tabel 4.20 Use Case Clear Chat Use Case Name: Clear Chat
Scenario: Melakukan penghapusan chat dalam proyek Triggering Event: Kapasitas database akibat history chat sudah besar Brief Description: Administator melakukan penghapusan history chat pada
jangka waktu tertentu (berdasarkan request dari
management) agar tidak membuat storage dalam database menjadi penuh
Actors: Administrator
Related Use Cases:
Login
Stakeholders: -
Preconditions: Administrator sudah masuk ke dalam system Post Conditions: Chat yang lama telah berhasil dihapus dari database Flow of
Activities:
Actor System
1. Adminstrator memilih menu Clear Chat 2. Administrator memilih
1.1 Sistem menampilkan form Clear Chat 2.1 Sistem menampilkan
proyek yang ingin dihapus history chat- nya dengan memilih proyek dari combobox 3. Administrator memilih
periode chat yang ingin dihapus dari combobox yang disediakan 4. Administrator menekan
tombol Clear
5. Administrator menekan tombol Yes
proyek yang dipilih pada field combobox
3.1 Sistem menampilkan periode yang dipilih pada field combobox 4.1 Sistem menampilkan
konfirmasi dialog 5.1 Sistem melakukan
penghapusan data dari database sesuai proyek dan periode waktu yang dipilih
Exception Conditions:
Sistem menampilkan pesan error jika terdapat field yang melanggar validasi
4.1.6 Domain Model Class Diagram
Berikut merupakan tampikan dari domain model class diagram untuk sistem manajemen proyek yang dibangun.
Tasks task_id project_id projectsprint_id user_id activity description status deadline_datetime submit_datetime created_at updated_at
Users user_id fullname username email password role created_at updated_at
Chats chat_id project_id user_id message status created_at updated_at 1..*
1 0..*
ProjectsDocuments projectdocument_id project_id user_id file_path file_name created_at updated_at
1
1 1..*
ProjectSprints projectsprint_id project_id sprint created_at updated_at
1..*
1
Projects
project_id project_name description start_datetime finish_datetime pic message_board status_progress created_at updated_at 1..*
1
1 1..*
1..*
1..*
1
0..*
UsersProjects
project_id user_id created_at updated_at
Gambar 4.3 – Domain Model Class Diagram
4.1.7 First Cust Design Class Diagram
Berikut merupakan tampilan dari first cut design clas diagram untuk sistem manajemen proyek yang dirancang.
Tasks -task_id : int (key) -project_id : int -projectsprint_id : int -user_id : int -activity : string -description : string -status : string -deadline_datetime : Date -submit-datetime : Date -created_at : Date -updated_at : Date
Users -user_id : int (key) -fullname : string -username : string -email : string -password : string -role : string -created_at : Date -updated_at : Date
Chats -chat_id : int (key) -project_id : int -user_id : int -message : string -status : string -created_at : Date -updated_at : Date
ProjectsDocuments -projectdocument_id : int (key) -project_id : int
-user_id : int -file_path : string -file_name : string -created_at : Date -updated_at : Date
ProjectSprints -projectsprint_id : int (key) -project_id : int -sprint : string -created_at : Date -updated_at : Date
Projects
-project_id : int (key) -project_name : string -description : string -start_datetime : Date -finish_datetime : Date -pic : int
-message_board : string -status_progress : string -created_at : Date -updated_at : Date
UsersProjects
-project_id : int (key) -user_id : int -created_at : Date -updated_at : Date
Gambar 4.4 – First Cust Design Class Diagram
4.1.8 Updated Design Class diagram
Berikut merupakan tampilan dari updated design class diagram untuk sistem manajemen proyek yang akan dibangun
Tasks
-task_id : int (key) -project_id : int -projectsprint_id : int -user_id : int -activity : string -description : string -status : string -deadline_datetime : Date -submit-datetime : Date -created_at : Date -updated_at : Date
Users -user_id : int (key) -fullname : string -username : string -email : string -password : string -role : string -created_at : Date -updated_at : Date
Chats -chat_id : int (key) -project_id : int -user_id : int -message : string -status : string -created_at : Date -updated_at : Date
ProjectsDocuments -projectdocument_id : int (key) -project_id : int
-user_id : int -file_path : string -file_name : string -created_at : Date -updated_at : Date
ProjectSprints -projectsprint_id : int (key) -project_id : int -sprint : string -created_at : Date -updated_at : Date
Projects
-project_id : int (key) -project_name : string -description : string -start_datetime : Date -finish_datetime : Date -pic : int
-message_board : string -status_progress : string -created_at : Date -updated_at : Date
UsersProjects
-project_id : int (key) -user_id : int -created_at : Date -updated_at : Date
<<controller>>
TaskHandler
+viewTask() +getUserProject() +addTask() +viewTask() +editTask() +deleteTask() +viewTaskMember() +changeStatusTask()
<<controller>>
UserHandler
+attemptLogin() +getListUser() +addNewUser() +changePassword() +getUser() +logout()
<<controller>>
ChatHandler
+getUserProject() +viewChat() +sendChat() +clearChat()
<<controller>>
ProjectDocumentHandler
+upload() +download()
<<controller>>
ProjectSprintHandler
+viewSprint() +addSprint() +deleteSprint()
<<controller>>
ProjectHandler
+getListProject() +addNewProject() +viewProject() +editProject() +addMessageBoard() +viewMessageBoard()
Gambar 4.5 – Updated Design Class diagram
4.1.9 System Sequence Diagram (SSD)
Berikut merupakan tampilan dari System Sequence Diagram (SSD) untuk rancangan sistem managemen proyek.
4.1.9.1 SSD Login
All Users :System
attemptLogin (username, password)
(error_message, login_success)
validate()
Gambar 4.6 – SSD Login
4.1.9.2 SSD Add new User
Administrator :System
addNewUser (username, fullname, email, role)
(notification, list_user)
validate()
Gambar 4.7 – SSD Add new User
4.1.9.3 SSD List Project
Management/Team
Member :System
getListProject()
(project_id, project_name, description, start_datetime, finish_datetime, status_progress)
Gambar 4.8 – SSD List Project
4.1.9.4 SSD Add Project
Management :System
getUser() (user_id, fullname)
validate() addNewProject(project_name, description,
start_datetime, finish_datetime, user_id) (notification, project_id, project_name, description,
start_datetime, finish_datetime, status_progress)
Gambar 4.9 – SSD Add Project
4.1.9.5 SSD Edit Project
Management :System
viewProject (project_id) (project_id, project_name, description, start_datetime, finish_datetime, user_id, fullname)
validate() getUser()
(user_id, fullname)
editProject (project_id, project_name, description, start_datetime, finish_datetime, user_id) (notification, project_id, project_name, description, start_datetime, finish_datetime, user_id, fullname)
Gambar 4.10 – SSD Edit Project
4.1.9.6 SSD View Project
Team Member :System
viewProject (project_id)
(project_name, description, start_datetime, finish_datetime, fullname)
Gambar 4.11 – SSD View Project
4.1.9.7 SSD Add Message Board
Management :System
addMessageBoard (project_id, message)
(notification, message)
Gambar 4.12 – SSD Add Message Board
4.1.9.8 SSD View Message Board
Team Member :System
viewMessageBoard (project_id)
(message)
Gambar 4.13 – SSD View Message Board
4.1.9.9 SSD View Sprint
Team Member :System
viewSprint (project_id)
(list_sprint)
Gambar 4.14 – SSD View Sprint
4.1.9.10 SSD Delete Sprint
Management :System
deleteSprint (sprint_id)
(notification, list_sprint)
Gambar 4.15 – SSD Delete Sprint
4.1.9.11 SSD View Task
Team Member :System
viewTask (project_id, sprint_id)
(list_task)
Gambar 4.16 – SSD View Task
4.1.9.12 SSD Add Task
Management :System
getUSerProject() (user_id, fullname)
validate() addTask (project_id, sprint_id, task_name,
description, user_id, deadline_datetime)
(notification, list_task)
Gambar 4.17 – SSD Add Task
4.1.9.13 SSD Delete Task
Management :System
viewTask (project_id, print_id) (list_task)
deleteTask (task_id)
(notification, list_task)
Gambar 4.18 – SSD Delete Task
4.1.9.14 SSD Change Status
Management :System
viewTaskMember (project_id, print_id) (list_task)
changeStatusTask (task_id)
(status)
Gambar 4.19 – SSD Change Status
4.1.9.15 SSD Project Upload
Management/Team
Member :System
upload (project_id, file_path)
(notification)
Gambar 4.20 – SSD Project Upload
4.1.9.16 SSD Project Download
Management/Team
Member :System
download (project_id, file_path)
(file)
4.1.9.17 SSD Chatting
Management/Team
Member :System
getUserProject (project_id) (user_id, fullname)
viewChat (project_id, user_id, message) (list_chat)
sendChat (project_id, user_id, message) (fullname, message)
Gambar 4.23 – SSD Chatting 4.1.9.18 SSD Clear Chat
Administrator :System
clearChat (project_id, date_from, date_to)
(notification)
Gambar 4.22 – SSD Clear Chat
4.1.9.19 SSD Multilayer Sequence Diagram Login
All Users :UserHandler
attemptLogin (username, password)
(error_message, login_success)
validate() attemptLogin (username, password)
(error_message, login_success)
aU:Users :UsersDA
readUsers (username, password)
Gambar 4.23 – SSD Multilayer Sequence Diagram Login
4.1.9.20 SSD Multilayer Sequence Diagram List User
Administrator :UserHandler
getListUser()
(username, fullname, email, role)
getListUser()
(username, fullname, email, role)
aU:Users :UsersDA
readUsers ()
Gambar 4.24 – SSD Multilayer Sequence Diagram List User
4.1.9.21 SSD Multilayer Sequence Diagram Add New User
Administrator :UserHandler
addNewUser (username, fullname, email, role)
(notification, list_user)
validate()
addNewUser (username, fullname, email, role)
(notification, list_user)
aU:Users :UsersDA
saveUsers(aU)
Gambar 4.25 – SSD Multilayer Sequence Diagram Add New User
4.1.9.22 SSD Multilayer Sequence Diagram Change Password
Management/Team
Member :UserHandler
changePassword(user_id, password, new_password, confirm_password)
(notification)
validate()
changePassword(user_id, password, new_password, confirm_password)
(notification)
aU:Users :UsersDA
saveUsers(aU)
Gambar 4.26 – SSD Multilayer Sequence Diagram Change Password
4.1.9.23 SSD Multilayer sequence Diagram List project
Management/Team
Member :ProjectHandler
getListProject()
(project_id, project_name, description, start_datetime, finish_datetime, status_progress)
getListProject() (project_id, project_name, description, start_datetime, finish_datetime, status_progress)
aP:Projects :ProjectsDA
readProjects()
Gambar 4.27 – SSD Multilayer Sequence Diagram List Project
4.1.9.24 SSD Multilayer sequence Diagram Add project
Management :UserHandler
getUser(user_id)
(user_id, fullname)
aP:Projects :UsersDA
readProjects() :ProjectHandler
addNewProject (project_name, description,
start_datetime, finish_datetime,
user_id)
(notification, project_id, project_name, description,
start_datetime, finish_datetime, status_progress)
:ProjectsDA aU:Users
getUser(user_id)
(user_id, fullname)
addNewProject (project_name, description,
start_datetime, finish_datetime,
user_id)
(notification, project_id, project_name, description, start_datetime, finish_datetime, status_progress)
saveProjects(aP) Validate()
Gambar 4.28 – SSD Multilayer Sequence Diagram Add Project
4.1.9.25 SSD Multilayer sequence Diagram Edit project
Management :UserHandler
viewProject(project_id)
(project_id, project_name, description, start_datetime, finish_datetime, user_id)
aP:Projects :UsersDA
readProjects() :ProjectHandler
editProject(project_id, project_name, description, start_datetime,
finish_datetime, user_id)
(notification, project_id, project_name,
description, start_datetime, finish_datetime, user_id, fullname)
:ProjectsDA aU:Users
viewProject(project_id)
(project_id, project_name, description, start_datetime,
finish_datetime, user_id)
editProject(project_id, project_name, description, start_datetime,
finish_datetime, user_id) (notification, project_id,
project_name, description, start_datetime, finish_datetime, user_id, fullname)
saveProjects(aP) Validate()
getUser(user_id)
(user_id, fullname)
getUser(user_id)
(user_id, fullname)
readUsers()
Gambar 4.29 – SSD Multilayer Sequence Diagram Edit Project 4.1.9.26 SSD Multilayer sequence Diagram View project
Team Member :ProjectHandler
viewProject(project_id)
(project_name, description, start_datetime, finish_datetime, fullname)
viewProject(project_id) (project_name, description,
start_datetime, finish_datetime, fullname)
aP:Projects :ProjectsDA
readProjects()
Gambar 4.30 – SSD Multilayer Sequence Diagram View Project
4.1.9.27 SSD Multilayer sequence Diagram Add Message Board
Management :ProjectHandler
addMessageBoard(project_id, message)
(notification, message)
addMessageBoard (project_id, message)
(notification, message)
aP:Projects :ProjectsDA
readProjects(aP)
Gambar 4.31 – SSD Multilayer Sequence Diagram Add Message Board
4.1.9.28 SSD Multilayer sequence Diagram View Message Board
Team Member :ProjectHandler
viewMessageBoard(project_id)
(message)
viewMessageBoard(project_id)
(message)
aP:Projects :ProjectsDA
readProjects()
Gambar 4.32 – SSD Multilayer Sequence Diagram View Message Board
4.1.9.29 SSD Multilayer sequence Diagram View Sprint
Management :ProjectSprintHandler
viewSprint(project_id)
(list_sprint)
viewSprint(project_id)
(list_sprint)
aPS:ProjectSprints :ProjectSprintsDA
readProjectSprints()
Gambar 4.33 – SSD Multilayer Sequence Diagram View Sprint
4.1.9.30 SSD Multilayer sequence Diagram Add Sprint
Management :ProjectSprintHandler
addSprint(project_id)
(notification, list_sprint)
addSprint(project_id)
(notification, list_sprint)
aPS:ProjectSprints :ProjectSprintsDA
saveProjectSprints(aPS)
Gambar 4.34 – SSD Multilayer Sequence Diagram Add Sprint
4.1.9.31 SSD Multilayer sequence Diagram Delete Sprint
Management :ProjectSprintHandler
deleteSprint(sprint_id)
(notification, list_sprint)
deleteSprint(sprint_id)
(notification, list_sprint)
aPS:ProjectSprints :ProjectSprintsDA
deleteProjectSprints(aPS)
Gambar 4.35 – SSD Multilayer Sequence Diagram Delete Sprint
4.1.9.32 SSD Multilayer sequence Diagram View Task
Management :TaskHandler
viewTask(project_id, sprint_id)
(list_task)
viewTask(project_id, sprint_id)
(list_task)
aT:Tasks :TasksDA
readTasks()
Gambar 4.36 – SSD Multilayer Sequence Diagram Delete Sprint
4.1.9.33 SSD Multilayer sequence Diagram Add Task
Management aUP:UsersProjects
getUserProject()
(user_id, fullname)
aT:Tasks :TasksDA
:TaskHandler
addTask(project_id, sprint_id, task_name, description, user_id, deadline_datetime)
(notification, list_task)
:UsersProjectsDA
getUserProject()
(user_id, fullname)
addTask(project_id, sprint_id, task_name, description, user_id, deadline_datetime)
(notification, list_task)
saveTasks(aT) Validate()
readUsersProjects()
Gambar 4.37 – SSD Multilayer Sequence Diagram Add Task
4.1.9.34 SSD Multilayer sequence Diagram Edit Task
Management aUP:UsersProjects
viewTask(project_id, sprint_id)
(list_task)
aT:Tasks :TasksDA
:TaskHandler
editTask(task_id, task_name, description, user_id, deadline_datetime)
(notification, list_task)
:UsersProjectsDA
viewTask(project_id, sprint_id)
(list_task)
editTask(task_id, task_name, description, user_id, deadline_datetime)
(notification, list_task)
saveTasks(aT) Validate()
readUsersProjects()
getUserProject()
(user_id, fullname)
getUserProject()
(user_id, fullname)
readUsersProjects()
Gambar 4.38 – SSD Multilayer Sequence Diagram Edit Task 4.1.9.35 SSD Multilayer sequence Diagram Delete Task
Management :TaskHandler
viewTask(project_id, sprint_id)
(list_task)
viewTask(project_id, sprint_id)
(list_task)
aT:Tasks :TasksDA
readTasks()
deleteTask(task_id)
deleteTask(task_id)
(notification, list_task)
(notification, list_task)
deleteTasks(aT)
Gambar 4.39 – SSD Multilayer Sequence Diagram Delete Task
4.1.9.36 SSD Multilayer sequence Diagram Project Upload
Management/Team
Member :ProjectDocumentHandler
upload(project_id, file_path)
(notification)
upload(project_id, file_path)
(notification)
aPD:ProjectDocuments :ProjectDocumentsDA
saveProjectDocuments(aPD)
Gambar 4.40 – SSD Multilayer Sequence Diagram Project Upload
4.1.9.37 SSD Multilayer sequence Project Download
Management/Team
Member :ProjectDocumentHandler
download(project_id, file_path)
(file)
download(project_id, file_path)
(file)
aPD:ProjectDocuments :ProjectDocumentsDA
readProjectDocuments()
Gambar 4.41 – SSD Multilayer Sequence Diagram Project Download