Figure 4 - uploaded by Jawad H. Alkhateeb
Content may be subject to copyright.
Dromey’s Software Quality Model 

Dromey’s Software Quality Model 

Source publication

Context in source publication

Context 1
... quality of software is important to corporations in making their commercial software, as it plays an important role to some systems such as embedded systems, real-time systems, control systems and others which all play an essential aspect in human life. Software used products can be custom made or commercial of the shelf software (COTS) that is built to fulfill the general needs of an industry. The use of COTS as software system products has grown for both industry and government agencies. COTS products represent the already made software products for commercial use rather than building a custom made software system from scratch. COTS products are usually programmed based on a set of characteristics of one of the known software quality models. The quality of COTS is the derived force to adapt a software product. The quality of COTS is derived from the types of quality attributes implemented while building the software system product. Quality attributes are a set of characteristics that are contained in a specific quality model. There are a number of quality models, where each consist of quality attributes or characteristics that shows the quality of a software product. This paper consists of four sections: Section 2, discusses recent related work that are done in quality models and commercial off the shelf software. Section 3, discusses the contents of the five quality models Boehm’s Quality Model, McCall’s Quality Model, FURPS Quality Model, Dromey’s Quality Model, and ISO 9126 Quality Model. Section 4, quality models analysis, discusses the quality attributes based on these quality models. Section 5, COTS classification, the classification of the mostly used COTS will be discussed. Section 6, presents the conclusion of this comparative study that discusses which quality model that is most used based on the implemented COTS quality attributes. Several studies exist for the COTS products and for quality models. Some studies are done on COTS to guide organizations to evaluate appropriate COTS products [1], the reuse of COTS [4], classify COTS in categories based on their attributes [10], and Defining and Classifying COTS products [11]. Some studies are done as analytical and comparative Study about quality models such as Boehm’s Quality Model, McCall’s Quality Model, FURPS Quality Model, Dromey’s Quality Model, and ISO 9126 Quality Model [2], selecting software package using quality models [3], and a Systematic study of software quality models to measure the quality of software products [5]. This section introduces the five software quality models which are Boehm’s Quality Model, McCall’s Quality Model, FURPS Quality Model, Dromey’s Quality Model, and ISO 9126 Quality Model. All software quality models are used in software system product development [3][5][6][7][8][9]. Boehm introduced his quality model to evaluate the quality of software [2]. This model attempts to qualitatively define the quality of software by predefined set of attributes and metrics. Boehm quality model consists of three models high-level (Primary characteristics), intermediate-level, and lower-level (primitive characteristics), figure 1. Each level contains a set of quality characteristics to produce quality in most used COTS. The quality attributes on Boehm [2] quality standards focuses on portability, reliability, efficiency, human engineering, testability, understandability, and modifiability. McCall software quality model is aimed towards system developers and system development process [5]. McCall’s model is to bridge the gap between users and developers by focusing on a number of software quality factors that indicate the views of both users and developers. The structure of McCall’s quality model is three major categories (product revision, product transition, product operation), figure 2, each type of quality attributes consists of a set of quality attributes. The category product revision consists of maintainability, flexibility, and testability quality attributes. The product transition category consists of portability, reusability, interoperability quality attributes. The product operation category consists of a set of quality attributes that includes correctness, reliability, usability, integrity, and efficiency. FURPS software quality model is created by Robert Grady [6]. The structure of FURPS software quality model consists of five quality attributes or characteristics that includes supportability, performance, reliability, usability, and functionalability. Dormey’s software quality model is created by Dromey [7][8] and presents four quality categories where each category consists of quality attributes. The four categories are correctness, internal, contextual, and descriptive, figure 4. The four categories share similar quality attributes along with each owns designated attributes [8]. The correctness category includes functionality and reliability. The internal category includes maintainability, efficiency.The contextual category includes reusability and portability. The descriptive category includes usability. The ISO 9126 software quality model was created in 1991by the country members of the ISO organization as the ultimate software quality standard a n d r e v i s e d m a n y t i m e s t o c o n t a i n f o u r p a r t s [9]. The software quality model is described into two categories: a) internal quality and external quality, and b) quality in use figure 5. The first part is further divided into six categories where each consists of a set of quality attributes. The second part consists of four quality attributes. The quality in use category consists of four software quality attributes such as effectiveness, productivity, safety, and satisfaction, figure 6. The internal and external quality category consists of six quality categories where each category consists of several quality attributes, figure 7. The categories are 1) Functionality that includes suitability, accuracy, interpretability, security, and functionality. 2) Reliability the include maturity, fault tolerance, recoverability, and reliability.3)Usability that includes understandability, learnability, operability, attractiveness, and usability. 4) Efficiency that includes time behavior, resource utilization, and efficiency.5) Maintainability that includes analyzability, changeability, stability, testability, and maintainability. 6) Portability that includes adaptability, installability, co-existence, replaceability, and portability. Analyzing all quality models by comparing their quality attributes or characteristics, Table 1 shows that total number of attributes or characteristics for each quality model. From the 17 quality attributes only one attribute ’reliability’ that is common to all five quality model. Also, there are attributes such as ‘portability’, ‘efficiency’, and ’usability’ that is common to four quality models. The attributes ‘maintainability’ and ‘functionality’ are common to three quality models. The attributes ‘testability’ and ‘reusability’ is common to two quality models. The remaining attributes ‘human engineering’, ‘understandability’, ‘modifiability’, ‘interoperability’, ‘correctness’, ‘integrity’, ‘supportability’, and ‘performance’, ‘adabtability’, ’installability’, ‘changeability’, ‘accuracy’, ‘maturity’, ‘suitability’, ‘resource utilization’, ‘analyzability’, ‘suitability’, ‘attractiveness’, ‘operability’, each are common to only one quality model. Out of the total number of attributes, it can be noted there are many attributes are shared with all quality models, but only the ISO 9126 covers more software quality attribute when compared to other quality models. Based on this quality models analysis, it is determined that ISO 9126 in its characteristics and sub-characteristics is most dependable as software quality metric to be used by software developers than other software quality models, figure 8. Commercial of the Shelf products can be classified into three categories architectural level, product kind, and life-cycle phase. The categories have several classification dimensions. With the different COTS, COTS are divided into classes such as 1) server side languages, 2) server side engines, 3) DBMS, 4) client execution engines, 5) client development tools, 6) programming languages, 7) development standards, 8) executable components, and 9) development tools [10]. Based on the software classes, it is found that the most number of COTS are to belong to the Server-Side Languages with (23 items) including Java Servlet, Java Beans, Pearl, CGI, CORBA, PHP, and SOAP. The second most used software belongs to classes such as client development tools, and client execution engines. The client development tools consists a large variety of software products including Paint Shop Pro, Macromedia, WAP, MS Frontpage, Netscape, and Oracle think9i. The client execution engines consists a large variety of software products including Acrobat reader, Lynx, Opera, and Winamp. The third category is Client-Side language That includes HTML, Java Applet, Java phone, Java script, and Macromedia. The forth category is DBMS that includes MySQL, Oracle, and Sybase. The fifth category is a server-side engine that includes Oracle Application Server and Apache HTTP server [11]. Most COTS products are to ensure many quality model attribute that can be achieved by following McCall or ISO 9126 quality models. To make sure that COTS products are to comply with software standards, COTS must pass their tests for quality attributes such as ‘adabtability’, ‘changeability’, ‘accuracy’, ‘suitability’, ‘resource utilization’, ‘analyzability’, ‘attractiveness’, ‘operability’, and fault tolerance’. In this paper, we have ...

Similar publications

Full-text available
Full-text available
Целью данной работы является исследование конкретных проявлений оппортунистического поведения и форм их реализации.Метод или методология проведения работы: использованы общенаучные и специальные методы: индукции, дедукции, синтеза, научной абстракции, системного и структурного анализа.Результаты: выявлены две формы оппортунистического поведения, об...