Program pendidikan untuk spesifikasi teknis

Manfaat: mendapatkan pengetahuan tentang apa itu TK dan bagaimana mengompilasinya. Perkaya kosakata Anda dengan kata-kata: model konseptual, aliran data, kartu pikiran, aliran pengguna. gunakan case, wireframes, ER-model, client-server, API.

Untuk siapa: pengembang pemula dan mereka yang ingin dipahami (oleh pelanggan, startup, dan manajer).

Waktu membaca: 7 menit.

Titik awal - persyaratan

Saya ingin kue, lalu es krim!
Vovka di Far Far Away Kingdom

Ada kesalahpahaman umum bahwa itu cukup untuk mengatakan: "Anda memerlukan aplikasi untuk museum / kucing / tanaman" dan itu akan segera menjadi jelas apa yang Anda butuhkan.

Sayangnya, ini tidak sesederhana itu. Bayangkan Anda perlu membangun rumah. Anda pergi ke pembangun, dan dia mulai bekerja. Anda tidak memberinya gambar atau plot, Anda bahkan tidak mengatakan apa warna pagar seharusnya. Tetapi mereka memberikan segalanya tentang segalanya selama enam bulan dan sejumlah besar uang.

Spoiler
.

Sangat benar? Anggaran telah dihabiskan dan batas waktu telah berakhir.

Untuk mencegah hal ini terjadi, semua persyaratan untuk produk diperbaiki, inilah yang dimulai dengan pengembangan apa pun.

Jenis persyaratan yang mudah - TK

Uleni dan cincang!
Vovka di Far Far Away Kingdom

Baik. Ada beberapa persyaratan. Sekarang para pengembang pasti akan mengerti Anda. Tapi inilah jebakan # 1: manusia belum belajar membaca pikiran. Oleh karena itu, perlu dalam beberapa bentuk untuk mengirimkan informasi dan cara terbaik untuk ini adalah Ketentuan Referensi.

Ini juga disebut TK, SRS, PRD - semua ini adalah nama-nama dokumen di mana persyaratan produk ditetapkan dalam bentuk yang benar.

Pitfall No. 2: memori seseorang tidak terbatas, selalu lebih baik untuk memiliki satu tempat di mana semua keinginan dan persyaratan Anda diperbaiki (bukan korespondensi dalam telegram atau panggilan telepon). Oleh karena itu, TK adalah dokumen teks tercetak dengan aplikasi diagram dan infografis, tidak ditulis dengan tangan atau difoto. Terbaik dalam format .PDF atau Google Documents.

Resep untuk TK yang kompeten


Kerangka acuan untuk pengembang adalah semacam resep untuk produk yang sukses. Produk yang sukses adalah produk yang mudah dirawat, dapat dikembangkan dan diubah, tidak berantakan ketika pengembang berubah, dan menghasilkan keuntungan dalam bentuk apa pun. Apakah Anda ingin proyek Anda selesai? Baik. Tulis resep yang bagus untuk ini. Bahan-bahan klasik (sesuai dengan standar internasional IEEE-830) adalah:

  • Model konseptual
  • Kartu fungsional
  • Jalur pengguna
  • Antarmuka pengguna
  • Antarmuka perangkat lunak
  • Persyaratan non-fungsional

2 poin terakhir adalah spesifik, saya menyarankan mereka untuk memperhatikan pembaca yang dekat dengan pengembangan.

Di bawah ini saya akan menganalisis secara rinci setiap item. Bagi mereka yang tidak ingin mengerti secara detail, saya meninggalkan tautan ke standar internasional dengan templat tugas teknis: tautan ke dokumen.

gambar

Model konseptual


Item ini termasuk deskripsi singkat tentang produk, itu mencerminkan tujuan proyek dan fitur-fiturnya yang khas.

