Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

2015 9th Malaysian Software Engineering Conference, Dec.

2015

A Proposed Value-Based Software Process Tailoring


Framework

N oar Azura Zakaria Suhaimi Ibrahim, Mohd Naz' ri Mahrin


Department of Computer Science Advanced Informatics School (AIS)
International Islamic University Malaysia (HUM) Universiti Teknologi Malaysia (UTM)
Kuala Lumpur, Malaysia Kuala Lumpur, Malaysia
azurazakaria@iium.edu.my suhaimiibrahim@utm.my, mnazrim@utm.my

Abstract-Software process tailoring is the act of customising order to produce a value-based tailored process in software
the existing software process to suit the specific software project. development [3].
Current practices in software process tailoring consider project
characteristics as the sole input to tailor the software process. In This study aims to propose a value-based software process
addition, it maintains the traditional approach whereby all the tailoring (VBSPT) framework to be used to tailor software
project characteristics factors are treated as being equally process. A review of relevant existing studies in the software
important. There is a need to shift the traditional software process tailoring and VBSE domain are conducted prior to
process tailoring approach to a value-centric approach by using a propose the VBSPT framework.
value-based software engineering concept. This study aims to
propose a value-based software process tailoring framework to The structure of this paper is organised as follows: Section
tailor the software process. A review was conducted to analyse 2 discusses the brief theoretical background of software
the components embedded and input factors in the selected prior process tailoring and VBSE. Section 3 explains the review
studies on software process tailoring. The framework proposed in process. The next section discusses the research works on
this study uses value-based factors as input factors to tailor the software process tailoring. The proposed VBSPT framework is
software process. The framework also considers value
prioritisation component, which rank the process elements
discussed in detail in Section 5. The final section presents the
according to value priority. discussion and conclusion of this study.

Keywords-vaLue-based software engineering; vaLue-based IT. THEORETICAL BACKGROUND


factor; software process tailoring; software process
A. Software Process Tailoring
I. INTRODUCTION The customisation of a software process is required for
Software process tailoring is one of the solutions used to instance, to add the stakeholder' s roles, remove some of the
customise the existing software development process to be less important activities and modifY the artefacts and
used in new software projects. Current practices in software processes. Software process tailoring is defined as "the act of
process tailoring usually adopt an ad hoc approach that tends to adjusting the definition and! or particularizing the terms of a
replicate old process from previous projects or use a process general description to derive a description applicable to an
that is familiar to the software development team. The value- alternate (less g eneral) enviromnent"" [4]. Even though the
based software engineering (VBSE) concept brings the benefit process reference model has developed the guidelines for
of maximising the value contribution to the software project process tailoring, it is deemed too general or principal-based
(e.g. budget, schedule and stakeholder satisfaction) as and requires the organisation to make adjustments according
compared to conventional software development approaches to the project's context. Xu and Ramesh [5] argue that the
that only focus on completing a project successfully. The
guidelines given in the process reference model are not
VBSE concept shifts the traditional approach in software
sufficient to perform second-level tailoring which is tailoring
development to a more value-centric approach [I].
for the specific project.
In software process tailoring, most ofthe existing studies in
Several studies have coined the tenll "one size could not fit
the literature have used project context or characteristics as sole
all" [6-8] which is synonymous with the software process
input to tailor the software process [2]. This approach satisfies
tailoring activity since each project is unique and complex.
the project context only and the tailoring practices are
The software process should be able to fit the needs of the
maintained with value-neutral settings because all the project
specific project based on the situational environment and
factors are treated equally the same. There is a need to
factors. Otherwise there is a risk of failure of the software
integrate the VBSE concept in software process tailoring in
project [9]. Moreover, to construct the software process from
scratch is tedious work and invites risk to the project [10].

978-1-4673-8227-4/15/$31.00 ©2015 IEEE 149


