Kejuruteraan Perisian - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

Kejuruteraan Perisian

Description:

REKABENTUK SISTEM (3) ... Antaramuka pengguna boleh menggabungkan pelbagai variasi teknologi spt agen ... Sistem mungkin terdiri dari beberapa siri aplikasi yg ... – PowerPoint PPT presentation

Number of Views:128
Avg rating:3.0/5.0
Slides: 28
Provided by: DJI4
Category:

less

Transcript and Presenter's Notes

Title: Kejuruteraan Perisian


1
Kejuruteraan Perisian
  • REKABENTUK SISTEM (3)
  • Isu-isu semasa rekabentuk sistem
  • Rekabentuk perisian masa-nyata (real-time system)

2
Isu-isu rekabentuk sistem
  • Kemodularan (modularity) dan peringkat abstrakan
  • Rekabentuk secara kerjasama (collaborative)
  • Rekabentuk antaramuka pengguna
  • metaphors, mental model, navigation rules, look
    and feel
  • cultural issues
  • user preferences
  • Keserempakan (concurrency)
  • Corak dan gunasemula rekabentuk

3
Kemodularan (modularity) dan peringkat abstrakan
  • Rekabentuk modul mempunyai definisi yg jelas
    tentang data input dan output serta tujuan modul
    dinyatakan.
  • Pemeriksaan modul senang dibezakan supaya ianya
    melaksanakan tugas yang diberikan.
  • Modul diorganisasi kepada hirarki, yang merupakan
    hasil penghuraian atau abstrakan (membolehkan
    pemeriksaan sistem pada satu peringkat pada satu
    masa tertentu)

4
Kemodularan (modularity) dan peringkat abstrakan
(samb)
  • Contoh pengabstrakan
  • Modul yg menyusun elemen-elemen dalam senarai L.
  • Abstrak awal ialah
  • Menyusun L dalam susunan menaik
  • Peringkat abstrak seterusnya
  • Dalam bentuk algoritma tertentu
  • Do while I is between 1 and (length of I)-1
  • Set Low to index of smallest value in L(I),
    ,L(Length L)
  • Interchange L(I) and L(Low)
  • EndDo
  • Memudahkan pembangun fokus pada maklumat yg
    diperlukan sahaja.

5
Kemodularan (modularity) dan peringkat abstrakan
(samb)
  • Peringkat abstrakan
  • Komponen pada satu peringkat menerangkan lebih
    mendalam komponen pada peringkat atasnya (lebih
    abstrak)
  • Membantu memahami masalah yg diutarakan oleh
    sistem dan penyelesaian yg dicadangkan oleh
    rekabentuk.
  • Menggalakkan information hiding dimana setiap
    komponen menyorok pemilihan rekabentuk daripada
    komponen lainnya.
  • Kemodularan membenarkan komponen yg berlainan
    direkabentuk secara berasingan.

6
Rekabentuk secara kerjasama (collaborative)
  • Dalam kebanyakan projek, rekabentuk sistem tidak
    dihasilkan oleh individu.
  • Kebiasaannya, pasukan kerja bekerjasama untuk
    menghasilkan rekabentuk dengan menugaskan
    bahagian yg berlainan kepada individu yg berbeza.
  • Timbul isu seperti
  • Siapa yg layak untuk merekabentuk aspek sistem
  • Dokumentasi rekabentuk yg difahami oleh semua
  • Kordinasi rekabentuk komponen yang sama
  • Punca-punca kegagalan rekabentuk

7
Rekabentuk secara kerjasama (samb)
  • Masalah utama perbezaan individu didalam
    pengalaman, pemahaman dan kesukaan/rujukan
    (kelakuan kumpulan)
  • Punca-punca kegagalan rekabentuk
  • Kurang pengetahuan (skema dan proses
    rekabentuk,dll)
  • Had kognitif (kekangan, simulasi mental,
    pengembangan dan penggabungan penyelesaian di
    dalam rekabentuk)

