IF2036 Software Engineering

Slides:



Advertisements
Presentasi serupa
Ian Sommerville Software Engineering
Advertisements

Web Design Muhamad Akbar. Ukuran Halaman Fixed page widths – Flexible page widths –Mail.yahoo.com.
BAB 3 – Pandangan Tingkat Paling Atas Fungsi dan Interkoneksi Komputer
2. Introduction to Algorithm and Programming
Neilsen Menggunakan urutan dialog yang simple dan alami
RENCANA PENGEMBANGAN PERANGKAT LUNAK (RPPL)
1 Pertemuan 1 Introduction Matakuliah: sistem Operasi Tahun: 2010.
1 Flowchart Techniques Is: A graphical representation of the sequence of operations in an information system program The plan to be followed when the program.
Activity Diagram Shinta P.. For Bussiness Modeling, Activity diagrams describe the activities of a class. It is used for the following purposes: (Bennet.
WaterfallPrototyping RAD Incremental Prototyping Pendekatan SDLC.
BLACK BOX TESTING.
Interesting Interfaces Where We Are At Where We Are Going Contextual Inquiry – Ethnographic Techniques to collect raw data Prototype – Application.
Testing Implementasi Sistem Oleh :Rifiana Arief, SKom, MMSI
Rekayasa Perangkat Lunak (Software Engineering)
Menulis Kolom  Kolom adalah opini atau artikel. Tidak seperti editorial, kolom memiliki byline.  Kolom Biasanya ditulis reguler. Biasanya mingguan atau.
1 Pertemuan 12 Pengkodean & Implementasi Matakuliah: T0234 / Sistem Informasi Geografis Tahun: 2005 Versi: 01/revisi 1.
1 Pertemuan 2 Object Oriented Understanding Matakuliah: M0446/Analisa dan Perancangan Sistem Informasi Tahun: 2005 Versi: 0/0.
Phase III Rapid Prototyping and Demonstration Prototype
1 Pertemuan 21 Function Matakuliah: M0086/Analisis dan Perancangan Sistem Informasi Tahun: 2005 Versi: 5.
1 Pertemuan 22 Analisis Studi Kasus 2 Matakuliah: H0204/ Rekayasa Sistem Komputer Tahun: 2005 Versi: v0 / Revisi 1.
Summary Materi RPL Mid Semester
PERTEMUAN KE-6 UNIFIED MODELLING LANGUAGE (UML) (Part 2)
1 Pertemuan 11 Function dari System Matakuliah: M0446/Analisa dan Perancangan Sistem Informasi Tahun: 2005 Versi: 0/0.
1 INTRODUCTION Pertemuan 1 s.d 2 Matakuliah: A0554/Analisa dan Perancangan Sistem Informasi Akuntansi Tahun: 2006.
Chapter 10 – The Design of Feedback Control Systems PID Compensation Networks.
-Do you have a close friend? Does she/he have a problem? -What do you say when she/he tells her/his problem? - Did you ever come to your friend house?
PERFORMANCE-BASED ASSESMENT DEFINITION CHARACTERISTIC S DESIGNING PERFORMANCE ASSESSMENT END TERM OF PERFORMANCE ASSESSMENT.
Interface Design. Elemen desain antarmuka untuk perangkat lunak memberitahu bagaimana informasi mengalir ke dalam dan keluar dari sistem dan bagaimana.
Pendekatan & Kategori Iklan Pertemuan 2
Software Engineering Process
Konsep Pemrograman 3
Pert. 16. Menyimak lingkungan IS/IT saat ini
IF2036 Software Engineering
Notasi Object Oriented System
Membangun Web Site“Cantik”
Rekayasa Perangkat Lunak
User (Pengguna) User = a person who use an IRS
Testing dan Implementasi
Model Konvensional.
REKAYASA PERANGKAT LUNAK (IF 1483)
Pertemuan #3 Data Modeling Using the Entity-Relationship Model
OOAD – TI S1 Defri Kurniawan UDINUS
Software Engineering Rekayasa Perangkat Lunak
TAHAPAN PEMROGRAMAN Modul-10.
SISTEM INFORMASI ENTERPRISE
Lecture 3 User Interface Design.
Pemrograman Dasar TinyOS Menggunakan nesC
SISTEM INFORMASI ENTERPRISE
Hanya digunakan di lingkungan Universtias
Phase III Rapid Prototyping and Demonstration Prototype
Software Engineering IT Telkom
ANALISIS & DESAIN SISTEM
Rekayasa Perangkat Lunak Part-5
UML- UNIFIED MODELING LANGUAGE
Hanya digunakan di lingkungan Universtias
How to Set Up AT&T on MS Outlook ATT is a multinational company headquartered in Texas. ATT services are used by many people widely across.
How Can I Be A Driver of The Month as I Am Working for Uber?
How to Pitch an Event
Don’t Forget to Avail the Timely Offers with Uber
Suhandi Wiratama. Before I begin this presentation, I want to thank Mr. Abe first. He taught me many things about CorelDRAW. He also guided me when I.
Interface Design.
HughesNet was founded in 1971 and it is headquartered in Germantown, Maryland. It is a provider of satellite-based communications services. Hughesnet.
Interface Design.
 Zoho Mail offers easy options to migrate data from G Suite or Gmail accounts. All s, contacts, and calendar or other important data can be imported.
TIM RPL Program Studi Teknik Informatika
Website: Website Technologies.
Rank Your Ideas The next step is to rank and compare your three high- potential ideas. Rank each one on the three qualities of feasibility, persuasion,
Teknik Informatika S1 Rekayasa Perangkat Lunak Design.
2. Discussion TASK 1. WORK IN PAIRS Ask your partner. Then, in turn your friend asks you A. what kinds of product are there? B. why do people want to.
Transcript presentasi:

IF2036 Software Engineering Interface Design Program Studi Teknik Informatika STEI ITB

Interface Design The interface design elements for software tell how information flows into and out of the system and how it is communicated among the components defined as part of the architecture Elemen-elemen perancagan interface untuk perangkat lunak menjelaskan Bagaimana arus informasi masuk dan keluar dari sistem, dan bagaimana arus informasi tersebut berkomunikasi diantara komponen2 yang didefinisikan sebagai bagian dari arsitek. * SEPA 6th ed, Roger S. Pressman

Interfaces Design Inter-modular interface design driven by data flow between modules closely aligned with component level design External interface design driven by interface between applications driven by interface between software and non-human producers and/or consumers of information Human-computer interface design driven by the communication between human and machine Ini adalah fokus dari Interfaces Design  3 area Pembahasan berikutnya: khusus yg ketiga  HCI  layar, panel, dll Masalah: antarmuka yg kurang baik seringkali menyebabkan user frustasi Perbandingan: Dlm pembangunan rumah  pintu, jendela, jaringan listrik, telpon, dll * SEPA 6th ed, Roger S. Pressman

User Interface Design Three golden rules – Theo Mandel Place user in control “What I really would like is a system that reads my mind. It knows what I want to do before I need to do it and makes it very easy for me to get it done. That’s all, just that.” Reduce the user’s memory load The more a user has to remember, the more error-prone interaction with the system will be The system should ‘remember’ Make the interface consistent Tiga aturan emas  Theo Apa yang saya inginkan adalah sebuah sistem yang membaca pikiran saya. Dia tahu apa yang ingin saya lakukan sebelum saya butuhkan dan membuat mudah untuk saya untuk melakukannya Mengurangi muatan memori user,

Place User in Control Define interaction in such a way that the user is not forced into performing unnecessary or undesired actions Provide for flexible interaction (users have varying preferences) Allow user interaction to be interruptible and reversible Streamline interaction as skill level increases and allow customization of interaction Hide technical internals from the casual user Design for direct interaction with objects that appear on the screen 3 Golden Rules  Theo Mandel Place user in control Add 1) spell check sambil edit Add 2) keyboard, mouse, suara, dll Add 3) bisa melakukan hal lain dulu tanpa membatalkan seq. aksi; bisa cancel Add 4) makro untuk user yg sudah pintar Add 5) user tidak perlu tahu jenis OS yg digunakan, file system, dll Add 6) WYSIWYG  user merasa memegang kontrol Reduce user memory load Make interface consistent * SEPA 6th ed, Roger S. Pressman

