=Paper= {{Paper |id=Vol-2470/p29 |storemode=property |title=Aligning agile software development with enterprise architecture framework |pdfUrl=https://ceur-ws.org/Vol-2470/p29.pdf |volume=Vol-2470 |authors=Karolis Noreika,Saulius Gudas |dblpUrl=https://dblp.org/rec/conf/ivus/NoreikaG19 }} ==Aligning agile software development with enterprise architecture framework== https://ceur-ws.org/Vol-2470/p29.pdf
    Aligning agile software development with enterprise
                  architecture framework
                            Karolis Noreika                                                            Saulius Gudas
                          Kaunas, Lithuania                                         Institute of Data Science and Digital Technologies
                     E-mail: knoreikos@gmail.com                                                     Vilnius University
                                                                                                     Vilnius, Lithuania
                                                                                              E-mail: saulius.gudas@mii.vu.lt

        Abstract. The effectiveness of internal processes is a key in         either decommission the system or accept the extremely costly
    modern day economy for companies of all sizes. This also includes         support of it (i.e. mainframe systems in financial institutions).
    the effectiveness in software development management and its
    alignment with business goals both short and long term. But it is             Enterprise architecture is a well-defined practice for
    not always easy to align IT development with organizational goals.        conducting enterprise analysis, design, planning, and imple-
    This paper suggests a method for aligning modern software                 mentation, using a comprehensive approach at all times, for
    development approaches with enterprise architecture frameworks.           the successful development and execution of strategy [3]. The
                                                                              agile methodology life cycle could be structured and aligned
        Keywords: agile software development, business and IT                 with TOGAF life cycle, which is a standard for enterprise
    alignment, enterprise architecture framework, TOGAF                       architecture development. TOGAF is a framework – a detailed
                                                                              method – for designing, planning, implementing, and
                              I. INTRODUCTION                                 governing an enterprise architecture [4], [10].
        Agile approach is a popular software development                         This paper proposes a methodology for how agile
    methodology. Agile approach currently is being adopted to                 methodology life cycle can be aligned with TOGAF enterprise
    business strategy execution, decision making to achieve                   architecture framework.
    strategic goals. Companies are “going agile” [1] in order to
    improve productivity of software teams as well as business                  II. AGILITY IN BUSINESS MANAGEMENT AND SOFTWARE
    teams making business decisions. “Going agile” is a big                                           DEVELOPMENT
    organizational change. It means that employees in all levels of
                                                                                 Agile approach allows business representatives to see the
    organization will need to adapt to the new way of working,
                                                                              value of the software product being developed faster
    which is getting the results of their daily duties evaluated
                                                                              compared to traditional software development. Traditional or
    much faster than in the traditional way of working. However,
                                                                              “waterfall” software development dates back to around
    when “going agile”, the overall goals of the organization are
                                                                              1970ties when the development of large enterprise IT systems
    not always supported with an organizational change. There are
                                                                              was started to be described in a scientific way [5].
    researches that emphasize the importance of supporting the
    agile way of working from organizational perspective                         The waterfall methodology utilizes the idea that each
    (provide appropriate physical atmosphere, work environment                phase in software development is sequential and cannot
    that encourages creativity) [2]. The gaps between business and            repeat. The agile methodology promotes the idea of repeated
    IT strategies appear. It might result in not sufficient quality of        and iterative steps, which are explained in Fig. 1 below.
    software products, that are not in line with overall goals of the
    organization both short and long term.
       Eventually the misalignment becomes so significant that
    organizations get into a position when there is no way back –




                                      Fig. 1. THE CONCEPTUAL DIAGRAM OF THE AGILE SOFTWARE DEVELOPMENT


© 2019 for this paper by its authors. Use permitted under Creative
Commons License Attribution 4.0 International (CC BY 4.0)


                                                                         98
Fig. 1 explains how the software product is being developed             information/knowledge flows. The detailed description of
after the business need is received. It contains the whole agile        each of the elements is in table 1 below.
life cycle which is organized by having different

                                  TABLE 1. DESCRIPTION OF AGILE LIFE CYCLE ELEMENTS
   Step/         Step/element                                              Step/element description
  element           name
     no.
      1         Data flow no. 1     The data flow, containing the information needed for understanding the business need,
                                    problem. It is transformed into product backlog item (element no. 2)
     2         Product backlog      List of features and requirements that the solution should have once completed.
                    items
     3         Data flow no. 2      An incoming data flow for the next element in the life cycle – sprint backlog (element no.
                                    4). It contains the features that software should contain after development iteration – sprint.
     4          Sprint backlog      List of features that will be developed in the next sprint. Sprint is a time frame with a list of
                                    features described and approved by business and IT representatives.
     5          Data flow no. 3     Once the high level features to be developed in the next sprint are agreed upon – the details
                                    must be clarified to the level needed in order to accomplish the business needs. This data
                                    flow contains the sprint backlog items or features explained in smaller pieces of information
                                    or requirements – user stories.
     6           User stories       The detailed requirements are worked on – analyzed by the development team so that both
                                    IT and business representatives understands the problem each user story would solve.
     7          Data flow no. 4     The detailed user stories are placed in some software tool that would allow keeping track of
                                    the progress of development of user stories.
     8             Sprints/         This is the most beneficial part of the agile life cycle. It is a method of constantly developing
                 development        small part of the overall software solution and getting the feedback fast.
                                    Each sprint consists of:
                                          a) Design – designing the user interface, business rules placed in the solution.
                                          b) Build (develop) – coding, styling, working on the solution from development
                                              perspective.
                                          c) Test – test the developed solution against the requirements.
                                          d) Review – review the solution test findings and decide what to improve.
                                          e) Launch – after the items that were agreed to be developed at the end of sprint are
                                              verified against the solution itself and the found changes that were necessary to do
                                              are done, the project team decides should the solution at current stage be deployed
                                              into production (or live) environment, where it could be already used by business
                                              representatives.
                                    Note: agile promotes the approach that the project team should be able to continue the
                                    iterative development for indefinite amount of time. Therefore, the number of sprints with
                                    the same phases as mentioned above could continue indefinitely.
     9          Data flow no. 5     The information gathered from the business need at the beginning of the project and
                                    throughout development phase aggregated to prepare the demo of the solution.
     10             Demo            The demo for the solution is a system presentation conducted to all relevant stakeholders.
     11         Data flow no. 6     The decision after the demo whether the solution should be included into production
                                    environment or should the development continue with taking the next set of requirements
                                    made.
     12         Repeat or close     As Agile methodology describes – self-organizing team should be capable of keeping the
                 development        accepted efficiency for product development indefinitely. This means that if business
                                    managers decide – the team should be able to repeat the whole cycle indefinite amount of
                                    times until the repetition does not increase the value significantly. If the decision is made to
                                    close the project – the agile life cycle is completed.
     13         Data flow no. 7     If it is decided to continue development – the next set of requirements is taken from the
                                    product backlog items list (element no. 2) and the agile life cycle is repeated.

    There are a lot of details and techniques how agile life            multiple projects in same business area (i.e. store related
cycle should be managed to achieve the best efficiency [6],             documents in single repository, have same classification of
[7], [8], but this is not a subject of this paper.                      them, etc.) The business side in the enterprises is also starting
                                                                        to take decision based on agile methodology, although it is
   However, running a successful business is not only about             often perceived as a part of startup culture – i.e. not something