8
Rekabentuk secara kerjasama (samb)
  • Cara mengurangkan masalah
  • Bina persefahaman antara kumpulan kerja
  • Guna peralatan groupware untuk memberi pendapat
    serta pemilihan idea (kerahsiaan individu)
  • Maklumbalas dalam bentuk nota, prototaip, grafik
    untuk menggalakkan komunikasi
  • Guna piawai rekabentuk yg disepakati bersama
    (interface layout design)
  • Bina produk yang mengambilkira kelebihan individu
    (kepakaran bidang)

9
Rekabentuk antaramuka pengguna
  • Antaramuka pengguna merupakan rekabentuk yg
    mencabar kerana setiap individu mempunyai gaya yg
    tersendiri bagi maklumbalas dan pemahaman kerja
    (guna windows atau arahan)
  • Isu-isu rekabentuk antaramuka
  • Metaphors- asas tema, imej dan konsep yg boleh
    dikenali dan dipelajari
  • Mental model- organisasi dan perwakilan data,
    fungsi, tugas dan peranan

10
Rekabentuk antaramuka pengguna (samb)
  • Isu-isu rekabentuk antaramuka (samb)
  • Navigation rules- pemindahan antara data, fungsi,
    aktiviti dan peranan
  • Look- sifat paparan sistem yg mengandungi
    maklumat untuk pengguna
  • Feel- teknik interaksi yg menyediakan tarikan
    pengalaman untuk pengguna
  • Matlamat antaramuka membantu pengguna
    memperolehi capaian cepat kepada kandungan sistem
    tanpa hilang pemahaman semasa mereka menggunakan
    sistem.

11
Rekabentuk antaramuka pengguna (samb)
  • Antaramuka pengguna boleh menggabungkan pelbagai
    variasi teknologi spt agen (bots), hypertext,
    bunyi, 3D, video dan alam maya.
  • Antaramuka yg efektif mengambilkira 2 isu utama
  • Isu budaya (cultural)
  • perbezaan dari segi nilai kepercayaan, warga,
    jantina, jawatan, umur dan korporat.

12
Rekabentuk antaramuka pengguna (samb)
  • Isu budaya (samb)
  • Untuk sistem multi-budaya, perlu hapuskan rujukan
    budaya spesifik (biases) di dalam antaramuka
    (manual, mesej, label, ikon dll)
  • Guna antaramuka bebas biases untuk ubahsuai
    kepada budaya yg menggunakan perisian.
  • Isu rujukan pengguna (preferences)
  • Bergantung kepada jenis individu atau ahli
    kumpulan pekerja (isu kesukaan pengguna).
  • Penggunaan terminologi, kepadatan maklumat dan
    jenis aksara (bentuk) pada antaramuka.

13
Corak dan gunasemula rekabentuk
  • Kebanyakan sistem dibina menyerupai beberapa
    aspek sistem sebelumnya.
  • Sistem mungkin terdiri dari beberapa siri
    aplikasi yg mempunyai fungsian yg hampir serupa
    tetapi digunakan pada persekitaran yg berlainan
    (cth sistem kalendar)
  • Corak rekabentuk (design pattern) mengenalpasti
    persamaan struktur rekabentuk sistem yg mungkin
    berguna untuk digunasemula bagi sistem akan
    datang.

14
Corak dan gunasemula rekabentuk (samb)
  • Corak rekabentuk boleh terdiri daripada kod
    aturcara, kelas objek, ujian dan dokumentasi.
  • Cabaran ialah untuk menghasilkan corak rekabentuk
    yg tidak memerlukan pengubahsuaian langsung.
  • Pembangun perlu membina corak rekabentuk yang
    tidak terikat kepada mana-mana spesifik sistem
    dengan mengambilkira keperluan sistem sekarang
    dan pada masa hadapan.

15
Keserentakan (concurrency)
  • Kebanyakan sistem memerlukan kepada beberapa
    tindakan/aksi secara serentak (tidak berjujukan).
  • Cth sistem kawalan air boleh terdiri dari banyak
    sensor yg melaporkan sifat seperti suhu,
    kelajuan, keasidan dan komposisi kimia.
    Rekabentuk sistem mesti menyertakan laporan
    sensor secara nyata apabila sifat-sifat air
    tersebut berubah.

