A. What Is Top-Down Design?

Similar documents
Kalkulus Fungsi Dua Peubah atau Lebih

SPAM FILTERING USING BAYESIAN TECHNIQUE BASED ON INDEPENDENT FEATURE SELECTION MASURAH BINTI MOHAMAD

LIGHTNING AS A NEW RENEWABLE ENERGY SOURCE SARAVANA KUMAR A/L ARPUTHASAMY UNIVERSITI TEKNOLOGI MALAYSIA

Transaction Processing, Functional Applications & anton@ukdw.ac.id

PROFITABILITY ANALYSIS

PRODUCTIVITY IMPROVEMENT VIA SIMULATION METHOD (MANUFACTURING INDUSTRY) HASBULLAH BIN MAT ISA

JOB AGENT MANAGEMENT SYSTEM LU CHUN LING. A thesis submitted in partial fulfillment of. the requirements for the award of the degree of

INTEGRATING CONSUMER TRUST IN BUILDING AN E-COMMERCE WEBSITE NUR ZAILAN BIN OTHMAN

WEB-BASED PROPERTY MANAGEMENT SYSTEM SAFURA ADEELA BINTI SUKIMAN

Genetic Algorithm to Optimize Routing Problem Modelled As the Travelling Salesman Problem MUHAMMAD AZRUL FAIZ BIN NOR ADZMI

History. COBIT Control Objectives for IT Related Technology

Teori Himpunan. Bagian III

UMP-AUTOMATIC SPORT FACILITIES MANAGEMENT SYSTEM (UMPASFMS) TAN HOOI FONG UNIVERSITI MALAYSIA PAHANG

DEVELOPING AN ISP FOR HOTEL INDUSTRY: A CASE STUDY ON PUTRA PALACE HOTEL

PENCAPAIAN HOSPITAL PERFORMANCE INDICATOR FOR ACCOUNTABILITY (HPIA) No Indikator Standard Julai - Disember 2015

FACTORS AFFECTING ACCOUNTING INFORMATION SYSTEMS SUCCESS IMPLEMENTATION

Customer Relationship Management (CRM)

BISKUT RAYA INVENTORY MANAGEMENT SYSTEM (BRIMS) NURUL AMIRAH BINTI ROSLAN THESIS SUBMITTED IN FULFILLMENT OF THE DEGREE OF COMPUTER SCIENCE

Universiti Kuala Lumpur Kampus Kota MALAYSIAN INSTITUTE OF INFORMATION TECHNOLOGY 1016, Jalan Sultan Ismail Kuala Lumpur

DVD COVERS: A STUDY OF SEMIOTIC. I Putu Agus Tira Andika. Non-regular Program English Department Faculty of Letters and Culture Udayana.

UNIVERSITI PUTRA MALAYSIA CLUSTERING ALGORITHM FOR MARKET-BASKET ANALYSIS: THE UNDERLYING CONCEPT OF DATA MINING TECHNOLOGY

EXPERIMENTAL ANALYSIS OF PASSIVE BANDWIDTH ESTIMATION TOOL FOR MULTIPLE HOP WIRELESS NETWORKS NURUL AMIRAH BINTI ABDULLAH

KRITERIA BORANG NYATA CUKAI PENDAPATAN (BNCP) TIDAK LENGKAP CRITERIA ON INCOMPLETE INCOME TAX RETURN FORM (ITRF) PEMBERITAHUAN

PROSES KELOMPOK DAN TIM KERJA

CLIENT SERVER APPLICATION FOR SERVER FARM PERFORMANCE MONITORING ABDIRASHID HASSAN ABDI

A STUDY OF SECURITY LIMITATIONS IN VIRTUAL LOCAL AREA NETWORK IMPLEMENTATION

TEACHING LISTENING WITH RIGHT AND LEFT BRAIN THINKING Titis Sulistyowati ABSTRACT

Active RFID Technology for Asset Tracking and Management System

IMPROVING SERVICE REUSABILITY USING ENTERPRISE SERVICE BUS AND BUSINESS PROCESS EXECUTION LANGUAGE AKO ABUBAKR JAAFAR

RFID BASED SYSTEMATIC STUDENT S ATTENDANCE MANAGEMENT SYSTEM HANISAH BINTI HAMID. Faculty of Electrical and Electronic Engineering

DRIVING SCHOOL STUDENT MANAGEMENT SYSTEM TENGKU DIYANA BINTI TENGKU IBRAHIM

DEVELOP AND DESIGN SHEMATIC DIAGRAM AND MECHANISM ON ONE SEATER DRAG BUGGY MUHAMMAD IBRAHIM B MD NUJID

CLINIC MANAGEMENT SYSTEM: OUTPATIENT MANAGEMENT SYSTEM NURZETY AQTAR AHMAD AZUAN

