research paper on framework comparison.pdf

These two domains were given the highest priority by

This preview shows page 18 out of 78 pages.

customisability. These two domains were given the highest priority by Everest, see figure 11. The reasoning behind the high priority for these two domains is discussed in section 7.3. We will first discuss features, which are the basis for both domains. Following we will discuss customisability and modifiability. 4.1 Features Modifiability and customisability are two concepts closely related. First, we will explain what we see as customisability and what we see as modifiability. We see both concepts as changes in the features of the application. Where we define feature [Cza00] as: “A property of a domain concept, which is relevant to some domain stakeholder and is used to discriminate between concept instances.” In [Bat05] features are defined as: “A feature is an increment in program functionality.” Another definition found in [Eis01] is: “A feature is a realized (functional as well as non-functional) requirement.” This is rather vague, but does add non-functional requirements to features. From these definitions, we can infer the following characteristics: Relevant to a stakeholder Realised functional and non-functional requirements From these characteristics, we can define features as: ”Features are realized requirements, functional and non-functional, relevant to a stakeholder.” From these characteristics, we can conclude that features describe the entire system. Any change in the code or configuration will result in a change in the features. Therefore, any modification or customization will be visible by a change in features or their behaviour. Features are realized requirements, functional and non-functional, relevant to a stakeholder. 4.1.1 Feature binding time Both customisability and modifiability are visible by changes in the features or their behaviour, but how do we separate the two. The difference is the point in time at which the change of feature is bound. By bound, we mean how do we make the actual change happen, can we do this after the product is released by changing some configuration parameter? Alternatively, does the source code need to be changed in order to encompass the change? This shows similarities with the definition of timeline variability [Dol03]: “Certain features can be bound at several stages of the life-cycle.” From this definition, we can derive the difference between modifiability and customisability. The following figure displays what stages we define as modifiability and what stages we define as customisability. Figure 3: Binding timeline The field of modifiability only holds source code. Where source code is changes to the general programming language code itself. Customisability holds build time, installation time, start-up time and the running code. With build time, we mean build parameters if a tool like Apache Ant [Apa07] is used. With installation time, we mean parameters that are given during installation; this can be the users name and initials for a word processor to system information for an operating system. With start-up time, we mean the time when the application is started. For example in the Apache
Image of page 18
You've reached the end of this preview.
  • Winter '19
  • jollet
  • Domain-specific language, Domain-specific modeling, domain analysis, general-purpose programming language, Anton Gerdessen

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern