Sei sulla pagina 1di 7

Assignment No 1: What is Agile and

Agile Software..??

What is Agile?
The ability to create and respond to change in order to succeed in an
uncertain and turbulent environment.

What is Agile Software Development?


Agile Software Development is an umbrella term for a set of methods
and practices based on the values and principles expressed in the Agile
Manifesto.

Solutions evolve through collaboration between self-organizing, cross-


functional teams utilizing the appropriate practices for their context.

A Short History of Agile


In the late 1990’s, several methodologies began to gain increasing
public attention, each having a different combination of old and new
ideas.

These methodologies emphasized close collaboration between the


development team and business stakeholders; frequent delivery of
business value, tight, self-organizing teams; and smart ways to craft,
confirm, and deliver code.
The term "Agile" was applied to this collection of methodologies in
early 2001 when 17 software development practitioners gathered in
Snowbird, Utah to discuss their shared ideas and various approaches to
software development.

Assignment No 2: What is Requirement


engineering and software engineering..??

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.

Assignment No 3: Types of Coupling and


Cohesion..??

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:

A module having logical cohesion if there are some logical relationship


between elements of a modules i.e. elements of a module performs the
operation.

Temporal cohesion:-

It is same as logical cohesion except that the element must be executed


in same time. Set of function responsible for initialization, startup, the
shutdown of the same process.

Procedural cohesion:

It contains that belongs to a procedural unit in which a certain


sequence of steps has to be carried out in a certain order for achieving
an objective.

Communicational cohesion:

A module is said to have Communicational cohesion if all function of


module refers to an update the same data structure.

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:

It is the strongest cohesion in a functional bound module, all elements


of the module are related to performing a single function.

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.

Assignment No 4: How and when Iterations


are perform in Inception Phase..??

A phase is the span of time between two major milestones of the


process in which a well-defined set of objectives are met, artifacts are
completed, and decisions are made whether to move into the next
phase.

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.

Potrebbero piacerti anche