doing software development in an agile way. Often IT                    established and large organizations would do. Table 2 below
development is ahead of business decisions where to come up             represents the comparison of agile and traditional approach on
with a suitable software solution development teams needs               business decision making in agile and traditional ways.
quick decisions by business that might be applicable across

                                                                   99
                     TABLE 2. AGILE AND TRADITIONAL DECISION MAKING COMPARISON
       Methodology         Flexibility        Risk         Adapting to Amount of data needed to
                                                            change         make decision
     Agile (including        Higher         Higher           Faster           Smaller
       variations)
       Traditional           Lower           Lower          Slower             Larger

    Agile methodology could be applied to business decision              also one of key aspects to have for the agile development
making by mapping the agile phases to decision making                    teams to be successful and self-organizing.
process – i.e. limit the information needed to make decision
could be compared to sprint backlog. Having a deadline for a                 3) Competitive potential – focuses on utilizing emerging
decision could be understood as the date for demo. Adjust to             IT capabilities to impact new products and services also to
new information on the decision could be understood as                   influence key attributes of strategy (distinct competences) as
review part of sprint.                                                   well as form new relationships (business governance). This
                                                                         perspective also allows the changing of business strategy via
III. IDENTIFICATION OF GAPS BETWEEN BUSINESS                             emerging IT capabilities. The role of the management is of
               AND IT STRATEGIES                                         business visionary who dictates how emerging IT
                                                                         competences and functionality would impact the business
A. Business and IT alignment model                                       strategy. The role of IT manager is of the one who identifies
   The business and IT alignment model was created by                    and interprets the trend in the IT environment to assist the