16
Keserentakan (samb)
  • Sistem masa-nyata (real-time)
  • Sistem yang membuat pemerhatian dan mengawal
    persekitarannya.
  • Biasanya digabungkan dengan peranti perkakasan
  • Sensors- mengumpul data daripada persekitaran
    sistem
  • Actuators- menukar persekitaran sistem
  • Masa adalah kritikal. Sistem masa nyata mesti
    memberi maklumbalas di dalam tempoh yg dinyatakan

17
Keserentakan (samb)
  • Sistem masa-nyata ialah perisian sistem dimana
    pengfungsian sistem yg betul bergantung kepada
    keputusan yg dihasilkan oleh sistem dan pada masa
    hasil keputusan tersebut dikeluarkan.
  • Sistem ini biasanya menghasilkan tindakbalas
    dalam tempoh yang spesifik
  • Periodic stimuli. Stimuli which occur at
    predictable time intervals (in seconds)
  • Aperiodic stimuli. Stimuli which occur at
    unpredictable times (unexpected power failure)

18
Keserentakan (samb)
Model sistem masa-nyata
19
Keserentakan (samb)
  • Senibina sistem masa-nyata
  • Senibina sistem mesti membenarkan pertukaran
    kawalan yg pantas antara pengendali stimulus yg
    berubah mengikut masa.
  • Masalah utama memastikan kekonsistenan data yg
    dikongsi antara komponen yg dijalankan pada masa
    yang sama (concurrent)
  • Cara mengatasi sistem biasanya direkabentuk
    sebagai proses-proses yg bekerjasama dengan
    kawalan sistem yg mengawal kesemua proses
    tersebut.

20
Keserentakan (samb)
Sensor/actuator processes
21
Keserentakan (samb)
  • Synchronization merupakan satu kaedah bagi
    membenarkan dua proses/ aktiviti berjalan
    serentak tanpa gangguan antara satu sama lain.
  • Mutual exclusion ialah satu cara synchronizaton
    dimana ia memastikan apabila satu proses sedang
    mencapai elemen data, tiada proses lain dapat
    mengubah elemen data tersebut (data locked)

22
Sistem masa-nyata
  • Monitoring and control systems
  • Important class of real-time systems
  • Continuously check sensors and take actions
    depending on sensor values
  • Monitoring systems examine sensors and report
    their results
  • Control systems take sensor values and control
    hardware actuators

23
Sistem masa-nyata (samb)
  • Burglar alarm system
  • A system is required to monitor sensors on doors
    and windows to detect the presence of intruders
    in a building
  • When a sensor indicates a break-in, the system
    switches on lights around the area and calls
    police automatically
  • The system should include provision for operation
    without a main power supply

24
Sistem masa-nyata (samb)
  • Sensors
  • Movement detectors, window sensors, door sensors.
  • Voltage drop sensor
  • Actions
  • When an intruder is detected, police are called
    automatically.
  • Lights are switched on in rooms with active
    sensors.
  • An audible alarm is switched on.
  • The system switches automatically to backup power
    when a voltage drop is detected.

25
Sistem masa-nyata (samb)
  • Real-time programming
  • Hard-real time systems may have to programmed in
    assembly language to ensure that deadlines are
    met
  • Languages such as C allow efficient programs to
    be written but do not have constructs to support
    concurrency or shared resource management
  • Ada as a language designed to support real-time
    systems design so includes a general purpose
    concurrency mechanism

26
Sistem masa-nyata (samb)
  • Java supports lightweight concurrency (threads
    and synchonized methods) and can be used for some
    soft real-time systems
  • Java 2.0 is not suitable for hard RT programming
    or programming where precise control of timing is
    required
  • Not possible to specify thread execution time
  • Uncontrollable garbage collection
  • Not possible to discover queue sizes for shared
    resources
  • Not possible to do space or timing analysis

27
Kuliah minggu depan
  • Rekabentuk antaramuka pengguna
  • (Keperluan Fasa 3 Projek Berkumpulan)
Write a Comment
User Comments (0)
About PowerShow.com