Академический Документы
Профессиональный Документы
Культура Документы
Agile Software..??
What is Agile?
The ability to create and respond to change in order to succeed in an
uncertain and turbulent environment.
Requirement Engineering
Requirements analysis, also called requirements engineering, is the
process of determining user expectations for a new or modified
product. These features, called requirements, must be quantifiable,
relevant and detailed. In software engineering, such requirements are
often called functional specifications. Requirements analysis is an
important aspect of project management.
Software Engineering
Software engineering is a detailed study of engineering to the design,
development and maintenance of software. Software engineering was
introduced to address the issues of low-quality software projects.
Problems arise when a software generally exceeds timelines, budgets,
and reduced levels of quality. It ensures that the application is built
consistently, correctly, on time and on budget and within requirements.
The demand of software engineering also emerged to cater to the
immense rate of change in user requirements and environment on
which application is supposed to be working.
Cohesion:
To maximize the relationship between elements of same modules.
Coheion is the concept come in sight. The cohesion of a module
represents how tightly internal element of a module are bound with
one another. Greater the cohesion of each module, lower will be the
coupling between the modules.
Types of Cohesion:
Coincidental cohesion
Logical cohesion
Temporal cohesion
Procedural cohesion
Communicational cohesion
Sequential cohesion
Functional cohesion
Coincidental cohesion: This occurs when there is no relationship
among elements of a module. It performs a set of tasks that are related
to each other very loosely. The modules contain a random collection of
function.
Logical cohesion:
Temporal cohesion:-
Procedural cohesion:
Communicational cohesion:
Sequential cohesion:
A module is said to have sequential cohesion if element module from
different parts of the sequence. When the output from one element of
the sequence is input to the next element of a sequence.
Functional cohesion:
Coupling:
Coupling effectively represents how the subsystems can be
connected with other subsystem or with the outside world.
Coupling is a measure of interconnection among subsystems in a
program structure.
Coupling depends on the interface complexity between
subsystems.
The goal is to strive for the possible coupling among the
subsystems in software design.
The property of good coupling is that it should reduce or avoid
change impact and ripple effects.it should also reduce the cost in
program changes, testing and maintenance.
Various type of coupling:
Types of coupling:
Data coupling:
Control coupling:
Common coupling:
Content coupling:
Data coupling: The data coupling is possible by parameter passing or
data interaction.
Control coupling: The modules share related control data in control
coupling.
Common coupling: In common coupling common data or global
data is shared among the modules.
Content coupling: Content coupling occurs when one module makes
use of data or control information maintained in another module.
1. Inception Establish the vision, scope, and initial plan for the
project
2. Elaboration Design, implement, and test a sound architecture and
complete the project plan
3.Construction Build the first operational system version
4. Transition Deliver the system to its end users
Inception and elaboration focus more on the creative and engineering
activities of the development life cycle, while construction and
transition focus more on production activities. Within each phase are a
number of iterations. An iteration represents a complete development
cycle, from requirements capture in analysis to implementation and
testing, that results in an executable release.
Iterations
Each phase in the Rational Unified Process can be further broken down
into iterations. An iteration is a complete development loop resulting in
a release (internal or external) of an executable product constituting a
subset of the final product under development, which then is grown
incrementally from iteration to iteration to become the final system.
This is an example Inception Phase iteration. It includes the activities
typically performed during a single iteration in the inception phase. The
inception phase is of significance primarily for new development
efforts, in which there are significant business and requirements risks
which must be addressed before the project can proceed. For projects
focused on enhancements to an existing system, the inception phase is
more brief, but is still focused on ensuring that the project is both
worth doing and possible to do.