Reduce User Memory Load Reduce demands on user's short-term memory (exp. providing visual cues) Establish meaningful defaults (“reset” option should be available) Define intuitive short-cuts (easy to remember) Visual layout of user interface should be based on a familiar real world metaphor Disclose information in a progressive fashion Add 1) user tidak perlu mengingat  beri ikon visual Add 2) ada default; user bisa mengubah; user bisa reset ke default Add 3) ctrl-P untuk print, dll  konsisten Add 4) sesuaikan dg problem domain; mis. Informasi buku bank, layout mesin, dll Add 5) hirarki  pilih level abstrak (mis. Underline), lalu muncul options lain * SEPA 6th ed, Roger S. Pressman

Make Interface Consistent Allow user to put the current task into a meaningful context Maintain consistency across a family of applications If past interaction models have created user expectations, do not make changes unless there is a good reason to do so User tahu saat ini sedang apa, sebelumnya dari seq yg mana  ikon visual Kesamaan antar aplikasi yg sekeluarga  MS. Office Kebiasaan user yg jgn diubah kecuali sangat perlu * SEPA 6th ed, Roger S. Pressman

User Interface Analysis and Design The models The human engineer establishes a user model The software engineer creates a design model The end-user develops a mental image or user’s mental model (system perception) The implementers create an implementation model The process User, task, and environment analysis and modeling Interface design Interface construction Interface validation * SEPA 6th ed, Roger S. Pressman