Even though software process tailoring is one of the A. Software Process Tailoring Methodology
resolutions in selecting the most appropriate software process, Basili and Rombach [21] are pioneers in producing a
the task is not straightforward and requires intuition, methodology to tailor software processes according to project
experience and knowledge to perform the activity [11, 12]. goals and environments to achieve process improvement. They
suggested that organisations use project environment factors
B. Value-Based Software Engineering (VBSE) and identifY project goal factors as irJput to tailor the software
A number of earlier software engineering studies focused process. In order to measure the identified project goals, a
on reducing costs. In other words, the focus was given to Goal-Question-Metrics (GQM) was required for measurement
purposes. The study provides general guidelines on how to
economic concerns instead of increasing benefits or values.
conduct software process tailoring and improvement based on
Boehm and Sullivan [13] challenged this mindset and argued
the input factors.
that value-added should be incorporated in the software
engineering practices. In addition, any decisions made when A study conducted by He et al [22], proposed a systematic
accomplishing software engineering activities should consider way to tailor a software process based on the knowledge reuse.
value-added elements as well. An extended study was later The idea is to reuse the knowledge of experienced employees
conducted by Boehm [14], he stressed that software in software process tailoring. The vital components are
engineering practices should be changed to value-based rather reusable knowledge documentation and tailoring processes.
than value-neutral settings. This is because the former does The project-specific requirements are required to tailor the
not take into account the benefits or value-added elements in process.
software engineering phases. Tn this study, Boehm [14]
suggested various value-oriented elements that could be B. Software Process Tailoring Framework! Model
considered in the software engineering practices. They include A model was developed by Xu & Ramesh [23] after an
requirements engineering, architecting, design and interview was conducted with stakeholders from two
development, verification and validation, planning and organisations. The purpose was to further investigate the
control, risk management, people management, quality software process tailoring approach in the organisation for a
management and software engineering principles. specific software project. The main components in the model to
tailor the software process are project goals, environmental
The value-neutral setting treats software development factors assessment, challenges evaluations and tailor processes.
practices, processes, products and actIvItIes such as The main input derived from project goals consists of product
requirements, objects, use cases and others as equally goals and process goals. A year later, a framework was
important that means they all carry equal weight [15-17]. This developed that focused on challenges assessment to suggest
is the motivation for studies such as [18-20] to conduct tailoring strategies [5]. There are four components in the
research on requirements engineering by embedding the framework namely project goals and requirements evaluation,
prioritisation concept. The value or weightage is assigned in challenges assessment, tailoring strategy and tailor process.
the requirements for the purpose of prioritisation before The project manager or process designer is suggested to
decisions can be made. The decision is more valuable because identity challenges factors that exist in the organisation and
it considers the most important aspect of requirements derived then conduct an assessment to obtain insights on a suitable
tailoring strategy.
from the prioritisation activity. Tn addition, the organisation
can give more focus on the important requirements rather than Tn the context of agile development specifically for small
work on all requirements including the less important ones. and medium sized companies, Akbar [24] has taken an effort to
produce a framework that focuses on how to tailor the process
TTT. RESEARCH WORKS TN SOFTWARE PROCESS TATLORTNG in this context. The main components embedded in the
framework are client' s perspective, project behavior, key
The reviewed articles presented in this paper were selected processes in agile development and process tailoring schema.
based on the relevancy with the aim of this paper. The Tn order to tailor the agile process, the required input factors
selection was made based on the output that they produced, consist of client's requirements and project behavior.
clearly stated the components embedded and input factors that
they have used in their research studies. The components that C. Software Process Tailoring Supporting Tool
have been used in the previous study are regard as an A rule-based technique was used to develop a tool that is
integrated element or process for them to conduct software able to capture knowledge on software process tailoring [25].
process tailoring. Meanwhile the input factors are attributes or The tool embeds an exclusive list prior to the tailoring process.
requirements needed to tailor the software process. The employee is able to add knowledge and experience if the
The reviewed articles were classified into three categories process is new and not in the repository. Project characteristics
based on the output product that they have produced which are are the main input for this tool.
methodology, framework or model and supporting tool in the Hurtado Alegria et al [26] used a Model-Driven
software process tailoring domain. Engineering (MDE) approach to conduct software process
tailoring. They have used project context and organisational
software process to conduct tailoring and produced a context-
adapted process for a medium sized company.

