Software Testing (Pengujian Perangkat Lunak)




You can download full chapter Software Testing & QA : here

Information Retrieval (Sistem Temu Kembali Informasi)






You can download full chapter of Information Retrieval : here

Decision Support System (Sistem Pendukung Keputusan)




You can download full chapter Decision Support System : here

Digital Image Process (Pengolahan Citra Digital)




You can download full chapter of Digital Image Processing : here

Research Methodology (Metode Penelitian)




You can download full chapter of Research Methodology : here

Fuzzy Logic



You can download full chapter of Fuzzy Logic : here

Game Testing




You can download full chapter Game Testing : here

Distributed System




You can download full chapter of Distributed System : here

Latest Network Architecture




You can download full chapter of Latest Network Architecture : here

Software Project Management




You can download it full chapter Software Project Management : here

Expert System




You can download full chapter of expert system : here

Game Design









You can download full chapter of game design : here

Game Production



You can download full chapter Game Production : here

Database Administration (Administrasi Basis Data)




You can download full chapter DB-Admin : here

Etika Profesi




You can download Full Chapter IT Ethics : here

Software Engineering



Software engineering is the application of engineering to the design, development, implementation and maintenance of software in a systematic method. Typical formal definitions of software engineering are:
  1. "research, design, develop, and test operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific, and general computing applications."
  2.  "the systematic application of scientific and technological knowledge, methods, and experience to the design, implementation, testing, and documentation of software"
  3. "the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software"
  4. "an engineering discipline that is concerned with all aspects of software production"
  5. "the establishment and use of sound engineering principles in order to economically obtain software that is reliable and works efficiently on real machines."
Software engineering is an engineering discipline that is concerned with all aspects of software production from the early stages of system specification to maintaining the system after it has gone into use.
Essentially, computer science is concerned with the theories and methods that underlie computers and software systems, whereas software engineering is concerned with the practical problems of producing software. Some knowledge of computer science is essential for software engineers in the same way that some knowledge of physics is essential for electrical engineers. Ideally, all of software engineering should be underpinned by theories of computer science, but in reality this is not the case. Software engineers must often use ad hoc approaches to developing the software. Elegant theories of computer science cannot always be applied to real, complex problems that require a software solution.

You can download it full chapter of Software Engineering course : here


Mobile Programming



Mobile application development is a term used to denote the act or process by which application software is developed for handheld devices, such as personal digital assistants, enterprise digital assistants or mobile phones. These applications can be pre-installed on phones during manufacturing platforms, or delivered as web applications using server-side or client-side processing (e.g. JavaScript) to provide an "application-like" experience within a Web browser. Application software developers also have to consider a lengthy array of screen sizes, hardware specifications and configurations because of intense competition in mobile software and changes within each of the platforms. Mobile app development has been steadily growing, both in terms of revenues and jobs created. A 2013 analyst report estimates there are 529,000 direct App Economy jobs within the EU 28 members, 60% of which are mobile app developers.

As part of the development process, Mobile User Interface (UI) Design is also an essential in the creation of mobile apps. Mobile UI considers constraints & contexts, screen, input and mobility as outlines for design. The user is often the focus of interaction with their device, and the interface entails components of both hardware and software. User input allows for the users to manipulate a system, and device's output allows the system to indicate the effects of the users' manipulation. Mobile UI design constraints include limited attention and form factors, such as a mobile device's screen size for a user's hand(s). Mobile UI contexts signal cues from user activity, such as location and scheduling that can be shown from user interactions within a mobile application. Overall, mobile UI design's goal is primarily for an understandable, user-friendly interface. The UI of mobile apps should: consider users' limited attention, minimize keystrokes, and be task-oriented with a minimum set of functions. This functionality is supported by Mobile enterprise application platforms or Integrated development environments (IDEs).

Mobile Programming Development course divide into four main chapter (Platform). You can download it : here

Data Mining


The fundamental algorithms in data mining and analysis form the basis for the emerging field of data science, which includes automated methods to analyze patterns and models for all kinds of data, with applications ranging from scientific discovery to business intelligence and analytic.
 
Data mining courses provides a broad yet in-depth overview of data mining, integrating related concepts from machine learning and statistics. The main parts of the book include exploratory data analysis, pattern mining, clustering, and classification. The book lays the basic foundations of these tasks and also covers cutting-edge topics such as kernel methods, high-dimensional data analysis, and complex graphs and networks. With its comprehensive coverage, algorithmic perspective, and wealth of examples, this book offers solid guidance in data mining for students, researchers, and practitioners alike.

Exploratory data analysis aims to explore the numeric and categorical attributes of the data individually or jointly to extract key characteristics of the data sample via statistics that give information about the centrality, dispersion, and so on. Moving away from the IID assumption among the data points, it is also important to consider the statistics that deal with the data as a graph, where the nodes denote the points and weighted edges denote the connections between points. This enables one to extract important topological attributes that give insights into the structure and models of networks and graphs. Kernel methods provide a fundamental connection between the independent point wise view of data, and the viewpoint that deals with pairwise similarities between points. Many of the exploratory data analysis and mining tasks can be cast as kernel problems via the kernel trick, that is, by showing that the operations involve only dot-products between pairs of points. However, kernel methods also enable us to perform nonlinear analysis by using familiar linear algebraic and statistical methods in high-dimensional spaces comprising “nonlinear” dimensions.

Frequent pattern mining refers to the task of extracting informative and useful patterns in massive and complex data sets. Patterns comprise sets of co-occurring attribute values, called itemsets, or more complex patterns, such as sequences, which consider explicit precedence relationships (either positional or temporal), and graphs, which consider arbitrary relationships between points. The key goal is to discover hidden trends and behaviors in the data to understand better the interactions among the points and attributes.

Clustering is the task of partitioning the points into natural groups called clusters, such that points within a group are very similar, whereas points across clusters are as dissimilar as possible. Depending on the data and desired cluster characteristics, there are different types of clustering paradigms such as representative-based, hierarchical, density-based, graph-based, and spectral clustering.

You can download Full Chapter Data Mining : Here

Kecerdasan Buatan (Artificial Intelligence)


Kecerdasan Buatan adalah salah satu disiplin ilmu dalam bidang komputer yang terus berkembang. Bidang Kecerdasan Buatan atau bahasa aslinya Artificial Intelligence (disingkat AI) berusaha tidak hanya untuk memahami tetapi juga untuk membangun entitas cerdas. AI meliputi banyak sub-bidang, mulai dari bidang umum sampai untuk tugas-tugas spesifik.

Definisi AI menurut Russel dan Norvig (Russel, Norvig, 2003) dapat dikategorikan menjadi dua dimensi utama yang membahas proses/penalaran berpikir (reasoning) dan perilaku/tindakan (behavior). Selanjutnya definisi AI dapat dijabarkan lagi berdasarkankinerja (performance) dan rasionalitasnya. Keempat sudut pandang tersebut membentuk matriks definisi AI.

Pada tahun 1950 Turing mengusulkan ide untuk mendefinisikan kecerdasandalam makalahnya yang berjudul “Computing machinery and intelligence". Pertanyaan utamanya adalah untuk mengetahui apakah mesin dapat berpikir atau tidak yang masih tidak jelas. Untuk mengetahui jawaban atas masalah tersebut, ia merancang sebuah skenario pengujian antara komputer dan manusia, serta seorang interrogator yaitu manusia. Fokusnya bukan untuk menjawab pertanyaan tentang kemampuan mesin untuk berpikir, tetapi untuk mengamati kemampuan mesin untuk berperilaku cerdas. komputer berhasil melewati tes jika interogator manusia, setelah mengajukan beberapa pertanyaan tertulis , tidak bisa menentukan apakah jawaban tertulis itu berasal dari komputer atau manusia.

Beberapa contoh aplikasi kecerdasan buatan yang telah diterapkan:
1. DEEP BLUE mengalahkan dunia catur Garry Kasparov juara pada tahun 1997.
2. ALVINN mengemudi melintasibenua Amerika (mengemudi otonom 98% dari total jarak, dari Pittsburgh ke San Diego).
3. Selama Perang Teluk 1991, penggunaan aplikasi AI untuk perencanaan logistik dan program penjadwalan yang melibatkan hingga 50.000 kendaraan, kargo, dan pasukan AS.
4. Program perencanaan otonom milik NASA yang mengontrol penjadwalan operasi untuk pesawat ruang angkasa.
5. Proverb, aplikasi AI untuk memecahkan teka-teki silang yang lebih baik daripada kebanyakan manusia.
“Upaya untuk membuat komputer dapat berpikir. Mesin dengan pikiran dalam makna sebenarnya.” (Haugeland, 1985). Pendekatan pemodelan kognitif; Untuk menyatakan apakah suatu program komputer dapat berpikir seperti manusia, haruslah dapat ditentukan bagaimanakah proses manusia berpikir. Untuk menjawabnya perlu eksperimen psikologi. Jika kita punya cukup pengetahuan tentang teori pikiran, maka sangat memungkinkan mengekspresikan teori tersebut dalam program komputer.

Pada era 1960an muncul ilmu kognitif sebagai suatu bidang interdisipliner yang menggabungkan model komputer pada AI dengan teknik eksperimen pada psikologi untuk membangun teori tentang cara kerja otak manusia. Ahli komputer menyatakan bahwa algoritma komputer yang berjalan baik dalam menyelesaikan suatu masalah merupakan model proses berpikir manusia. Pada akhirnya bidang AI terpisah dari psikologi kognitif. Kedua bidang tersebut saling mendukung khususnya pada ranah computer vision dan pemrosesan bahasa alami.

You can download Full Chapter Artificial Intelligence : here

Web Application Programming

In this chapter we discuss about :

Web Application Programming. Because the web apps so wide, i personally divide it into 3 level. From Basic level, Mid level, and Advance Level. From the link i give below you can learn all about it




Basic Level :

 


Mid Level :

 


Advance Level
 







You can download here: Web Apps