CHAPTER 2 Kimiz Dalkir 2005 KNOWLEDGE MANAGEMENT CYCLE

USING ENGLISH MOVIE AKEELAH AND THE BEE WITH ENGLISH SUBTITLE TO IMPROVE STUDENTS LISTENING ABILITY

Page 1 of 1. Page 2 of 2 % &! " '! ( ' ( $) * +, - % -. !" # $

SWAY REDUCTION ON GANTRY CRANE SYSTEM USING DELAYED FEEDBACK SIGNAL (DFS) NORASHID BIN IDRUS

A STUDY ON MOTIVATION TO START UP A BUSINESS AMONG CHINESE ENTREPRENEURS

This report is submitted in partial fulfillment of the requirements for the Bachelor of Computer Science (Software Development)

Page 1. The Editor. DBSI Graduate Associate Programme Technology and Operations (T&O) DBSI Management Associate Programme

K-BASED HELPDESK SYSTEM SISTEM MEJA BANTUAN BERASASKAN PENGETAHUAN

The power of knowledge, the role of science

TRANSFORMATIONAL PROJECT MANAGER: AN ENABLER OF AN ENTERPRISE RESOURCE PLANNING (ERP) IMPLEMENTATION SUCCESS JOHN ONYEKACHI OKUGO

MACHINE VISION IMPLEMENTATION IN RAPID PCB PROTOTYPING

DEPARTMENT OF ESTATE -MANAGEMENT FACULTY OF ARCHITECTURE, PLANNING AND SURVEYING UNIVERSITI TEKNOLOGI MARA

STUDENT ATTENDANCE USING RFID SYSTEM

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 6 & 7

Human Ingenuity / How has the global trade influenced a person's and a community's life?

UNIVERSITI PUTRA MALAYSIA DEVELOPMENT OF PROTOTYPE SCHEDULING AND SEQUENCING SOFTWARE FOR JOB SHOP MANUFACTURING IN SHEET METAL FABRICATION

A STUDY ON INVENTORY CONTROL SYSTEM PRACTICE IN KUANTAN FOOD PROCESSING SMALL MEDIUM ENTERPRISE (SME) NURUL AJILAH BINTI MOHAMAD ROSALAN

DECENTRALIZED SOCIAL NETWORK SERVICE USING THE WEB HOSTING SERVER FOR PRIVACY PRESERVATION

COMPARATIVE STUDY OF ERP IMPLEMENTATION METHODOLOGY CASE STUDY: ACCELERATED SAP VS DANTES & HASIBUAN METHODOLOGY

THE FINGERPRINT IDENTIFICATION OF ATTENDANCE ANALYSIS & MANAGEMENT. LEE GUAN HENG (Software Engineering)

Car Rental Management System (CRMS) Lee Chen Yong

IMPLEMENTING CRYPTOGRAPHY IN DATABASE KWAN SHONG HANN

ONLINE RESTAURANT MANAGEMENT SYSTEM (ORMS) HANISAH BINTI MD TAHA

STRESS EFFECT STUDY ON 6 DIFFERENT PATTERN OF TYRES FOR SIZE 175/70 R13 SYAHRIL AZEEM ONG BIN HAJI MALIKI ONG. for the award of the degree of

ii) 9 months Plan - Interest Rate at 0.75% per month The minimum transfer amount is RM1,000 and maximum is subject to Cardmember

IMPLEMENTATION OF VOICE RECOGNITION TECHNOLOGY ON ENGLISH LEARNING APPLICATION BY SELF LEARNING BASED ON ANDROID DEVICE

HOME AUTOMATION USING X-10 TECHNOLOGY MOHAMAD RIDHWAN BIN MOHAMED RODZI UNIVERSITY MALAYSIA PAHANG

HELP DESK MANAGEMENT SYSTEM. LOW SlEW PEI

EMPLOYEE ATTENDANCE SYSTEM KOIK SEOW LIN

BUS MANAGEMENT SYSTEM HASDILAZIRA BT ABD LATIIF

FRAMEWORK FOR EVALUATING PROGRAMMING LANGUAGES FOR COMPUTER GRAPHICS

MODELING AND SIMULATION OF SINGLE PHASE INVERTER WITH PWM USING MATLAB/SIMULINK AZUAN BIN ALIAS

Panduan Program Power Led

HELP DESK SYSTEM IZZAT HAFIFI BIN AHMAD ARIZA

AXUS EMPLOYEE RECRUITMENT SYSTEM SHADIRA BINTI SAAD

PHARMACY MANAGEMENT SYSTEM - MEDICINE SELECTOR FOR MINOR ILLNESS AND STOCK ALERT SYSTEM MUHAMMAD FIRDAUS BIN MOHAMMAD NASER

WIRELESS SCREEN SHARING USING RASPBERRY PI GOH CHEE WEI UNIVERSITI TEKNOLOGI MALAYSIA

How To Protect Yourself Online

SCHOOL ASSET MANAGEMENT SYSTEM NOOR HARTINI BINTI SHAMSUDIN

BODY ASSEMBLY PROCESS IMPROVEMENT FOR AUTOMOTIVE INDUSTRY MOHD NAJMI BIN MOHAMAD

Note on the Application Form for the JICA Training and Dialogue Program

Tool Enhancement For Collaborative Software Engineering Education

CORPORATE DASHBOARD FOR PAYPHONE SERVICE: CASE STUDY OF PERNEC PAYPOINT REQUIREMENT HEZLIN SHADAN

Free traffic count data, free manual traffic exchange. GET FROM GENUINE URL --> CLICK NOW. > Visit Here <<

GARIS PANDUAN PENGENDALIAN DIVIDEN SATU PERINGKAT DALAM LEBIHAN AKTUARI YANG DIPINDAHKAN KEPADA DANA PEMEGANG SAHAM

UNIVERSITI PUTRA MALAYSIA THE NATURE OF HUMAN RESOURCE MANAGEMENT AND ORGANIZATIONAL CHANGE IN MALAYSIAN SMALL AND MEDIUM SIZED ENTERPRISES (SMES)

Cloud Computing. Aditya Wikan Mahastama

the subject called the voice. A sentence that begin with the subject or the

PROGRAM SARJANA MUDA PENGAJIAN SEPARUH MASA PENGAMBILAN FEBRUARI 2016

SMART SHOES CHARGER TAN CHEE CHIAN

DEVELOPMENT OF PCA-BASED FAULT DETECTION SYSTEM BASED ON VARIOUS OF NOC MODELS FOR CONTINUOUS-BASED PROCESS MOHAMAD YUSUP BIN ABD WAHAB

UNIVERSITI PUTRA MALAYSIA DETERMINATION OF THE RISK FACTORS AND INJURY PROBABILITY FOR SMALL CAR CRASHES IN KLANG VALLEY, MALAYSIA VIVI SISILIA

EFFECTIVE COST MANAGEMENT: APPLYING ACTIVITY BASED COSTING IN PRIVATE HEALTHCARE - (HAEMODIALYSIS SERVICES)

A report submitted in partial fulfilment of the requirements for the award of the degree of Bachelor of Computer Science (Computer Systems & Network)

UNIVERSITI PUTRA MALAYSIA DEVELOPMENT OF INTELLIGENT DISTRIBUTED TEMPERATURE MONITORING SYSTEM ABDUASSLAM AHMED ALI FK

Program Peralihan Pembantu Makmal (PPPM) WFST1113 ASAS KERJA LAPANGAN KOMPAS, TRIGONOMETRI & MEMBUAT RINTISAN KOMPAS

Student Application Form

Maybank One Personal Saver and Flexi Saver Plan

Web-based Assessment in Teaching and Learning Management System (e-atlms)

01 [pg 3] Set-Top-Box (STB) 02 [pg 5] HyppTV Remote Control. 03 [pg 10] Accessing the TV Guide. 04 [pg 12] Accessing the Video On Demand (VOD)

Faculty of Computer Science & Information Technology

BENGKEL INOVASI PEDAGOGI. Penyelesaian Masalah Matematik Sekolah Rendah dengan Menggunakan Strategi Melukis Gambar Rajah. oleh

Report of the Working Group on Demand (2004), P. 10

Student Application Form

Katakunci : kecergasan kardiovaskular, daya tahan otot kaki, latihan simulasi haji dan umrah.

CONTROL HOME APPLIANCES VIA INTERNET (CoHAVI) SOFTWARE DEVELOPMENT SHIRRENE A/P NAI SOWAT

Transcription:

Oleh : Fiftin Noviyanto A. What Is Top-Down Design? Top-down design bekerja dengan beberapa cara. Pertama kita memiliki satu pekerjaan yang besar, selanjutnya pekerjaan tersebut kita pecah menjadi beberapa bagian Analogi : Google Earth, untuk mencari kampus UAD Pada kasus membuat program biasanya kita dihadapkan pada masalah yang umum. Namun dari kasus tersebut dapat dibagi menjadi beberapa bagian kecil sehingga memudahkan kita untuk menyelesaikannya. Kita harus memulainya dengan membuat kerangka permasalahan. Selanjutnya membagi dalam beberapa bagian proses.