150
Aresearch work that has been conducted by Lorenz et al Article
Research
Component Input Factor
[2] used project characteristics and tailoring requirements in Output
their tool to tailor the software process. The tailoring 3. Project context context
requirements are risk factors that are required to be selected to model
produce the tailored software processes. The architecture of the 4. Tailoring
processes is one of the components embedded in the tool and is transformation
chain
taken from the standard RUP. The architecture is prioritised
Lorenz et al Tool l. Project l. Project
prior to recommending the tailored software process. [2] characteristics characteristics
2. Tailoring 2. Risk factors
Table 1 surmnarised the component and input factor
requirements
required in the software process tailoring domain from the 3. Architecture of
selected existing studies. processes
4. Prioritisation of
activities
T ABLE I. SUMMARY OF COMPONENT & INPUT FACTOR IN SOFTWARE 5. Tailored processes
PROCESS TAILORING
Research
Article Component Input Factor
Output
TV. A PROPOSED VALUE-BASED SOFTWARE PROCESS
Basili & Methodology I. Environment I. Project T AILORTNG FRAMEWORK
Rombach characteri sation environment
[21] 2. Improvement goal 2. Project goal
3. Appropriate The proposed value-based software process tailoring
model selection (VBSPT) framework is illustrated in Figure I and each
4. Transfer chosen component in the framework is explained as follows.
technology
5. Post mortem data
analysis
I. Reusable I. Project-specific
knowledge requirement
documentation
2. Tailoring process
Xu & Model I. Project goal I. Product goal
Ramesh 2. Tailor process 2. Process goal
[23] 3. Environmental Success-
factors assessment Critical YSF Identification
4. Challenges Stakeholder
evaluation
Xu & Framework I. Project goals and I. Challenges
Ramesh [5] environment
evaluation YBF Assessment
2. Challenges
assessment
3. Tailoring strategy
4. Tailor software
process
Akbar [24] Framework I. Client"s perspective I. Client" s
2. Project behaviour requirements
(project risk), 2. Project
(project states) behavior
3. Key processes- Process element
agile manifesto assessment
(communication ),
(resource
management),
(requirement Value prioritisation
management)
4. Process tailoring
schema (mapping
& tailoring) Tailoring process
Henninger Tool I. Software I. Project
& development characteri sti cs
Baumgarten methodology
[25] 2. Project
characteristics
Hurtado Tool I. Organ isational I. Organisational
Allegria et software process software
al [26] 2. Organ isational process
2. Project Fig.l. A Proposed Value-Based Software Process Tailoring Conceptual
process model
Framework

151
Value-based factor (VBF) identification: The VBF suitable process element was conducted, a
identification is a vital component in the value-based software recommendation on the tailoring operations is provided.
process tailoring (VBSPT) conceptual framework. There are The tailoring operation recommendation is based on the
28 commonly used value-based factors in the Malaysian criteria that will be developed. A tailoring rationale
public sector. This result was obtained after conducting SLR recommendation will be provided in order to ease the
[27] and an exploratory survey in the Malaysian public sector project manager to understand the reason of the tailoring
[28]. The 28 value-based factors are classified into four main operation recommendation was provided.
categories namely success-critical stakeholder, business • Tailoring rationale recommendation: A tailoring
strategy, project characteristics and product characteristics. recommendation will be provided after tailoring
The attribute to each of the value-based factors will be operation recommendation and value prioritisation. The
obtained from the relevant literature review. Each of the tailoring rationale will justify the impact of the tailoring
attributes will be assigned with a specific weightage. process to assist the project manager in making the
decision on options that he/she needs to choose.
Value-based factor (VB F) assessment: VBF assessment
requires the project manager to assess and rate the VBF Tailoring process: The input received from the tailoring
according to the relevancy with the need of the current operation criteria and tailoring recommendation will be used
software development project. to tailor the process accordingly.

Software development process element: The process Assessment criteria: There are two assessment criteria
element in this framework consists of six main phases in required in this framework which are dedicated in assessing
software development which are derived from the ISO/TEC VBF and software process elements. The assessment criteria
12207:2008 [29]. The standard provides generic processes, are regarded as a guideline to the project manager on the
activities, tasks, documents and roles in the software life method to assess the VBF and process elements.
cycles. The six phases included in this framework are software
requirements analysis, software architectural design, software Tailoring operation criteria: A criteria of tailoring operation
detailed design, software construction, software integration will be developed to recommend the suitable tailoring
and software qualification testing. The process elements that operations that need to be used to tailor the process elements
will be tailored are artefact, activity and role for each phase. in software development.

Mapping process: A mapping process will be conducted that


