Database Reference
In-Depth Information
approach to software development. For example, we can start the
analysis of increment one in January, increment two in June, and
increment three in September. Just when increment three starts up,
we are at the testing stage of increment one and the coding stage of
increment two.
Joint application development (JAD) : JAD is more of a technique than a
complete methodology. It can be utilized as part of any of the other
methodologies discussed here. The technique consists of one or more
end users who are then folded into the software development team.
Instead of an adversarial software-developer-end-user dynamic,
the effect is to have the continued, uninterrupted attention of the
person(s) who will ultimately be using the system.
Reverse engineering : This technique is used to (1) understand a system
from its code, (2) generate documentation base on the code, and (3)
make desired changes to the system. Competitive software compa-
nies often try to reverse engineer their competitor's software.
Reengineering : Business goals change over time. Software must change
to be consistent with these goals. Reengineering utilizes many of the
techniques already discussed here. Instead of building a system from
scratch, the goal of reengineering is to retrofit an existing system to
new business functionality.
Object oriented : Object-oriented analysis (OOA), object-oriented design
(OOD), and object-oriented programming (OOP) are very different
from what we've already discussed. In fact, you will need to learn a
whole new vocabulary as well as new diagramming techniques.
Agile : Agile software development is a group of software development
methods based on iterative and incremental development, where
requirements and solutions evolve through collaboration between
self-organizing, cross-functional teams. It promotes adaptive plan-
ning, evolutionary development and delivery, and a time-boxed iter-
ative approach while also encouraging rapid and flexible response
to change. It is a conceptual framework that promotes foreseen tight
interactions throughout the development cycle.
he topic Agile Manifesto introduced the term in 2001. Since then,
the Agile Movement, with all its values, principles, methods, practices,
tools, champions, practitioners, philosophies, and cultures, has signifi-
cantly changed the landscape of the modern software engineering and
commercial software development in these Internet times. Interestingly,
Search WWH ::




Custom Search