The Models User model Design model User's model or system perception end user profiles: Novice Knowledgeable, intermittent user, Knowledgeable, frequent users Design model incorporates data, architectural, interface, and procedural representations of the software User's model or system perception user's mental image of system Implementation model look and feel of the interface and supporting media Ini adalah 4 model yang akan terkait erat (dibutuhkan) saat interface design * SEPA 6th ed, Roger S. Pressman

The Process - User Analysis Understand who the end-users are What is likely to motivate and please them How they can be grouped into different user classes or profiles What their mental models of the system are How the user interface must be characterized to meet their needs

The Process - Task Analysis and Modeling Software engineer studies tasks human users must complete to accomplish their goal in the real world without the computer and map these into a similar set of tasks that are to be implemented in the context of the user interface Software engineer studies existing specification for computer-based solution and derives a set of tasks that will accommodate the user model, design model, and system perception Software engineer may devise an object-oriented approach by observing the objects and actions the user makes use of in the real world and model the interface objects after their real world counterparts  Know the user, know the tasks Tentukan task secara iteratif Add 1) memetakan task manual  computer based system  akan diimplementasikan antarmuka untuk setiap task Add 2) jika spec sudah ada, task user dapat turunkan dari spec Add 3) boleh OO * SEPA 6th ed, Roger S. Pressman

The Process - Analysis of Display Content Type of content Character-based reports Graphical displays Specialized information Source of content Generated by components Acquired from data store Transmitted from systems external * SEPA 6th ed, Roger S. Pressman