maps between the rated VBF with the software development V. DISCUSSION AND CONCLUSION
process element that was previously identified. The main objective of this study is to propose a VBSPT
framework in order to recommend a tailored process in
Process element assessment: An assessment of process software development. A review of research works on software
element that has been mapped with the identified VBF need to process tailoring was conducted. Based on the existing research
be conducted. It is similar to assessment of the VBF which works, analysis and comparison was made in order to
requires the project manager to assess and rate the process determine what components are embedded and what inputs are
element before providing the suitable process element required in the research works to perform software process
recommendations. tailoring. The proposed VBSPT framework is illustrated and
explained in more detail in Section 4.
Value prioritisation: A value prioritisation will be provided The VBSPT framework proposed in this study has
that ranks the process elements according to the priority of integrated the value element (value-based factors and value
value. A tailoring rationale recommendation will be provided prioritisation) with the software process tailoring domain. The
to justity the value prioritisation. proposed VBSPT framework is still in a horizontal perspective
and there are several works that need to be done to refine the
Tailoring recommendation: Tailoring recommendation is a framework which is considered as our future works. The
requirement prior to tailoring process. The tailoring recommendations for future works are as follows:
recommendation is a substance needed by the project manager • The attribute and weightage scale for each VBF need to
in order to make a tailoring decision. It consists of three inputs be identified.
which are:
• The mapping technique needs to be identified in order
• Suitable process element recommendation: A to map the process elements with the identified VBF.
recommendation on the suitable process element will be • The assessment criteria for VBF and process elements
provided that matches the identified VBF. need to be determined to guide the project manager to
• Tailoring operation recommendation: The tailoring perform the assessment.
operations that will be used in this framework are add,
delete and modity. Once the recommendation on the

