Karten 116 Karten
Lernende 1 Lernende
Sprache English
Stufe Universität
Erstellt / Aktualisiert 15.09.2020 / 16.01.2021
Lizenzierung Kein Urheberrechtsschutz (CC0)
0 Exakte Antworten 116 Text Antworten 0 Multiple Choice Antworten
Fenster schliessen

What percentage of resources is spent on initial software development compared to their maintanace?

  • 25% Initial Development
  • 75% Maintanance

Maintanance typically claims 40-80% of all project costs, usually toward the higher end (Barry Boehm)

Fenster schliessen

Draw the waterfall model of Royce:

Lizenzierung: Keine Angabe
Fenster schliessen

Give a short summary of the history of Software Evolution:

  • 1968: First conference on Software engineering, organized by the NATO Science Committee, with the goal to establish sound engineering principles in order to obtain reliable, efficient and economically viable software.
  • 1970: Royce proposes the waterfall life-cycle process for software development. Mantenance is seen as the final phase of the software lifecycle ( with only bug fixes and minor adjustments). did not account for the need to add funcionality due to new and changed requirements. The model had a strong and long influence on the industrial practice of software development.
  • Late 1970's: First atempt toward a more evolutionary process model. Identification of new activitiesm, such as impact analysis and change propagatino. In the sam eperiod, formulation of "Laws of software evolution" by Lehman
  • 1990's: General acceptance evolution, formalization and development of evolutionary processes (Gilb's evolutionary development, boehm's spiral model, Bennet and Rajichs' staged model, agile approaches).


Software evolution is a crucial ingredient of agile software development (iterative and incremental development, embracing change!)

Fenster schliessen

Describe the to dimensions of Software Evolution:

  • What and Why? Software evolution as a scientific discipline which studies the nature of the sotware evolution phenomenon to understand its driving factors. Keiy interests include the formulation and refinement of fundamental theories and laws of software evolution.
  • How? Software evolution as an engineering discipline which studies more pragmatic aspects that aid software developers and project managers in their day-tp-day tasks. Key interests include the development and validation of tools and techniques to guide, implement and control software evolution.
Fenster schliessen

What are the two main activiteis of software evolution?

- Reverse Engineering

- Re-engineering

Fenster schliessen

What is Reverse Engineering about?

Activity needed when trying to understand the architecture of behavior of a large software system, when the only reliable information is the source code.

Aims at building higher-level, more abstract, software models from the source code.

Fenster schliessen

What is re-engineering about?

Activity needed when trying to re-structure a legacy system. In other words, systems that are still valuable, but are difficult to maintain.

Aims at producing a new system that is more evolvable.

Fenster schliessen

Draw the advanced Royce model which includes the maintanence part:

Lizenzierung: Keine Angabe