Monthly Archives: March 2014

Software Engineering: A Practitioner’s Approach, 7th Edition Chapter 7

7.1. What is the fundamental difference between the structured analysis and object-oriented strategies for requirements analysis?

Perbedaan mendasar antara structured analysis dan object-oriented analysis yaitu, structured analysis mempertimbangkan data dan proses yang mengubah data menjadi entitas terpisah. Sedangkan object-oriented analysis lebih terfokus pada definisi kelas dan cara bagaimana mereka berkolaborasi antar kelas untuk memenuhi kebutuhan customer/pelanggan.

7.2. In a data flow diagram, does an arrow represent a flow of control or something else?

Ya, arrow pada DFD (Data Flow Diagram) merepresentasikan flow/urutan pergerakan objek data, dan harus diberikan label/nama khusus.

7.3. What is “information flow continuity” and how is it applied as a data flow diagram is refined?

Information flow continuity adalah suatu keadaan untuk mempertahankan input dan output yang sama setiap ada perbaikan agar mampu menghasilkan sistem yang konsisten. Untuk itu, maka information flow continuity perlu dimaintain tiap level. Hal ini sering terjadi saat terlalu banyak detail untuk ditampilkan diawal.

7.4. How is a grammatical parse used in the creation of a DFD?

Pendekatan yang sederhana dan efektif untuk memperluas level 0 DFD ke level 1 adalah dengan melakukan “Grammatical Parse” pada deskripsi masalah. Caranya adalah dengan mengidentifikasi kata benda dan kata kerja pada deskripsi masalahnya. Biasanya kata benda mewakili entitas eksternal, objek data atau penyimpanan data (data stores) dan kata kerja mewakili proses. Walaupun grammatical parsing bukan yang terbaik, tetapi kita dapat mengumpulkan banyak informasi yang berguna untuk membuat DFD.

7.5. What is a control specification?

Control specification (CSPEC) merupakan representasi dari perilaku sistem, pada level yang telah direferensikan, dalam 2 cara berbeda. Control specification mengandung state diagram yang merupakan spesifikasi sekuensial suatu perilaku/behavior. Control specification juga dapat berisi tabel aktivasi program, spesifikasi kombinasi dari perilaku/behavior.

7.6. Are a PSPEC and a use case the same thing? If not, explain the differences.

Process specification (PSPEC) digunakan untuk menggambarkan semua proses flow model yang muncul pada level/tingkat akhir perbaikan. Isi dari PSPEC dapat berupa teks naratif, deskripsi bahasa program desain/program design language (PDL) dari suatu algoritma, persamaan matematika, tabel, atau UML activity diagram. Sedangkan use case adalah salah satu jenis flow model diagram. Jadi dapat disimpulkan bahwa use case merupakan bagian dari PSPEC.

7.7. There are two different types of “states” that behavioral models can represent. What are they?

Passive state dan active state.

Passive state adalah sebuah keadaan/status saat ini dari semua atribut suatu objek. Sedangkan active state dari suatu objek menunjukkan status objek tersebut saat object tersebut diproses atau saat mengalami transformasi.

7.8. How does a sequence diagram differ from a state diagram. How are they similar?

Sequence diagram dan state diagram sama-sama menampilkan objek yang berpartisipasi dalam flow/urutan melalui use case dan juga pesan yang dikirim antar objek.

Perbedaannya adalah sequence diagram berdasarkan waktu, sedangkan state diagram tidak.

Contoh Sequence Diagram dan State Diagram:

sequence and state diagram

7.9. Suggest three requirements patterns for a modern mobile phone and write a brief

description of each. Could these patterns be used for other devices. Provide an example.

7.10. Select one of the patterns you developed in Problem 7.9 and develop a reasonably com- plete pattern description similar in content and style to the one presented in Section 7.4.2.

7.11. How much analysis modeling do you think would be required for SafeHomeAssured .com? Would each of the model types described in Section 7.5.3 be required?

Tidak semua model perlu dianalisis untuk SafeHomeAssured.com, karena secara garis besar, website tersebut sudah cukup baik untuk digunakan oleh sebagian user. Hanya saja, model yang perlu untuk dianalisis adalah Content model dan Configuration model karena tampilan serta infrastruktur websitenya yang kurang menarik.

7.12. What is the purpose of the interaction model for a WebApp?

Tujuan interaction model pada WebApp adalah untuk menjelaskan cara agar user/pengguna dapat berinteraksi dengan WebApp.

7.13. It could be argued that a WebApp functional model should be delayed until design.

Present pros and cons for this argument.

Pros : Apabila functional model dibuat setelah desain, maka kita dapat lebih mudah untuk merancang serta mengembangkan kekurangan dari WebApp yang telah kita buat.

Cons : Namun, apabila functional model terlebih dahulu dibuat, hal tersebut juga dapat membantu kita dalam merancang serta memberi gambaran WebApp seperti apa yang akan kita buat.

7.14. What is the purpose of a configuration model?

Configuration model bertujuan untuk menggambarkan lingkungan dan infrastruktur daripada suatu webapp, yaitu mengenai tampilan dan tata letak.

7.15. How does the navigation model differ from the interaction model?

Navigation model lebih menjelaskan pada bagaimana user dapat mencapai pada apa yang diinginkan, sedangkan interaction model menjelaskan mengenai bagaimana webapp tersebut berinteraksi dengan user.

Software Engineering: A Practitioner’s Approach, 7th Edition Chapter 6

6.1. Is it possible to begin coding immediately after an analysis model has been created? Explain your answer and then argue the counterpoint.