152
• Tailoring operation criteria are required to be developed [11] D. Kang, I.-G. Song, S. Park, D.-H. Bae, H.-K. Kim, and N. Lee,
"A case retrieval method for knowledge-based software process
for the purpose of recommending tailoring operations
tailoring using structural similarity," in 15th Asia-Pacific Software
that suit the identified VBF and process elements. Engineering Conference. 2008. APSEC'08. ,2008, pp. 51-58.
[12] J. A. Hurtado and C. Bastarrica, "Process model tailoring as a
• The value calculation and prioritisation method will be mean for process knowledge reuse," in 2nd Workshop on
determined in order to rank the process elements Knowledge Reuse. KREUSE, Falls Church, Virginia, USA,2009.
according to the value priority. [13] B. W. Boehm and K. J. Sullivan, "Software economics: a
roadmap," in Proceedings of the conference on The future of
Even though the proposed VBSPT framework is still in its Software engineering, 2000, pp. 319-343.
early stages, the idea and concept on how to use the value- [14] B. Boehm, "Value-based software engineering: reinventing," ACM
based factors to tailor the software process is articulated and SIGSOFT Software Engineering Notes, vol. 28, p. 3,2003.
presented in this paper. It is predicted that the framework can [15] L. Huang and B. Boehm, "How much software quality investment
is enough: A value-based approach," Software, IEEE, vol. 23, pp.
be refilled further after the above-mentioned future works have
88-95,2006.
been carried out. [16] S. W. Lim, T. Lee, S. Kim, and H. P. In, "The value gap model:
Value-based requirements elicitation," in 7th IEEE International
ACKNOWLEDGMENT Conference on Computer and Information Technology, 2007. CIT
2007. , Fukushima, Japan, 2007, pp. 885-890.
This research is funded by the Research University grant of [17] D. Zhang, "Machine learning in value-based software test data
Universiti Teknologi Malaysia (UTM) under the Vot no. generation," in 18th IEEE International Conference on Tools with
08H28. The authors would like to thank the Research Artificial Intelligence, 2006. ICTAl'06, Arlington, V A, 2006, pp.
732-736.
Management Centre of UTM and the Malaysian ministry of [18] S. S. Payyavula, S. S. Jahagirdar, and M. Kumar, "Application of
education for their support and cooperation including students Value Based Requirement Prioritization in a Banking Product
and other individuals who are either directly or indirectly Implementation," in Third International Conference on Services in
involved in this project. Emerging Markets (ICSEM), 2012 Mysore, 2012, pp. 157-161.
[19] J. Azar, R. K. Smith, and D. Cordes, "Value-oriented requirements
prioritization in a small development organization," Software,
REFERENCES IEEE, vol. 24, pp. 32-37,2007.
[20] B. Sebastian, W. Claes, H. Ganglan, and A. Aybiike, "Creating
[I] B. W. Boehm, "Value-based software engineering: Overview and
software product value in China," Software, IEEE, vol. 26, pp. 84-
agenda," in Value-based software engineering, S. Bitll, A. Aurum,
B. Boehm, H. Erdogmus, and P. Griinbacher, Eds., ed Heidelberg 90,2009.
[21] V. R. Basili and H. D. Rombach, "Tailoring the software process
Berlin: Springer, 2006, pp. 3-14.
to project goals and environments," in Proceedings of the 9th
[2] W. G. Lorenz, M. B. Brasil, L. M. Fontoura, and G. Vaz Pereira,
"Activity-Based Software Process Lines Tailoring," International international conference on Software Engineering, 1987, pp. 345-
Journal of Software Engineering and Knowledge Engineering, vol. 357.
[22] X. Y. He, Y. S. Wang, Y. X. Teng, and J. G. Guo, "A Systematic
24,pp.1357-1381,2014.
[3] N. A. Zakaria, S. Ibrahim, and M. N. Mahrin, "The State ofthe Art Method for Process Tailoring Based on Knowledge Reuse," in
International Conference on Software Engineering and Knowledge
and Issues in Software Process Tailoring," presented at the 4th
Engineering 2008 (SEKE 2008), San Francisco, USA, 2008, pp.
International Conference in Software Engineering and Computer
Systems, Kuantan, Pahang, 2015. 38-41.
[23] P. Xu and B. Ramesh, "Software process tailoring: an empirical
[4] M. P. Ginsberg and L. H. Quinn, "Process Tailoring and the the
investigation," Journal of Management Information Systems, vol.
Software Capability Maturity Model. Technical Report CMU/SEI-
94-TR-024," Software Engineering Institute, Pittsburgh, PA1995. 24, pp. 293-328, 2007.
[24] R. Akbar, "A proposed Framework for Tailoring Agile-Based
[5] P. Xu and B. Ramesh, "Using process tailoring to manage software
Software Development Processes for Small and Medium Sized
development challenges," IT Professional, vol. 10, pp. 39-45,
Companies," Computer Information Science, University Teknologi
2008.
Malaysia, Perak, Malaysia, 2013.
[6] S. Jeners, P. Clarke, R. V. O ' ColUlOr, L. Buglione, and ~."l.
[25] S. Henninger and K. Baumgarten, "A case-based approach to
Lepmets, "Harmonizing Software Development Processes with
Software Development Settings-A Systematic Approach," in tailoring software processes," in Case-Based Reasoning Research
and Development, ed: Springer, 2001, pp. 249-262.
Systems, Software and Services Process Improvement, ed:
[26] J. A. Hurtado Alegria, M. C. Bastarrica, A. Quispe, and S. F.
Springer, 2013, pp. 167-178.
[7] P. Clarke and R. V. O 'Connor, "The situational factors that aftect Ochoa, "MDE-based process tailoring strategy," Journal of
the software development process: Towards a comprehensive Software: Evolution and Process, vol. 26, pp. 386-403,2014.
reference framework," Information and Software Technology, vol. [27] N. A. Zakaria, S. Ibrahim, and M. N. Mahrin, "A Survey of Value-
Based Factors in Software Development," presented at the 3rd
54,pp.433-447,2012.
[8] J. Cameron, "Conflgurable development processes," International Conference on Internet Services Technology and
Communications of the ACM, vol. 45, pp. 72-77,2002. Information Engineering 2015 (ISTTE 2015), Bali, Indonesia,
2015.
[9] G. Kalus and M. Kuhrmann, "Criteria for software process
tailoring: a systematic review," in Proceedings of the 2013 [28] N. A. Zakaria, S. Ibrahim, and M. N. Mahrin, "Examining Value-
Based Factors in Software Development: A Survey Study in
International Conference on Software and System Process, Talinn,
Estonia, 2013, pp. 171-180. Malaysian Public Sector," presented at the 24th Australasian
[10] P. Xu, "Knowledge support in software process tailoring," in Software Engineering Conference (ASWEC 2015), Adelaide,
Proceedings of the 38th Annual Hawaii International Conference Australia, 2015.
on System Sciences, 2005. HICSS'05. , Waikoloa, Hawaii, 2005, [29] (ISO/TEC), "Systems and software engineering -Software life
pp. 87c-87c. cycle processes," ed. Geneva, Switzerland: International
Organization for StandardizationlTnternational Electrotechnical
Commission, 2008.

153

You might also like