Henderson and improved by Venkatraman to represent                       business managers to understand the potential opportunities
business strategy alignment with IT strategy thus providing              and threats from an IT perspective and handle them
analysis method aimed for competitive advantage [9]. Fig. 2              accordingly.
below represents the strategic alignment model.                             4) Service level – this perspective focuses on building
                                                                         world class IT team. Therefore, the role of IT manager is also
                                                                         of a business leadership with tasks of making the internal
                                                                         business succeed with the operating guidelines from top
                                                                         management.
                                                                         B. TOGAF
                                                                             TOGAF is framework for designing, planning,
                                                                         implementing, and governing an enterprise information
                                                                         technology architecture. The TOGAF standard includes a
                                                                         content framework to drive the Architecture Development
                                                                         Method (ADM). TOGAF is an iterative process model
                                                                         (enterprise architecture development life cycle) supported by
                                                                         best practices and a re-usable set of existing architecture
       Fig. 2. THE BUSINESS AND IT ALIGNMENT MODEL                       assets. TOGAF supports Capability-Based Planning of
   There are four domain alignment perspectives where each               enterprise architecture [10].
focuses on different aspect of alignment between the business               The TOGAF framework is presented in Fig. 3 below.
and IT alignment, i.e.:
     1) Strategy execution – business strategy is the driver for
organization design changes and the logic of IT infrastructure.
In this perspective, the top management of the organization
dictates the strategy of the company and the IT management
is the strategy implementer.
    2) Technology potential – business strategy is the driver
for change, however it is closely aligned with IT strategy as
well, therefore the IT systems are more aligned with IT
strategy and also business strategy.
    The top management should provide the vision of the
technology to articulate the logic and choices to IT strategy
what would best support the chosen business strategy. The
role of IT manager in this perspective should be of the
technology architect – the IT manager should efficiently and
effectively design and also implement information system
infrastructure that is consistent with the IT strategy. This
alignment perspective could be used for aligning business and
IT strategy along with IT systems in an agile way as vision is



                                                                   100
   Enterprise architecture development life cycle (defined in
TOGAF) could be used for analysis of the agile software
development approach.
    The TOGAF life cycle in Fig. 3 was transformed to a
schematic view of a table (Fig. 4) in which the columns
represent the phases of TOGAF enterprise architecture
development life cycle and agile methodology life cycle and
the activities in the intersecting sections – the phases of agile
development (design, build, test and deploy) [11]. This
approach could be used into applying agile way of working
for building up and aligning with enterprise architecture
implementation that TOGAF provides.
    Although companies can change strategies quickly, they
then face the big slowdown of executing one or several
strategies. For enterprise architects, this has traditionally
meant defining a new target state, comparing it with the
current state, and then developing a road map. But this
multistep process is now perceived as taking too long — by
the time EA has all of these documented and approved, the
business will have moved on [12].
                                                                             Fig. 3. ENTERPRISE ARCHITECTURE DEVELOPMENT LIFE
                                                                                     CYCLE TOGAF (https://www.opengroup.org/togaf)




    Fig. 4. TOGAF ENTERPRISE ARCHITECTURE FRAMEWORK AND AGILE METHODOLOGY ALIGNMENT
                                            MODEL


    IV. ALIGNING AGILE LIFE CYCLE WITH ENTERPRISE                         (also called stakeholders, subject matter experts or in agile –
                 ARCHITECTURE FRAMEWORK                                   product owners) represent the business only fragmentally –
                                                                          whenever there is a question regarding IT and business
    It is a common belief that TOGAF and also other large                 alignment – it is solved on ad-hoc basis, but a long term IT
enterprise architecture frameworks are “waterfall”. This is a             and business strategy should be capable of answering these
common misinterpretation largely due to these models                      questions on a higher – strategic – level which is orchestrated
encompassing all related IT activities and not specific. But              by using the TOGAF methodology.
basically all these enterprise architecture frameworks are sets
of tools, similar like agile where one also should choose the                The idea behind mapping TOGAF to agile life cycle is use
tools and methods suitable for each specific case. A problem              the strategic vision that TOGAF provides by using its
in large organizations is that there are different levels of              framework and utilize the benefits of agile continuous
maturity of agile of different teams. Business representatives


                                                                    101
improvement and “inspect and adapt” approach. The                         technology advances to the cloud based solutions more and
suggested mapping is displayed in Fig. 5.                                 more companies are concerned about the safety of the data in
                                                                          the cloud based systems. Combining these concerns with the
    When TOGAF is used for overall overview on the                        agreed service level agreements provided by external vendors
enterprise architecture and agile is used for project’s                   not being maintained for enterprises to run their operations
iterations, the business gets benefit from even faster deliveries         smoothly (i.e. important IT system being outsourced is not
and projects are aligned with business goals at all times.                working part of the day due to agreed service level agreement
                       V. CASE STUDY                                      breached) might lead to decisions to insource the IT and IS
                                                                          infrastructure. But the cost of such decisions is very dependent
    Large enterprises often combine the IT infrastructure „in-            on the level of alignment between IT and business strategy and
house“ together with outsourcing it. It could be only storing             the less is the alignment, the bigger are the costs. Whenever
part of data or all the data of the enterprise. These decisions           an enterprise is faced with such decision, it is very important
are made according to IT strategy mostly and not always these             to keep the alignment between business and IT strategies
decisions are aligned with business strategy. As the                      moving on.




                         Fig. 5. THE SIMPLIFIED MAPPING OF TOGAF TO AGILE LIFE CYCLE
    By using the TOGAF enterprise architecture framework                      The case where such suggestion was made was about large
and agile methodology alignment suggested in chapter 4, the               enterprise moving over 2000 servers of different purposes
company facing such decision might significantly reduce the               from outsource to in-house. When using the suggested method
cost and impact of the migration from outsource provider to               of enterprise architecture framework TOGAF being aligned
in-house solution by constantly aligning the enterprise                   with agile methodology the implementation of the change
architecture which TOGAF describes with the constant                      could have taken at least 10 % less effort both in terms of cost
feedback, “inspect and adapt” approach that agile promotes.               and time needed for the change as the comparison of activities

                                                                    102
by using only agile methods and the suggested method                                                  REFERENCES
showed. Also it is worth noting that this situation could have          [1]  M. Pikkarainen, J. Haikara, O. Salo, P. Abrahamsson, J. Still,
been avoided if all the tools and methodologies mentioned in                 Pikkarainen, M., Haikara, J., Salo, O. et al. “Empir Software Eng”
this paper were used: IT and business alignment model for                    (2008) 13: 303. https://doi.org/10.1007/s10664-008-9065-9
overseeing the potential IT infrastructure decisions, TOGAF             [2] Crawford, Broderick & León de la Barra, Claudio & Soto, Ricardo &
for overseeing enterprise architecture and the TOGAF and                     Misra, Sanjay & Monfroy, Eric. (2013). “Agile Software Development:
agile alignment model suggested by this paper which helps to                 It Is about Knowledge Management and Creativity”. ICEIS 2013 -
                                                                             Proceedings of the 15th International Conference on Enterprise
see the potential gaps between agile software development                    Information Systems. 2. 10.5220/0004447802650272.
and business strategy much faster.                                      [3] Federation of EA Professional Organizations, "Common Perspectives
                                                                             on Enterprise Architecture," Architecture and Governance Magazine,
                    VI. CONCLUSIONS                                          Issue 9-4, November 2013 (2013).
    The agile way of working is something that in some                  [4] Dirk Draheim, Gerald Weber “Trends in Enterprise Application
enterprises is new but others are already very far away in                   Architecture” 2nd International Conference, TEAA 2006, Berlin,
implementing this approach into daily decision making                        Germany, November 29 - December 1, 2006, Revised Selected Papers
process both business and software development. These                   [5] Winston Royce, “Managing the Development of Large Software
                                                                             Systems”, Proc. Westcon, IEEE CS Press, 1970, pp. 328-339
decisions need to be constantly aligned with the overall
                                                                        [6] Jeffrey Verret “Implementing Agile Methodology: Challenges and
business strategy to have the effective enterprise run                       Best Practices” University of Oregon (2018)
smoothly. Therefore, it is very important to align the                  [7] Darrell K. Rigby, Jeff Sutherland, Hirotaka Takeuchi “Embracing
enterprise architecture of the organization with agile approach              Agile” Harvard Business Review 2016, pp.40–48
to make the most benefit of enterprise architecture framework           [8] Zamudio, Lizbeth & Aguilar, José & Tripp-Barba, Carolina & Misra,
like TOGAF, which provides the tools to ensure business and                  Sanjay. (2017). A Requirements Engineering Techniques Review in
IT alignment whereas agile provides the speed and the                        Agile Software Development Methods. 683-698. 10.1007/978-3-319-
possibility to adapt to changes. Method, suggested in this                   62404-4_50.
paper, supports utilization of those mentioned benefits from            [9] Henderson, John and Venkatraman, N.” Strategic alignment: A model
both tools and allows to improve not only software                           for organization transformation via information technology” Working
                                                                             Paper 3223-90. Massachusetts Institute of Technology, 1990, 458 p.
development process which agile supports, but also keep the                  ISBN 9781245057264.
alignment between IT and business strategy by constantly                [10] The           TOGAF®             Standard,        Version       9.2
keeping IT projects aligned with business strategy which                     https://www.opengroup.org/togaf
TOGAF supports to make sure right solutions are developed               [11] BPM utils.com Enterprise Agile solution Delivery Framework 2017
and aligned with long term goals of the enterprise. The                 [12] Henry Peyret “EA Methodologies Enlarge To Address The New
proposed approach could be further improved through the use                  Business Landscape”, 2013
on different types of organizations (i.e. financial, trade,                  http://entreprise-agile.com/ForresterEA.pdf
manufacturing) and adapting it in a generalized way for
further usage.




                                                                  103