Senin, 04 Juni 2012

Context of SQA

What is Software Quality???

Software quality  is an abstract concept. Its presence can be difficult to define, but its absence easy to see within moments. 
The quality of a software is hard to define and so much different than a industrial product, that is why software quality have many uniqueness. The differences can be seen below;
1. The Complexity
     Software products usually very complex and allowing for very large number of operational options, thus for industrial products the degree of complexity much lower and allow few operational number
2.  Visibility Products
         Hard for software to detect any bugs or error, because it can't be seen. Unlike industrial products which is very easy to detect machine error. 
 Software consist of 4 components (IEEE & ISO) :
  • Computer programs ("Code")
  • Procedures
  • Documentation
  • Data necessary for operating the software system
Software Quality Assurance include the 4 software components quality to monitor the software engineering processes and method used to ensure quality. Ex; Code Quality, Quality of Procedures, Quality of the documentation and the quality of the necessary software data.

There are many errors, faults, and failures on software which related to software quality assurance, because software errors are the cause of poor software quality. Many causes of software errors, like the points bellow:

1. Faulty Requirement Definition

The faulty definition of requirements usually caused by the client which not clear in giving the requirement list which can cause the software errors. The most common errors are:
- Erroneous definition of requirements
- Absence of vital requirements
- Incomplete definition of requirement
(Ex: The use cases often don't provide enough detail for developers to know what to build. Because the user do not derive specific software functional requirements 

2. Client-Developer Communication Failures

Communication is very important, especially when you work in team which include many different people. There will be a lot differentiation when delivering the material. Misundertstanding in a project can caused a major failure moreover in a development process. These 3 most failure in a client-developer communication failures based on Daniel Gallin;
- Misunderstanding of the client's instructions stated in the requirements document. 
- Misunderstanding of the client's requirements changes presented to the developer in written form during the development period.
- Misundstanding of the client's requirements changes presented orally to the developer during the development period. 
- Misunderstanding of the client's respones to the design problems presented by the developers.

3. Deliberate Deviation from Software Requirements

 In some cases, deviation are deliberately made by the developer from the documented requirements, this thing can caused software errors.The errors in this case usualy by the changin of the products. The most common deviation are:
- The developer reuses software modules 
- Due to the time or budget pressures
- Due to the unapproved improvements (Ex; disregard rquirements that seem inor to the developer)

4.Logical Design Errors


Logical design is the cause of the fatal error of manufacturing or software development. This error occurs because some of the omissions committed by the programmer  or developer in the early initation of the program. Such errors can be errors in determining the program algorithn which includes error theory is used. For example, errors in the calculation formula, execution process, erroneous algorithms that represent software requirements, omission of required software system states and erroneous definition of boundary conditions.

5. Coding Errors

No matter what language is used when coding, there are common errors that can lead to big problems, if they’re not dealt with early. These coding errors can result in severe breaches in security and unstable platforms, costing time, effort and money to repair.

Recently, even big companies like Sony have suffered from programming errors requiring extensive fixes to protect their customer’s private information online. One small error in the coding required the removal of part of the Sony PlayStation Network. Users were asked to reset their passwords and cancel their credit cards as the result of hackers accessing an exploitable security flaw.
Each language has its own set of parameters and issues, but common coding errors are common for one reason – everyone makes them. The trick is to recognize them and resolve them early in the programming process.
Besides that coding error can be made because of these example below;
- Misunderstanding the design documentation
- Linguistic errors in the programming language
- Errors in data selection
Read more: Common Types of Coding Errors http://techgyo.com/index.php/common-types-of-coding-errors/#ixzz1xJP8NEdk


So, all of the software errors lead us into the definition of what is software quality? what is the relation between the software errors and the software quality? 

Software quality is when the product features, system, component or process meet specified requirements and the customer needs and give customer satisfaction.

Kamis, 23 Februari 2012

Analisa Faktor Kualitas Software

Rabu, 22 Februari 2012

Coding errors in server side Javascript in xPages may hang HTTP threads

Pada salah satu server Domino, produk IBM sering terjadi kesalahan coding saat server-side Javascript (SSJS) dijalankan dari aplikasi xPage. Kesalahan koding tersebut mengakibatkan looping tidak terbatas

Tanda :

HTTP Server: Waiting for session to finish: Session State [Processing Request] Session ID [1] Thread ID [1764 (0x6e4)] GET /my_database.nsf/my_xpage.xsp HTTP/1.1

Penyebab :

Tidak ada cara untuk membatasi waktu eksekusi dari thread HTTP yang berjalan di server web Domino, dan tidak ada cara menghentikan thread tersebut.

Solusi:

Pengembang seharusnya berhati-hati saat menguji semua server-side Javascript sebelum melakukan deploying aplikasi xPage. Jika koding eror disebabkan kesalahan task HTTP, maka perlu dilakukan non-aktivasi task HTTP dan restart server Domino. Sebuah server mempunyai banyak threads yang tersedia dan defaultnya adalah berjumlah 40 dan server web seharusnya dapat beroperasi secara normal meskipun satu dari threads HTTP nya terdapat masalah. Untuk melakukan restart semua database di task Domino maka perlu dijalankan perintah “nsd-kill” dari command promp jika restart normal tidak berhasil.

Coding Errors




Dalam teknologi komputer, seringkali kita menemukan kesalahan dalam pembuatan software. Ada 9 jenis kesalahan dalam pembuatan software. Berikut adalah jenis-jenis kesalahan dalam software:


1. Faulty requirement definition

2. Client-developer communication failures

3. Deliberate deviation from SW requirements

4. Logical design errors

5. Coding errors

6. Non-compliance with documentation and coding instructions

7. Shortcomings of the testing process

8. Procedure errors

9.Documentation errors

Disini, kami memilih satu jenis error, yang nantinya akan kami elaborasi menjadi lebih luas beserta dengan studi kasus yang ada. Error yang kami pilih adalah Coding Errors.


Why ??

Karena seperti kita ketahui dalam membuat suatu program/software, tidak lepas dari pembuatan yang menggunakan code-code bahasa pemrograman. Hal tersebut sangat rumit dan kompleks sekali untuk dilakukan. Satu baris kodingan salah, maka akan sangat berpengaruh di seluruh jalannya software yang telah dibuat.


Where does Error come from?

Bug adalah kesalahan coding dalam program komputer. Proses menemukan bug sebelum program pengguna yang disebut debugging. Debugging dimulai setelah kode ini pertama kali ditulis dan terus dalam tahap berturut-turut sebagai kode dikombinasikan dengan unit lain dari pemrograman untuk membentuk produk perangkat lunak, seperti sistem operasi atau aplikasi. Setelah produk dilepaskan atau selama pengujian publik versi beta , bug masih cenderung ditemukan. Ketika ini terjadi, pengguna harus menemukan cara untuk menghindari dengan menggunakan bug detector

Deteksi dini kesalahan coding perangkat lunak dapat menghasilkan penghematan yang signifikan dalam waktu pengembangan (coding, review kode, dan pengujian).


Case Study

Minggu, 19 Februari 2012

Prezziii (Revision)

Rabu, 15 Februari 2012

Quality Management Technology Information

Hi there...
I get a task to do..
This is my first task on this semester..
here is the following question...

Describe what challenges of software quality in general. Then, find out one case study to describe the challenge(s) of software quality. Make a good power point slide maximum 15 pages in PREZI. Upload in your blog.

Senin, 13 Februari 2012

Baru buat kuliah