Misalnya: "Aplikasi kencan di mana Anda dapat menonton video pendek di profil pengguna dan mengobrol." Menyenangkan juga untuk mengatakan beberapa kata tentang audiens produk, sehingga tim proyek akan dapat memahami fitur-fiturnya dan memberikan Anda beberapa tips yang berguna. Ceritakan tentang usia, karakter, dan lokasi teritorialnya, beberapa fitur yang harus memengaruhi proyek.

Misalnya: "Ini adalah anak-anak muda yang pergi ke luar negeri untuk bersantai dan tertarik pada komunikasi di luar hambatan bahasa, yang suka mengambil foto dan video."

Perlu berbicara tentang jenis pengguna dan perbedaan utama mereka.

Contohnya:“Aplikasi harus memiliki pengguna reguler dan moderator yang menerima keluhan dari pengguna tentang konten atau profil. Moderator dapat melihat obrolan pengguna biasa setelah keluhan dan memblokir akun yang melanggar aturan dalam layanan. "

Dan akhirnya, beri tahu kami tentang komponen produk Anda.

Misalnya: panel admin yang digunakan oleh moderator; Aplikasi seluler yang digunakan pengguna untuk mendaftar, menambahkan konten, berpartisipasi dalam obrolan, dll.

Aerobatik akan dilakukan oleh apa yang disebut aliran data atau diagram konteks, yang akan mencerminkan bagaimana pengguna berinteraksi dengan produk, komponennya dan satu sama lain.

Kartu fungsional


Peta fungsional menampilkan konsep umum proyek dengan tingkat perincian yang diperlukan untuk menilai ruang lingkup pekerjaan dan memprioritaskannya.Dalam format tradisional, peta semacam itu menyerupai peta situs. Tetapi paling mudah untuk menampilkannya dalam bentuk kartu pikiran (kartu pikiran, kartu intelijen). Seringkali, manajer menggambar kata-kata pada rapat di papan tulis atau selembar kertas dan koneksi di antara mereka, dan karenanya, ini adalah peta pikiran. Ini dapat dilakukan dengan nyaman dalam layanan gratis (coggle, draw.io dan mindmeister) atau cukup di Office Word.

Sangat penting untuk mencerminkan semua fitur pengguna dalam peta fungsional. Dalam perkiraan pertama, ini hanyalah serangkaian fitur produk.

Contohnya: “Aplikasi harus mencakup pendaftaran melalui surat, membuat dan mengisi data profil, kemampuan untuk mengunggah dan mengedit foto dan video, daftar akun pengguna lain dengan berbagai jenis filter, obrolan teks, dan menghubungi dukungan.

gambar

Jalur pengguna


Yang disebut aliran pengguna, atau jalur pengguna, adalah daftar tindakan atau layar berurutan yang dapat dilalui pengguna saat berinteraksi dengan produk. Jelaskan bagaimana pengguna akan berinteraksi dengan produk dalam presentasi Anda. Sangat mudah, ini juga bisa dilakukan dengan peta pikiran atau hanya daftar tindakan.

Misalnya: “Seorang pengguna masuk untuk bertemu teman sebaya. Dia mengisi profilnya dengan data dan mengunggah foto dan video. Kemudian pengguna memasukkan umpan dan memfilternya sesuai dengan beberapa kriteria. Akibatnya, ia menerima daftar profil yang relevan, bisa melihatnya dan menulis ke pengguna lain di chat.

Jalur pengguna adalah algoritma umum untuk bekerja dengan produk. Ada juga kasus penggunaan (use case) - ini adalah detail dari aliran pengguna. Dalam hal aplikasi kencan seluler, Anda membuat jalur pengguna melalui layar, dan kemudian menjelaskan apa yang dapat dilakukan pengguna di setiap layar.

Misalnya: pada layar registrasi, pengguna dapat:
pergi ke layar otorisasi , mendaftar melalui jejaring sosial (Facebook, Twitter), masukkan email, kata sandi, lalu ulangi dan konfirmasi pendaftaran dalam email.

gambar

gambar

Antarmuka pengguna


