Anda di halaman 1dari 10

1.

DOKUMEN SPESIFIKASI KEBUTUHAN PERANGKAT LUNAK

 Dokumen SKPL
merupakan spesifikasi kebutuhan perangkat lunak yang akan dikembangkan. Dokumen
ini digunakan oleh pengembang perangkat lunak sebagai bahan acuan dalam proses
pengembangan dan sebagai bahan evaluasi pada saat proses pengembangan perangkat
lunak maupun diakhir pengembangannya.
 User Requirements
Kebutuhan pengguna (user requirement) adalah pernyataan umum tentang apa yang
akan dikerjakan sistem. Kebutuhan pengguna ditulis dalam bahasa natural, tabel dan
diagram. Kebutuhan sistem (system requirement) dimaksudkan untuk
mengkomunikasikan fungsi-fungsi yang disediakan oleh sistem.
 Functional Specification Document
Dokumen spesifikasi fungsional adalah dokumen yang digunakan dalam pengembangan
perangkat lunak yang mendefinisikan kebutuhan fungsional dan non-fungsional dari
sebuah sistem atau aplikasi.
 Non-Functional Requirement (NFRs)
Adalah kendala atau persyaratan yang dikenakan pada sistem. Mereka menentukan
atribut kualitas perangkat lunak. Persyaratan Non-Fungsional menangani masalah
seperti skalabilitas, pemeliharaan, kinerja, portabilitas, keamanan, keandalan, dan
banyak lagi.
 Spesifikasi Desain
representasi dari desain perangkat lunak yang akan digunakan untuk merekam informasi
desain, mengatasi berbagai masalah desain, dan mengkomunikasikan informasi itu ke desain
pemangku kepentingan. Sebuah SDD biasanya menyertai diagram arsitektur dengan
penunjuk ke spesifikasi fitur terperinci dari potongan desain yang lebih kecil. Secara praktis,
deskripsi diperlukan untuk mengoordinasikan tim besar di bawah satu visi, perlu menjadi
referensi yang stabil, dan menguraikan semua bagian perangkat lunak dan cara kerjanya.
 Spesifikasi Pengujian
Dokumen Perencanaan, Deskripsi dan Hasil Uji Perangkat Lunak (PDHUPL)
merupakan dokumen deskripsi dari perancangan serta segala bentuk pengujian
terhadap perangkat lunak yang telah dirancang dan direalisasikan.
2. MENGHITUNG LUAS BANGUN MENGGUNAKAN C++

 RUMUS

#include <iostream>

using namespace std;

int main ()
{
int p,l,t,v;

cout<<”PROGRAM C++ MENGHITUNG VOLUME BALOK”<<endl;

cout<<”masukkan panjang : “;
cin>>p;

cout<<”masukkan lebar : “;
cin>>l;

cout<<”masukkan tinggi : “;
cin>>t;

v=p*l*t;

cout<<”volume balok = “<<v<<” “;

return 0;
}

 HASIL

PROGRAM C++ MENGHITUNG VOLUME BALOK


masukkan panjang : 6
masukkan lebar : 4
masukkan tinggi : 2
volume balok = 48 Press <RETURN> to close this window…
3. APLIKASI TODO

 Buat tampilan login & css

<?php
include "config/connection.php";
if(isset($_GET['wrong'])){
echo "<script>alert('Admin tidak ditemukan')</script>";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Login</title>
<link rel="stylesheet" href="public/style.css">
</head>
<body>
<form action="proseslogin.php" method="post">
<div class="title">Login Admin</div>
<div class="body">
<div class="uname">
<label for="username">Username</label>
<input type="text" name="uname" id="username"><br/>
</div>
<div class="upass">
<label for="userpass">Kata sandi</label>
<input type="password" name="upass" id="userpass">
</div>
</div>
<div class="footer">
<input type="submit" value="Login" name="login" class="btnlogin">
</div>
</form>
</body>
</html>

 Buat skrip proseslogin.php


<?php
include "config/connection.php";
session_start();
if(isset($_POST['login'])){
$uname = $_POST['uname']; // assign value from name="uname"
$upass = md5($_POST['upass']); // assign value from name="upass"
$query = "SELECT * FROM m_admin WHERE username='$uname' AND password='$upass'";
$result = mysqli_query($conn, $query);
$row = mysqli_num_rows($result);
if($row != 0 ){ // admin ditemukan
$_SESSION['admin'] = 1;
header('Location: admin/dasbor.php');
} else { // admin tidak ditemukan

header('Location: login.php?wrong=1');
}
}

 Buat skrip connection.php

<?php
define("LOCALHOST", "localhost");
define("USERNAME", "root");
define("PASSWORD", "");
define("SELECTED_DB", "todolist");
$conn = new mysqli(LOCALHOST, USERNAME, PASSWORD, SELECTED_DB);
echo !$conn ? "DB FAILED" : "DB SUCCESSFULLY CONNECTED";

 Buat skrip untuk logout

<?php
session_start();

// remove all session variables


session_unset();

// destroy the session


session_destroy();

header("location: ../login.php");
?>

 Buat skrip dasbor


<?php include "../config/connection.php"; ?>
<?php session_start() ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Dasbor</title>
<style>
body {
margin: 50px auto;
float: none;
display: table;
}
.header {
position: relative;
margin-top:10px;
width: 600px;
height: 50px;
/* border: 1px solid black; */
line-height:50px;
text-align: center;
font-family: comic sans ms;
background-color: #eaeaea;
}
</style>
</head>
<body>
<a href="logout.php">Logout</a>
<div class="header">
HALAMAN DASBOR ADMIN
</div>
<fieldset>
<legend>Input todo</legend>
<form action="tambah.php" method="post">
<table>
<tr>
<td>Task</td>
<td>:</td>
<td><input type="text" name="todo" id="todo"></td>
</tr>
<tr>
<td>Dimulai</td>
<td>:</td>
<td><input type="date" name="startdate" id="startdate"></td>
</tr>
<tr>
<td>Selesai</td>
<td>:</td>
<td><input type="date" name="enddate" id="enddate"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" value="proses" name="proses"></td>
</tr>
</table>
</form>
</fieldset>

<fieldset>
<legend>List pekerjaan</legend>
<table border="1" style="border-collapse:collapse" cellspacing="100" cellpadding="10" >
<tr>
<th>No</th>
<th>Task</th>
<th>Start Date</th>
<th>End Date</th>
<th>Status</th>
<th>Hapus</th>
<th>Ubah</th>
</tr>

<?php
if(isset($_SESSION['admin'])){
$query = "SELECT * FROM t_todos";
$result = mysqli_query($conn, $query);
$loop = 1;
while($row = mysqli_fetch_assoc($result)){?>
<tr>
<td><?= $loop++ ?></td>
<td><?= $row['todo'] ?></td>
<td><?= date('d-m-Y', strtotime($row['start_date'])) ?></td>
<td><?= date('d-m-Y', strtotime($row['end_date'])) ?></td>
<td><?= ($row['completed'] ==0)? "Belum selesai" : "Selesai" ?></td>
<td><a href="delete.php?id=<?= $row['id'] ?>">Hapus ID <?= $row['id'] ?></a></td>
<td><a href="ubah.php?id=<?= $row['id'] ?>">Ubah ID <?= $row['id'] ?></a></td>
</tr>
<?php
}
} else {
echo "<b>Anda tidak dapat akses halaman ini tanpa login, silahkan login kembali</b>";
}
?>
</table>
</fieldset>

</body>
</html>

 Buat skrip tambah.php

<?php
include "../config/connection.php";
if(isset($_POST['proses'])){
$todo = $_POST['todo'];
$startdate = $_POST['startdate'];
$enddate = $_POST['enddate'];
$query = "INSERT INTO `t_todos` (`id`, `todo`, `start_date`, `end_date`, `completed`)
VALUES (NULL, '$todo', '$startdate', '$enddate', '0')";
$result = mysqli_query($conn, $query);
if($result){
echo "<script>alert('Data berhasil ditambah'); window.location = 'dasbor.php';</script>";
}
}
?>

 Buat skrip delete.php

<?php
include "../config/connection.php";
if(isset($_GET['id'])){
$id = $_GET['id'];
$query = "DELETE FROM t_todos where id = $id";
$result = mysqli_query($conn, $query);
if($result){
echo "<script>alert('Data berhasil dihapus'); window.location = 'dasbor.php';</script>";
}
}
?>
 Buat skrip ubah.php

<?php
include "../config/connection.php";
if(isset($_GET['id'])){
$id = $_GET['id'];
$query = "SELECT * FROM t_todos where id = $id";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
}
?>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Ubah data</title>
</head>
<body>
<fieldset>
<legend>Input todo</legend>
<form action="update.php" method="post">
<table>
<tr>
<td>Task</td>
<td>:</td>
<td><input type="text" name="todo" id="todo" value="<?= $row['todo']; ?>"></td>
</tr>
<tr>
<td>Dimulai</td>
<td>:</td>
<td><input type="date" name="startdate" id="startdate" value="<?= $row['start_date'];
?>"></td>
</tr>
<tr>
<td>Selesai</td>
<td>:</td>
<td><input type="date" name="enddate" id="enddate" value="<?= $row['end_date'];
?>"></td>
</tr>
<tr>
<td>Complete?</td>
<td></td>
<td><input type="checkbox" name="completed" id="completed"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" value="proses" name="proses"></td>
</tr>
<input type="text" name="id" id="id" value="<?= $row['id']; ?>">
</table>
</form>
</fieldset>
</body>
</html>

 buat skrip update.php

<?php
include "../config/connection.php";
if(isset($_POST['proses'])){
$id = $_POST['id'];
$todo = $_POST['todo'];
$startdate = $_POST['startdate'];
$enddate = $_POST['enddate'];
$completed = $_POST['completed'];
$completed == null ? $completed = 0 : $completed = 1;
$query = "UPDATE t_todos SET todo = '$todo', start_date = '$startdate', end_date =
'$enddate', completed = '$completed' WHERE id = $id";
$result = mysqli_query($conn, $query);
if($result){
echo "<script>alert('Data berhasil diubah'); window.location = 'dasbor.php';</script>";
}
}
?>

 Setelah membuat skrip dengan lengkap dan benar maka aplikasi sudah bisa untuk dijalankan.
4. PENGUJIAN BLACK BOX

Black box testing adalah proses menguji fungsi perangkat lunak (software) atau aplikasi dari
sudut pandang pengguna, tanpa mengetahui struktur internal atau desain struktur tersebut.
Sederhananya, black box testing hanya melakukan penilaian dari apakah sistem bisa
memberikan output atau hasil sesuai dengan input (informasi atau instruksi yang diterima
sistem). Jika hasilnya sesuai, maka sistem dinyatakan bisa berfungsi dengan baik. Jika sistem gagal
menjalankan prosedur yang diminta, maka dinyatakan butuh perbaikan. Karena itu black box
testing juga disebut dengan behavioral testing, closed-box, atau specification-based testing.

1. Memeriksa spesifikasi dan persyaratan sistem.


2. Memasukkan input yang valid dan apakah proses yang terjadi sudah sesuai. Selain itu
juga menguji input yang tidak valid.
3. Melihat output apakah sesuai dengan yang diharapkan atau tidak.
4. Membuat kasus uji dengan input yang dipilih.
5. Kasus uji dijalankan.
6. Membandingkan output yang dihasilkan.
7. Mencatat dan memperbaiki.

5. DOKUMENTASI

Anda mungkin juga menyukai