option
Questions
ayuda
daypo
search.php
ERASED TEST, YOU MAY BE INTERESTED ON sof-main-evol-4-p1.
COMMENTS STATISTICS RECORDS
TAKE THE TEST
Title of test:
sof-main-evol-4-p1.

Description:
sof-main-evol-4-p1.

Author:
sof-main-evol-4-p1.
Other tests from this author

Creation Date:
16/01/2024

Category: Others

Number of questions: 27
Share the Test:
New CommentNuevo Comentario
No comments about this test.
Content:
The goal of reengineering is to: • ____________ the existing software system artifacts, namely, specification, design, implementation, and documentation, and • improve the functionality and quality attributes of the system. عارف مش عارف .
Software systems are reengineered by keeping ___ or more of the following four general objectives in mind: • Improving ___________. • _________ to a new technology. • Improving quality. • Preparing for functional enhancement. عارف مش عارف .
Abstraction and Refinement are key concepts used in software development, and both the concepts are equally useful in ___________. عارف مش عارف .
It may be recalled that abstraction enables software maintenance personnel to reduce the complexity of understanding a system by: (i) focusing on the more significant information about the system; and (ii) Hiding the irrelevant details at the moment. On the other hand, refinement is the __________ of abstraction. عارف مش عارف .
Principle of abstraction: The level of abstraction of the representation of a system can be gradually ____ by successively replacing the details with abstract information. By means of abstraction one can produce a view that focuses on selected system characteristics by hiding information about other characteristics. Principle of refinement: The level of abstraction of the representation of the system is gradually _____ by successively replacing some aspects of the system with more details. عارف مش عارف .
A new software is created by going downward from the top, highest level of abstraction to the bottom, lowest level. This downward movement is known as _______ engineering. Forward engineering follows a sequence of activities: formulating concepts about the system to identifying requirements to designing the system to _____________________. On the other hand, the upward movement through the layers of abstractions is called _______ engineering. عارف مش عارف .
Reverse engineering of software systems is a process comprising the following steps: (i) analyze the software to determine its __________ and the _______ among the components, (ii) represent the system at a ______ level of abstraction or in another form. _________ is an example of Reverse Engineering, in which object code is translated into a high-level program. عارف مش عارف .
The concepts of abstraction and refinement are used to create models of software development as sequences of phases, where the phases map to specific levels of abstraction or refinement, The four levels are: _________, _________, _________ _________. The refinement process: ___? ! what? ! what & how? ! how? The abstraction process: how? !___ & how? ! what? ! why? عارف مش عارف .
An optional principle called alteration underlies many reengineering methods. Principle of alteration: The making of some changes to a system representation is known as alteration. Alteration does not involve any change to the _____________, and it does not involve __________, deletion, and addition of information. Reengineering principles are represented by means of arrows. Abstraction is represented by an ___-arrow, alteration is represented by _________ arrow, and refinement by a ___-arrow. The arrows depicting refinement and abstraction are slanted, thereby indicating the increase and decrease, respectively, of system information. It may be noted that _________ is nonessential for reengineering. عارف مش عارف .
A General Model For Software Reengineering The reengineering process accepts as input the existing code of a system and produces the code of the renovated تم تجديده system. The reengineering process may be as straightforward as translating with a tool the source code from the given language to source code in another language. For example, a program written in BASIC can be translated into a new program in C. The reengineering process may be very complex as explained below: • Recreate a ____ from the existing source code. • Find the _______ of the system being reengineered. • Compare the existing requirements with the new ones. • Remove those _______ that are not needed in the renovated system. • Make a new ____ of the desired system. • Code the new system. عارف مش عارف.
The model reengineering is a sequence of three activities: – 1-_____ engineering, _____, and 3-_____ engineering – strongly founded in three principles, namely, _______, _________, and _______. عارف مش عارف .
A visual metaphor called horseshoe, It is to describe a three-step architectural reengineering process. Three distinct segments of the horseshoe are the left side, the top part, and the right side. Those three parts denote the three steps of the reengineering process. عارف مش عارف .
A General Model For Software Reengineering Cont. Now, we are in a position to re-visit three definitions of reengineering. • The definition by Chikofsky and Cross II: Software reengineering is the _______ and _______ of an operational system to represent it in a new form and to obtain a new implementation from the new form. Here, a new form means a representation at a higher level of abstraction. • The definition by Byrne: Reengineering of a software system is a process for creating a new software from an ________ so that the new system is better than the original system in some ways. • The definition by Arnold: Reengineering of a software system is an activity that: (i) improves the ________ of the software system, or (ii) raises the _______ levels of the software, namely, performance, reusability, and maintainability. عارف مش عارف .
In summary, it is evident that reengineering entails: (i) the __________ of a more abstract view of the system by means of some reverse engineering activities, (ii) the __________ of the abstract view, and (iii) __________ of the system in a new form by means of forward engineering activities. عارف مش عارف .
Reengineering = Reverse engineering + Δ + Forward engineering. The element “Δ” captures _______ made to the original system. عارف مش عارف .
Two major dimensions of alteration are: change in __________ and change in ____________ technique. عارف مش عارف .
A change in functionality comes from a change in the __________ rules, Next, concerning a change of implementation technique, an end-user of a system never knows if the system is implemented in an ____________ or a ___________. عارف مش عارف .
A General Model For Software Reengineering Cont. Another common term used by practitioners of reengineering is rehosting. Rehosting means reengineering of source code without _______ or reduction of features in the transformed targeted source code. Rehosting is most effective when the user is ______ with the system’s functionality, but looks for better ______ of the system. Examples of better qualities are improved efficiency of execution and ________________. عارف مش عارف .
Types of Change Based on the type of changes required, system characteristics are divided into groups: ____ , ____, ____, and ____. عارف مش عارف .
_______: Implementation characteristics of the source program are changed by re-coding it. Source-code level changes are performed by means of rephrasing and program translation. In the latter approach, a program is transformed(translation) into a program in a _______ language. On the other hand, rephrasing keeps the program in the ________ language Examples of translation scenarios are compilation, __________, and _________. Examples of rephrasing scenarios are normalization, optimization, refactoring, and __________. عارف مش عارف .
Redesign: The design characteristics of the software are altered by re-designing the system. Common changes to the software design include: (i) ____________ the architecture; (ii) _______ the data model of the system; and (iii) ___________ a procedure or an algorithm with a more efficient one. عارف مش عارف .
Respecify: This means changing the _________characteristics of the system in two ways: (i) change the ____ of the requirements, and (ii) change the _____ of the requirements. عارف مش عارف .
Rethink: Re-thinking a system means manipulating the concepts embodied in an existing system to create a system that operates in a ____________. It involves changing the conceptual characteristics of the system, and it can lead to the system being changed in a _________ way. Moving from the development of an ordinary cellular phone to the development of smartphone system is an example of Re-think. عارف مش عارف .
Rewrite strategy: This strategy reflects the principle of _______ . By means of alteration, an operational system is transformed into a new system, while preserving the ________ level of the original system. For example, the Fortran code of a system can be rewritten in the C language. عارف مش عارف .
Three strategies that specify the basic steps of reengineering are ______, _____, and _____ عارف مش عارف .
Rework strategy: The rework strategy applies all the three principles. Let the goal of a reengineering project is to replace the ______________, namely ____, with more commonly used structured constructs, say, a “for” loop. A classical, rework strategy based approach is as follows: • Application of abstraction: By parsing the code, generate a ___________ for the given system. • Application of alteration: Apply a _________ algorithm to the control-flow graph to produce a structured control-flow graph. • Application of refinement: Translate the new, structured control-flow graph back into the _________ programming language. عارف مش عارف .
Replace strategy: The replace strategy applies two principles, namely, abstraction and refinement. To change a certain characteristic of a system: (i) the system is reconstructed at a ________ of abstraction by hiding the details of the characteristic; and (ii) a suitable representation for the target system is generated at a lower level of abstraction by applying refinement. Let us reconsider the GOTO example. By means of abstraction, a program is represented at a higher level without using control flow concepts. Next, by means of refinement, the system is represented at a lower level of abstraction with a new structured control flow. عارف مش عارف .
Report abuse