Produk seharusnya tidak hanya berfungsi, tetapi juga terlihat bagus. Mari kita beralih sedikit dari pokok masalah aplikasi, agar tidak memaksa Anda untuk mengunduhnya untuk ditinjau. Lebih baik melihat situs lucu:


Kami melihat contoh desain yang buruk, sekarang menghapus darah dari mata dan beralih ke diskusi tentang antarmuka. Pada bagian tugas teknis ini, ada baiknya melampirkan wasit - contoh bagaimana Anda ingin melihat produk Anda. Ini bisa berupa analog dari perkembangan serupa atau hanya contoh yang desainnya Anda sukai.

Jelaskan secara umum bagaimana Anda ingin melihat produk Anda, warna apa yang harus dimiliki, elemen apa yang digunakan, animasi apa yang Anda inginkan, dll. Jika Anda memiliki identitas perusahaan atau buku merek, bagus sekali, rujuk ke mereka.

Desainer akan berterima kasih banyak jika Anda menentukan gaya desain antarmuka, seperti desain datar atau desain material.

Aerobatik akan menambahkan wireframes (wireframes) - prototipe antarmuka produk dalam bentuk perkiraan sirkuit.

gambar

Antarmuka perangkat lunak


Bagian ini untuk para profesional. Jika Anda yakin dengan kemampuan Anda, maka lanjutkan membaca. Tugas teknis terbaik juga menjelaskan arsitektur produk, yaitu komponen perangkat lunak apa yang terdiri darinya. Dalam hal aplikasi kencan server-klien, layanan ini dibagi menjadi bagian dari server yang menyimpan data dan memprosesnya, melakukan beberapa operasi logis dan bagian dari klien yang menampilkan data.

Server didekomposisi menjadi modul: database, otentikasi, obrolan, dll. Klien berkomunikasi dengan server melalui API (antarmuka transfer data), Anda harus menunjukkan jenisnya (REST, WEB, RPC, dll.) Dan menjelaskan metode, respons, dan penanganan kesalahan.

Data biasanya disimpan dalam database dalam bentuk struktur khusus, paling sering tabel (untuk database relasional) dan struktur json (untuk non-relasional). Pengembang akan berterima kasih banyak jika dalam tugas teknis Anda menentukan entitas basis data (model ER) dan menjelaskan bidang yang tersimpan, menunjukkan jenis data mereka (string, int, dll.), Kunci (primer, asing), wajib (wajib) ) dan nullable.

gambar

Persyaratan non-fungsional


Ini adalah persyaratan produk umum. Mereka dapat dibagi menjadi persyaratan teknis, persyaratan keamanan dan persyaratan kinerja. Persyaratan teknis menunjukkan keinginan untuk perangkat dan lingkungan operasi, misalnya, untuk aplikasi kencan, ini adalah Android 7.0+ dan JDK 8+, iOS 11.0+ dan Swift 4.2.

Dalam persyaratan keamanan, Anda dapat menentukan bahwa transfer data dalam obrolan harus dilakukan menggunakan enkripsi SHA-1 dan saat mendaftar, kompleksitas kata sandi minimal harus 8 bit. untuk membaca pesan obrolan tidak lebih dari 1 detik dan aplikasi tersebut menyimpan cache secara parsial dan dapat bekerja offline untuk waktu yang terbatas.

Nasihat


  1. PDF, . , .
  2. , , , .
  3. -, , .
  4. , , .
  5. . , .
  6. Bersiaplah untuk menghabiskan lebih dari beberapa hari atau berkonsultasi dengan profesional untuk menulis makalah. Kerangka acuan yang kompeten akan menyelamatkan Anda dari diskusi panjang detail dengan pengembang dan menguraikan kriteria yang jelas untuk pengiriman proyek. Sebagai contoh, TOR lengkap sesuai dengan standar IEEE-830, melekat pada kontrak pengembangan, adalah argumen di pengadilan dalam kasus kegagalan untuk memenuhi persyaratan.

All Articles