Analysis model mendeskripsikan struktur sebuah sistem ataupun aplikasi yang sedang kita modelkan, terdiri dari class dan sequence diagram. Jadi, dasarnya, analysis model merupakan sejenis fondasi dari model desain karena mendeskripsikan struktur logika dari sebuah sistem tetapi bukan bagaimana cara mengimplementasikannya.

Menurut saya, coding dapat dilakukan setelah analysis model dibuat karena class diagram dan sequence diagram sudah tertera. Dengan begitu proses dan struktur dari sebuah aplikasi dapat dilihat keseluruhannya. Akan tetapi, coding dapat lebih maksimal jika mengikuti tahapan tahapan pembuatan sebuah aplikasi yang lengkap.

6.2. An analysis rule of thumb is that the model “should focus on requirements that are visible within the problem or business domain.” What types of requirements are not visible in these do- mains? Provide a few examples.

Maksud dari requirement tersebut adalah yang di luar dari jangkauan aplikasi yang diminta. Seperti contoh kasus seorang developer diminta untuk membuat sebuah aplikasi merecord data pengeluaran dari sebuah perusahaan maka yang harus diperhatikan tentu adalah data data yang dibutuhkan dan proses penyimpanan data oleh user. Hal hal lain di luar lingkup aplikasi seperti salah input oleh user ataupun bencana alam yang terjadi di masa depan bukanlah tanggung jawab developer.

6.3. What is the purpose of domain analysis? How is it related to the concept of requirements patterns?

Analisis domain pada hakikatnya adalah upaya peneliti untuk memperoleh gambaran umum tentang data untuk menjawab fokus penelitian. Dengan analisis domain, hasil yang diperoleh merupakan kumpulan jenis domain atau kategori konseptual beserta simbol yang dirangkumnya. Teknik analisis ini sangat relevan untuk dipakai dalam studi yang bersifat eksploratif. Konsep pola requirement sendiri dapat dihubungkan ke analisis domain jika pola pola yang digunakan bersifat perulangan artinya code akan digunakan kembali.

 

6.4. Is it possible to develop an effective analysis model without developing all four elements shown in Figure 6.3? Explain.

Untuk mengembangkan sebuah analisis model tanpa mengembangkan empat elemen lainnya dapat saja dilakukan tetapi efektivitas model tersebut tidak baik karena keempat model yaitu scenario based, behavioral, class dan flow model saling berhubungan erat satu sama lain dan ketidakhadiran sebuah elemen akan mengurangi kelengkapan dari model analisis yang dibuat. Jadi, untuk membuat suatu model analisis, dibutuhkan pengembangan daripada keempat elemen lainnya juga agar dapat memperoleh model analisis yang efektif.

6.5. You have been asked to build one of the following systems:

a. a network-based course registration system for your university.

b. a Web-based order-processing system for a computer store.

c. a simple invoicing system for a small business.

d. an Internet-based cookbook that is built into an electric range or microwave.

Select the system that is of interest to you and develop an entity-relationship diagram that de- scribes data objects, relationships, and attributes.

gbr1

6.6. The department of public works for a large city has decided to develop a Web-based pot- hole tracking and repair system (PHTRS). A description follows:

Citizens can log onto a website and report the location and severity of potholes. As pot- holes are reported they are logged within a “public works department repair system” and are assigned an identifying number, stored by street address, size (on a scale of 1 to 10), location (middle, curb, etc.), district (determined from street address), and repair prior- ity (determined from the size of the pothole). Work order data are associated with each pothole and include pothole location and size, repair crew identifying number, number of people on crew, equipment assigned, hours applied to repair, hole status (work in progress, repaired, temporary repair, not repaired), amount of filler material used, and cost of repair (computed from hours applied, number of people, material and equipment used). Finally, a damage file is created to hold information about reported damage due to the pothole and includes citizen’s name, address, phone number, type of damage, and dollar amount of damage. PHTRS is an online system; all queries are to be made inter- actively.

a. Draw a UML use case diagram for the PHTRS system. You’ll have to make a number of assumptions about the manner in which a user interacts with this system.

b. Develop a class model for the PHTRS system.

a.gbr2

6.7. Write a template-based use case for the SafeHome home management system described informally in the sidebar following Section 6.5.4.

gbr3

6.8. Develop a complete set of CRC model index cards on the product or system you chose as part of Problem 6.5.

6.9. Conduct a review of the CRC index cards with your colleagues. How many additional classes, responsibilities, and collaborators were added as a consequence of the review?

6.10. What is an analysis package and how might it be used?

Analysis package merupakan elemen-elemen dari model analisis yang dipaketkan dan dibari nama representasi. Analysis package sendiri dapat digunakan untuk sebuah projek yang membutuhkan banyak class yang dikelompokkan menjadi berbagai kelompok berdasarkan kategori masing-masing.

Game Questionnaire – Software Engineering

Questionnaire :

Game Questionnaire

* Required
Berapakah umur anda? *
OS apa yang PC anda gunakan saat ini? *
OS apa yang paling anda suka dalam segi penggunaan dan efisiensi? *
Apa komponen komputer anda yang menurut anda lebih penting? *
Apa tujuan utama anda dalam menggunakan PC? *
Platform apa yang paling sering anda pakai untuk bermain game? *
Seberapa sering anda bermain game? *
Anda lebih menyukai game online / offline? *
Jenis game apa yang anda sukai? *
Genre game apa yang paling anda minati? *
Menurut anda, desain grafis atau alur cerita yang lebih penting? *
Apakah anda menyukai game dengan sistem online cash (pembelian item mall) atau tidak? *