Top-Down Desain<> Buttom Up Desain Bottom-up design adalah desain dengan memfokuskan pada permasalahan-permasalahan kecil sebelum melihat permasalahan yang lebih besar. Top-down design memungkinkan programmer menyelesaikan masalah dimulai dengan perencanaan global kemudian mengisi detailnya pada setiap level sampai lengkap B. Real-World Problems and Design Contoh 1 : Andi mengoleksi Video VHS selama beberapa tahun. Dan saat ini ingin dipindah ke format DVD. Dia telah membeli beberapa film dalam format DVD dan telah diduplikasikan ke dalam format VHS. I decide to take inventory and get rid of the old duplicate VHS movies. How should I approach this problem?

Urutan Desain Penyelesaian 1. Make a list of all movies. Get the title of each movie and then alphabetize those movies. 2. Next to each movie write DVD, VHS, or Both. 3. Separate the movies with the tag Both from those without that tag. 4. Throw out the videos of the Both collection. Put them into boxes and deliver to a Goodwill location. Change all words Both to DVD. 5. Alphabetize the entire collection. Notice how steps 1 and 4 became more detailed in the second list. We refined those steps by giving them more detail. This process is known as stepwise refinement. Stepwise refinement is useful because it helps the programmer outline the code he must write. In step 1, I could write a separate function called gettitle and another called alphabetizelist. When I set out to write this code, I will have a clear idea of what I need to accomplish. If I don t refine the steps, I have less of an idea of what I need to do, since step 1 initially only says, Make a list of all movies. Stepwise refinement is important because it trains the programmer to move step by step, the way a computer works. Every time you refine a task by making it more specific, you are getting closer to being able to write these instructions in a programming language. As a beginning programmer, you need to learn how to organize solutions in a systematic way so that they can be processed. If your tasks are too vague, then chances are you will have a tough time writing them in a language.

Contoh Kasus (1) Here is another example of taking a large task and breaking it into smaller tasks using a top-down approach. Consider what you would do if you were buying a car. Most of us would not just go to the store and buy it without doing a few separate tasks. Each major task must be broken into subtasks that give more Buying a car is really a set of other smaller tasks, like finding out how much money you can spend and making choices about the car. You would need to choose a car s make, its type, and its color before deciding whether the car was the one you wanted to buy. You also have to get the money together for the car. Are you going to need a bank check written instead of a personal check? Most likely! As you can see, the tasks on the left have been broken down on the right to make each task more clearly defined.

C. Computer Problems and Design Now we will examine some practical examples that you can program. Each example involves a main task that requires some refinement. As you read each example, try to identify which task will be refined and how it will be refined. Contoh Kasus 1 In this example, we will consider a math problem involving prime numbers. We need to make a list of all the primes less than or equal to the number 500. This sounds like a big task, since there are 500 numbers to check, and we have to keep a list of all those that are prime. Let s start by looking at the primes less than 10. There are four primes less than the number 10 (1 is not considered prime) 2, 3, 5, and 7. Now we have to find out which numbers in the number set 1, 2,..., 499, 500 are prime. Let s look at this algorithm:

1. Start a number counter called mynum at 2, since 2 is the first number we will check. 2. Check to see whether mynum is prime. 3. If mynum is prime, write it down. 4. Increase mynum by 1 so that you can check the next number. 5. Go back to step 2 until you hit 501. Most of these steps are clear, but we need to elaborate on how we would determine whether a number is prime. So step 2 needs to be refined. In this step we would have to articulate how a prime number is recognized. We would have to think about what we could write in programming terms that would allow the computer to recognize a prime number. In fact, it is not that difficult a task, but it is good that we have drawn attention to it by separating that work from the other steps in the algorithm. Contoh Kasus 2 In this example, we will find the youngest person in a group of 50 people. At first, this problem can seem difficult to program. However, I have developed a list of steps that you can follow to complete this task. Again, as with the previous example, consider what step needs to be clarified. 1. Find the first person s birth date. 2. Find the next person s birth date. Retain the more recent birth date. 3. Go back to step 2 if there are more people. 4. Stop when there are no more people to check. The step that needs the most refinement is step 2, where we have to retain the more recent birth date. That would involve some subtasks of comparing years of birth, and if those were the same, we would compare months and then days, if necessary.

Find the first person s birth date. Get the year, the month, and the day. Find the next person s birth date. Get the year, the month, and the day. Retain the more recent birth date. Compare years, then months, if necessary, and days, if necessary. Go back to step 2 if there are more people. Check the list of people. Stop when there are no more people to check. Both of these are examples of top-down design. As you continue to learn about programming and encounter more elaborate programs, you will find this perspective useful. The process of developing separate blocks of codes, to accomplish separate tasks called modules or functions Summary Each time you break a big problem into other smaller problems, you are using a process of top-down design, which we also call stepwise refinement. Each set of tasks is refined by adding more steps to indicate how the big task is accomplished. By trying to break your tasks into other smaller tasks, you are starting to develop a modular approach to a program.