Digital Science Journal
Digital Science Journal
Digital Science Journal
I. INTRODUCTION
Software industry anxiously looks for effective methods to improve the software product quality.
Project management has been base for the progress of any engineering discipline to maintain the quality of a
product and software engineering is no exception. The lack of quality has significant costs to developers in
terms of wastage of effort; loss of market place, dissatisfaction from customers with faulty and rejected systems
which fail to meet their goals. High maturity organizations expect to use metrics heavily for process and project
management. The quality goals are defined though various measurement and metrics. Metrics have been used in
quantitative decision making for risk assessment and optimizing the size of software projects.
Software engineering is a layered technology, encompasses various like quality focus, process,
technical methods and use of tools to develop the software products [1]. Each layer has its own significance on
different size of projects under development. The complexity of a software project is to be continuously
measured, tracked and controlled. Software metrics measure different aspects of complexity, which plays the
crucial role in analyzing and enhance the software development process. Literature reported research has
stressed the importance of external quality aspects of software like maintainability, portability, reusability and
reliability. Software process metrics measures the significance of the layers implementation. This paper
presents the empirical evaluation of the role and significance of layered technology on size of the projects using
Analytic Hierarchy Process. The work presents the relationship between quality and success rate in correlation
with variables reflecting the organization and aspects of project’s governance. The work infers that quantitative
information provides the most effective solution to the problem of evaluating the significance of layered
technology. The organization of the rest of the paper is as follows. Section 2 describes the related work focusing
on literature reported work on metrics. Section 3 states the role of metrics in software engineering. Section 4
describes the evaluation of software layered technology significance on size projects with AHP mathematical
derivations. Finally a discussion about future scope and inferences is given in the Section 5.
Organizations adapted ISO stands of quality in software development to excel their performance.
ISO/ICE 9126 quality model have various internal and external quality factors [2].
www.jst.org.in 46 | Page
Journal of Science and Technology
Sadia Rehman et al[3] described the role of software metrics in the global software development with
systematic literature for data search
Kunal Chopra, et al [4] analyzed and evaluated the various aspects of software metrics to improve the
quality culture of software development.
W.K. S.D. Fernando, et. al [5] applied the questionnaire to find the importance of software metrics in
software development projects of Sri Lanka.
Fenton discussed the information system reliability of execution probability on given environment for a
given period of time [6].
Rawat, et.al [7], highlighted the various views on software quality and developed many metrics and
models which are resulted as remarkable success.
According to the Total Quality Management [TQM] literature and measurable criteria for assessing
quality are necessary to avoid “arguments of style” (Deming, 1986). Measurable quality criteria are
also essential for implementing statistical process control.
Paulk et al. 1993 defined the intent of software process improvement for improving product quality,
increasing productivity, and reducing the cycle time for product development.
Farooq et,al [8], presented paper on software measurement and metrics in software development life
cycle. The paper mainly highlighted on software test metrics and its role in software testing process.
Thomas L Satty [9], [10], [11], [12] defined the principles and philosophy of Analytical Hierarchy
Process for Multi criteria decision making approach.
Evangelos Triantaphyllou and Stuart H. Mann [13] presented paper on Analytical Hierarchy Process is
an effective approach for decision making. The paper examines the some of practical and
computational issues involved in the AHP method used in the engineering applications.
Gurdev Singh, et al [14] discussed the relationship between the software complexity metrics and
various attributes of software system, advantages of Software metrics and classification of software
metrics with more elaboration.
Norita Ahmad presented paper on AHP for tool selection in software project management. The work
establishes a framework for comparing individual product decisions across projects [15].
Chandni and Parminder Kaur [16] evaluated the software architecture quantitatively under agile
environment based on determined parameters.
Amit Verma and Iqbaldeep Kaur [17] presented comparative Analysis of Software Engineering
Paradigms according to the requirement of the specific Applications.
Parita Jain and Laxmi Ahuja reviewed various success factors of agile software development and
challenges faced in terms of assuring quality in agile [18].
Ruchika Malhotra and Anuradha Chug [19] developed comparative Analysis of Agile methods for
dynamic development and facilitates quick delivery with a scope of flexibility in continuous
enhancement.
www.jst.org.in 47 | Page
Journal of Science and Technology
measurement, the technology cannot operate and control the situation. The measurement is a key element of any
engineering process and there is no exception for software engineering.
In the nature most of the products are physical which consist of direct measurements, but software is
logical product measured with indirect measurement. “What is not measurable and make into measurable” [4].
Measurement is for better understanding of the attributes and to assess the quality of software engineering
projects/products as powerful as other engineering disciplines that we build.
The software organizations are using metrics in the project management for evaluation and
conformation of effective software projects. Software engineering construct and maintain the software projects
which includes activities like planning, managing and costing in various stages of software development life
cycle. The metrics can be used in different phases of the software development life cycle. The metrics
continuously observe, understand, controlled and measure software complexities. The objective of software
metrics is that applicable to both process, project and product metrics.
“Metrics don’t solve problem, Metrics provide information so that people can solve problems” [20].
Metrics is essential tool for software measurement in development of quality products in software
engineering. Measurement is a quantitative indication of extent, amount, dimension, capacity or size of attribute
of product or process. It is act of determining a measure. The metric is a “quantitative measure of degree to
which a system, component or process a given attributes” [IEEE].
The need and importance of metrics in software engineering is as follows.
B. Characteristics
The quality factors are well defined in measurable or quantifiable. These metrics helps to indicate whether
an organization or product is achieving significance of software goals. The following various characteristics are
associated with metrics
Software metrics can measure the product for characterization, comparison, tracking, predication
enhancement, validation and evaluation.
Software metrics should provide information to take the decisions on quantitative base during the
software lifecycle.
The metrics used for decision making at risk assessment, reduction at evaluation stage.
Software metrics measure the product defect predication, cost estimation and forecasting.
The weight of the person is known attribute can be measured. But other attributes of person, such as
knowledge creates a fuss or confusion.
The length or height of the person measured with different scales like meters, inches, feet of the same
attribute. The distance or height of the satellite from earth measured with miles but not with height of
the person which again makes measurement definition far from accurate.
The accuracy of the measurement depends on the instrument or metrics what we measured in proper.
For example length can measured with accuracy as long as the ruler is accurate and when used in
proper way.
www.jst.org.in 48 | Page
Journal of Science and Technology
Once we apply the measurements for different aspects of real world, we need to analyze the results and
define the conclusions about the attributes which are derived. Results show what sort of changes or
manipulations have to apply for the process to attain quality of the product.
TOOLS
METHODS
PROCESS
SOFTWARE QUALITY FOCUS
www.jst.org.in 49 | Page
Journal of Science and Technology
Methods Layer
Methods layer of the software layered technology provides the technical knowledge (i.e. how to’s”) for
building software. It comprises the array of tasks like Requirement Analysis, Design, program construction and
deployment.
Tools layer
This layer provides support for process and methods by providing the automated and semi automated
tools. These tools bring the software development process as rapid with automation. For Example the CASE
(Computer Aided Software Engineering) tools may also include editors, database, test case generators and code
generators etc.
A Sampling
The Sampling of this study comprised with various public, private sector software houses. The targeted
population comprised of IT Practitioners with much minimum 15 years experience in software development.
Besides, the IT Practitioners have various roles in the software development which includes Project manager,
System analysts, Software Engineers, Tester and programmers. These Experts were selected in this study
because they have much experience and involvement in software development life cycle of various types of
projects. The reason why various roles were involved was do the diverse practice implemented by different
organizations with standard job title or role is pertinent to handle software project development. For example, in
an extreme case, a software engineer of agile project could be responsible to elicit requirements, design
software, code and run the test case himself. Among the 55 respondents, 40 of them claim to be familiar and
involved in producing inputs for the development.
B The AHP Methodology
The Analytic Hierarchy Process multi-criteria decision making method invented by Saaty in 1980 and
improved by Vargas in 2001. AHP practically used in management science by Anderson et al., in 2000. It is a
powerful and flexible tool for providing solutions for complex multi criteria decision-making applications. This
tool is developed to solve complex problems selecting the alternatives based on multi criteria. AHP deals to
measure intangible criteria and how to interpret in measurement of tangibles: so they can be combined with
those of intangibles to yield sensible, not arbitrary numerical results (Satty, 2005).
C Structure of AHP method
Analytic hierarchy process divides the main problem into smaller and more detailed elements. The
Analytical Hierarchy Process problem hierarchy organized into top level as goal, intermediate level as criteria’s
and lower level as alternatives. Figure 2 shows the hierarchical decomposition of criteria and alternatives.
GOAL
The pair wise comparison matrix represents the corresponding judgment of experts on the scale of
relative importance (Saaty, 2008) of the following.
Weigh
Definition Explanation
t
Two activities in
1 Equal importance
equal importance
3 One activity
Moderate
moderate over
www.jst.org.in 50 | Page
Journal of Science and Technology
importance another
One activity
Extreme
9 Extreme over
importance
another.
Pair-wise comparison is the next step to be carried in which the corresponding maximum left
eigenvector is evaluated by geometric means of each row (Triantaphyllou and Mann, 1990). That is n-th root of
product of all the elements in each row. Next the numbers are normalized by dividing them with their sum [13].
Initially the consistency index CI to be estimated. This is done by sum of columns in the judgment matrix and
multiply the resulting vector by the vector of priorities (i.e approximated eigenvector) obtained earlier. This
results the approximation of the maximum eigenvalue denoted by λ max. Then, the C.I calculated with the formula
as:
CI = ( λmax-n) / (n-1)
CR = CI/ RCI
RCI stands for Random Consistency index defined by the Saaty, 2000).
Table 2: Random Conistency Index Based On Matrix Size (Adopted From Saaty, 2000)
Random Consistency
Matrix Size ( n )
Index
1 0
2 0
3 0.58
4 0.90
5 1.12
6 1.24
7 1.32
www.jst.org.in 51 | Page
Journal of Science and Technology
8 1.41
9 1.45
If the problem has M alternatives and N criteria, then the decision maker is required to construct N judgment
matrices (each criteria) of order M*M and one judgment matrix of order N*N (for N criteria). Finally, the
decision matrix the final priorities denoted as Ai AHP .
D. Algorithm
E. Mathematical derivatives
Step 1:
Step 3: Derivation of Priority (pk ). The numbers are normalized (each row n th -root value) by dividing them
with their sum.
Normalized Matrix
www.jst.org.in 52 | Page
Journal of Science and Technology
p1
p 2
p3
P
pn
1 2 3 n
max
n
max n
Consistency Index CI
(n 1)
Step 4:
Weights of alternatives with respect to each of the criteria mentioned in the tables 3 to 5 and its priority
vectors represented in pie graphs from figures 4 to 6.
Table3 shows the weights of three layers with respect to the Small Projects
Priority
Small Method
Process Tools Vector
Project s
(P)
Method
2 1 1/4 0.208
s
Tools 4 4 1 0 .660
www.jst.org.in 53 | Page
Journal of Science and Technology
SIGNIFICANCE OF SOFTWARE LAYERED
TECHNOLOGY IN SMALL SCALE PROJECTS
Process,
0.132, 13%
Methods,
0.208, 21%
Tools,
0.660, 66%
The next two matrices are respectively judgments of the relative merits of process, methods and tools
of software layered technology with respect to Medium and Large Scale projects.
Mediu
Priority
m Method
Process Tools Vector (
Project s
P)
s
Process 1 3 4 0.625
Method
1/3 1 2 0.239
s
TECHN
TO LO
oolsG, Y IN MEDIUM SCALE PROJECTS
Methods,
Process,
0.625, 62%
www.jst.org.in 54 | Page
Journal of Science and Technology
Table 5: Weights Of Alternatives With Respect To Large Scale Projects
Large Priority
Method
Project Process Tools Vector
s
s (P)
Process 1 2 9 0.655
Method
1/2 1 2 0.250
s
Tools,
Methods,
0.250, 25%
Process,
0.655, 65%
In this problem, the work finds significance of software layered technology rather than best project, so
all the projects have same significance. There is no need of criteria importance of Projects. Earlier computed
priority vectors are used to form the entries of the decision matrix for this problem. The decision matrix and the
resulted final priorities are as follows:
The significance of the software layered technology on size of projects shown in the figure 8.
www.jst.org.in 55 | Page
Journal of Science and Technology
L 0.6
0.5
A 0.4 PROCESS
METHODS
0.3 0.239 0.250
0.208 TOOLS
0.2 0.136
0.132
0.095
0.1
0
SMALL SCALE MEDIUM SCALE LARGE SCALE
PROJECTS
Therefore, the layer significance of software layered technology differs in agile and non agile projects.
From the research findings we can conclude that in the software industry under analysis the implementation of
the small scale, medium scale and large scale projects have identifiable variance of layer significance visible in
the above bar graph.
I. In Small Scale projects, the organization process involvement is very less compare to the Medium and Large
Scale Projects. There moderate methods will be used in these projects. But utilization of automatic and semi-
automatics tools involvements is more compare to the non agile projects.
People and their directions seems more important the processes and procedures.
Developing the software with help of tools is more in practice than technical documentation, budgets and
plans.
Co-operation and direct interaction is more important than process, methods to quick plan, design and
implement.
Since the usage of tools is much significant than other two aspects, therefore, it increases the rapid development
time and more refactorization.
Finally it is also inferred that there is a need of light weight methodologies to develop these projects.
II. Medium and Large Scale projects have approximately similar characteristics. These projects are belonging to
the non- agile projects.
Both projects heavily depend on organization processes and technical methods and tools.
These projects require more budgets, time compare to the small scale projects.
G. Observation
Process increasing from Small Scale projects to Large Scale Projects. But there is large variation between
small and large scale projects and a small variation between Medium and Large scale projects as given in
table 8.
Table 8: Process With Reference To Small, Medium And Large Scale Projects
PROCESS
Table 9 gives the scope of technical methods with reference to the three cases. Here the leverage of using
technical methods from small scale projects through large scale projects is increasing consistently.
www.jst.org.in 56 | Page
Journal of Science and Technology
Table 9: Methods With Reference To Small, Medium And Large Scale Projects
METHODS
Table 10 gives an observation that the utilization of automatic and semi-automatic tools is reducing from small
Scale projects to Large Scale projects.
Table 10: Tools With Reference To Small, Medium And Large Scale Projects
TOOLS
Table 11 presents the relation between process and tools. Finally, the work infers that, when the process,
methods increases then the use of tools reduces in the projects based on size. The work also strengthened the
hypothesis that significance of software layered technology concept changes based the size of projects.
V. CONCLUSION
AHP provides a convenient approach for solving complex Multi Criteria Decision Making problems in
software engineering. Irrespective of size of the project, if the three aspects namely process, methods and tools
have equal role during development then development time will be reduced without any compromise of product
quality. However due to lack of economic resources and human effort, small projects tend to be developed more
in automated environment. This leads to certain conflicts which results in poor performance of the developing
product. However, the improved expertise of using automated tools may reduce such conflicts. The work has
found that significance of software layered technology differs with the size of the projects.
Acknowledgements
We sincerely acknowledge to all the faculty members of the Department of Computer Science &
Engineering, Lingaya’s University, Faridabad and development software experts of various government and non
government firms of software industry for their motivation and support in the period of research.
REFERENCES
[1] Pressman. R.S, “Software Engineering: Practitioner’s Approach”, Mc Graw-Hill, inc 1977.
www.jst.org.in 57 | Page
Journal of Science and Technology
SAITM Research Symposium on Engineering Advancements,2014
[6] N. Fenton and M. Neil, “Software Metrics and Risk”, 2nd European Software Measurement Conference, 8 October, 1999.
[7] M.S.Rawat, A. Mittal, S.K. Debey , “Survey on Impact of Software Metrics on Software Quality”, Vol.3, International Journal
of Advancement Computer Science and Applications, 2012
[8] S.U. Farooq, S,M,K. Quadri , N.Ahmad, “Software Measurements and Metrics: role in Effective Software Testing”, International
Journal of Engineering Science and Technology(IJEST), Vol,3, No. 1,2011.
[9] Saaty, T.L (2000), “The Analytic Hierarchy Process”, Mc Graw-Hill International, New York, NY, 2000.
[10] Saaty, T.L, “Multi criteria Decision making: The Analytic Hierarchy Process”, McGraw Hill, NY, 1980.
[11] Satty, T.L,“Scaling method for priorities in hierarchical structures”, Journal of Mathematical Psychology, pp 234 – 281, 1977
[12] Saaty, T.L: “ How to Make a Decision : The Analytic Hierarchical Process”, European Journal of Operational Research, Vol
48, pp 9 – 26, 1990
[13] Evangelos Triantaphyllou, et al, “Using the Analytic Hierarchy Process for Decision Making in Engineering Applications: Some
Challenges”, International Journal of Industrial Engineering Applications and Practice, Vol.2.No.1, PP. 35-44, 1995.
[14] Gurdev Singh, et al, “ A Study of Software Metrics”, International Journal of Computational Engineering & Management, Vol.
11, p 22-26, Jan 2011.
[15] Norita Ahmad, “ Software Project Management Tools : Making a Practical Decision Using AHP”, Proceedings of the 30th Annual
IEEE/NASA Software Engineering Workshop, IEEE Xplore, 2006
[16] Chandni, et al, “ Quantitative Evaluation of Software Architecture”, Proceeding of the INDIACom-2016, IEEE Xplore ,2016
[17] Amit Verma, et al, Comparative Analysis of Software Engineering Paradigms “, Proceeding of the INDIACom-2016, IEEE
Xplore, 2016.
[18] Parita Jain, et al, “Current State of the Research in Agile Quality Development”, Proceeding of the INDIACom-2016, IEEE
Xplore, 2016.
[19] Ruchika Malhotra, et. al., “Comparative Analysis of Agile Methods and Iterative Enhancement Model in Assessment of Software
Maintenance “, Proceeding of the INDIACom-2016, IEEE Xplore, 2016.
[20] Singh Yogesh & Pradeep Bhatia, “Module Weakness- New Measures”, ACM SIGSOFT Software Engineering Notes, 81,
July,1998.
www.jst.org.in 58 | Page