The Process - Interface Design Activities Establish the goals and intentions of each task Map each goal/intention to a sequence of specific actions Specify the action sequence of tasks and subtasks (user scenario) Indicate the state of the system at the time the user scenario is performed Define control mechanisms  object and action Show how control mechanisms affect the state of the system Indicate how the user interprets the state of the system from information provided through the interface Ini adalah pendekatan yg dapat digunakan untuk langkah awal interface design [NOR86] Norman Selanjutnya, dilakukan: Mendefinisikan object dan aksi  gramatical parse dari dari user scenario Kata benda : objec Kata kerja : aksi Sketsa layout layarnya. Object dan aksi  mekanisme kontrol untuk user * SEPA 6th ed, Roger S. Pressman

Interface Design Issues System response time time between the point at which user initiates some control action and the time when the system responds User help facilities integrated, context sensitive help versus add-on help Error information handling messages should be non-judgmental, describe problem precisely, and suggest valid solutions Command labeling based on user vocabulary, simple grammar, and have consistent rules for abbreviation Response time: 1. length dan 2. variability  deviasi dg respon rata2 Help: Integrated vs add-on Help untuk semua fungsi atau beberapa saja Bgmn cara user mencari help Bgmn help direpresentasikan  separate window, printed document, 1 atau 2 line suggestion pada layar aplikasi yg sama Bgmn untuk kembali ke aplikasi utama (normal mode) Bgmn help distrukturisasi ?  flat, hirarki ? Error message: Gunakan bhs yg dimengerti user Mengandung advice Mengandung keterangan efek negatif yg mungkin timbul  user bisa memeriksa Gunakan suara atau warna  jgn sama dg pesan biasa Jangan menyalahkan user Command: Apakah setiap item menu ada command-nya Bgmn format command-nya Seberapa mudah mengingat dan mempelajarinya Bisa dikustomisasi oleh user ? * SEPA 6th ed, Roger S. Pressman

User Interface Evaluation Cycle Preliminary design Build first interface prototype User evaluates interface Evaluation studied by designer Design modifications made Build next prototype If interface is not complete then go to step 3 * SEPA 6th ed, Roger S. Pressman

User Interface Design Evaluation Criteria Length and complexity of written interface specification provide an indication of amount of learning required by system users Number of user tasks and the average number of actions per task provide an indication of interaction time and overall system efficiency Number of tasks, actions, and system states in the design model provide an indication of the memory load required of system users Interface style, help facilities, and error handling protocols provide a general indication of system complexity and the degree of acceptance by the users * SEPA 6th ed, Roger S. Pressman

Data Design Data Design Principles Systematic analysis principles applied to function and behavior should also be applied to data. All data structures and the operations to be performed on each should be identified. Data dictionary should be established and used to define both data and program design. Low level design processes should be deferred until late in the design process. Representations of data structure should be known only to those modules that must make direct use of the data contained within in the data structure. A library of useful data structures and operations should be developed. A software design and its implementation language should support the specification and realization of abstract data types.

Component Level Design The purpose of component level design is to translate the design model into operational software. Component level design occurs after the data, architectural, and interface designs are established. Component-level design represents the software in a way that allows the designer to review it for correctness and consistency, before it is built. The work product produced is the procedural design for each software component, represented using graphical, tabular, or text-based notation

Procedural Design Notation Flowcharts arrows for flow of control, diamonds for decisions, rectangles for processes Box diagrams also known as Nassi-Scheidnerman charts Decision table subsets of system conditions and actions are associated with each other to define the rules for processing inputs and events Program Design Language PDL - structured English or pseudocode used to describe processing details

Design Notation Assessment Criteria Modularity notation supports development of modular software Overall simplicity easy to learn, easy to use, easy to write Ease of editing easy to modify design representation when changes are necessary Machine readability notation can be input directly into a computer-based development system Maintainability maintenance of the configuration

Design Notation Assessment Criteria (2) Structure enforcement enforces the use of structured programming constructs Automatic processing allows the designer to verify the correctness and quality of the design Data representation ability to represent local and global data directly Logic verification automatic logic verification improves testing adequacy Easily converted to program source code makes code generation quicker