Docstoc

methodology

Document Sample
methodology Powered By Docstoc
					    <ROBOTIC SIMULATION TO DETECT EXPLOSIVE MATERIAL>
                  Methodology and Work Plan



Version 1.0




Group Id: S11CS6190999C

Supervisor Name : Adnan Asif
                               Table of contents

1. Introduction of the Planning Phase

2. Methodologies

       2.1 Existing Methodologies

       2.2 Adopted Methodology
       2.3 Reasons for choosing the Methodology

3. Work Plan (Use MS Project to create Schedule/Work Plan)




1. Introduction of the Planning Phase


Planning phase is very important phase for the development cycle of a project. Before
starting any project we have to document all the development phase or phases that we
will cover while developing. It is because a successful project always places on
successful Project Planning. This helps us to overcome and reduce all the hurdles or
problems we might face during working on it.

       Different Planning Phases are as follow:

   1. Information Gathering
   2. Planning
   3. Design
   4. Development
   5. Testing and Delivery
   6. Maintenance

Information Gathering:

The first step in designing a successful web site is to gather information. Many things
need to be taken into consideration when the look and feel of your site is created.
This first step is actually the most important one, as it involves a solid understanding of
the company or users it is created for. It involves a good understanding of you – what
your business goals and dreams are, and how the web can be utilized to help you achieve
those goals.

Planning:

Planning is place on second number in project development .it is after requirements
gathering. We use the information gathered from information gathering phase, it is time
to put together a plan for our web site. This is the point where a site map is developed.
The site map is a list of all main topic areas of the site, as well as sub-topics, if
applicable. This serves as a guide as to what content will be on the site, and is essential to
developing a consistent, easy to understand navigational system. The end-user/consumers
of the web site must be kept in mind when designing your site.

Design:

In this phase, communication between both you and your designer is essential to ensure
that the final web site or application will match your needs and taste. It is important that
you work closely with your designer, exchanging ideas, until you arrive at the final
design for your web site.

Development:

The developmental stage is the point where the web site itself is created. At this time,
your web designer will take all of the individual graphic elements from the prototype and
use them to create the actual, functional site.

Testing and Delivery:

At this point, your web designer will attend to the final details and test your web site.
They will test things such as the complete functionality of forms or other scripts, as well
last testing for last minute compatibility issues, ensuring that your web site is optimized
to be viewed properly in the most recent browser versions.


Maintenance:
The development of your web site is not necessarily over, despite the fact that one way to
bring repeat visitors to your site is to offer new content or products on a regular basis.
Most web designers will be more than happy to continue working together with you, to
update the information on your web site.



2. Methodologies

        2.1 Existing Methodologies

   1.   Built and Fix model
   2.   Waterfall model
   3.   V-Shaped water fall model
   4.   Rapid Prototype model
   5.   Incremental models
   6.   Rapid Application Development model (RAD)
   7.   Synchronize and Stabilize model
   8.   Spiral model
   9.   Object Oriented Lifecycle models
            a. extreme Programming
            b. Fountain Mode
            c. Rational Unified process



Build and Fix model


It is also known as “trial and error” approach model. In this model the developer
constructs the product that can be reworked as many times as the error is not removed
and the customer is satisfied. This method is not used for long or big projects. This model
may work for small projects (100 to 200 lines of code) but is totally unsatisfactory for
products of any reasonable size. The cost of build-and fix is actually far greater than the
cost of properly specified and carefully designed product.
                                      Build 1st version




                                         Modify until
                                       customer satisfied




                                           Use it




Waterfall model

It is a sequential development model. The Waterfall Model is a documentation-driven model. It
therefore generates complete and comprehensive documentation and hence makes the
maintenance task much easier. It is modeled after a conventional engineering cycle. In this model
we work on the project in 5 different parts starting from Requirement analysis and ends at
Maintenance. We work on 1 part, complete it and then move towards the 2nd part and so on up to
last part. If some error is occurred in any phase of the development, we have to move back to the
recent development phase to solve that.
This model has a very big draw back of customer feed back. Customer can give only his/her feed
back when the product is finally delivered to him/her. But if customer doesn’t like end product,
we have to work on the product again from start to end until customer is satisfied. Also, it should
be noted that different organizations have different labels for stages.




               Requirements


                               Design


                                         Implementation


                                                     Verification


                                                                  Maintenance




Advantages:

    1. Easy to explain to the user next to the requirements provided.
    2. Stages and activities are well defined and best proper conditions.
    3. Help to plan and schedule the project before starting.

Exceptions:
   1. In waterfall model there is chance of frozen requirements due to the time required
      against the particular phase of waterfall model.
   2. User requirements can be change due to the period of time. Hence may lead to
      failure to satisfy user request.




V-Shaped Waterfall model

        A variant of the waterfall that emphasizes the verification and validation of the
        product testing of the product is planned in parallel with a corresponding phase of
      development. Testing of the product is planned in parallel with a corresponding
      phase of development.




  Requirements                                                              Acceptance



                 High Level                                   Integration
                  Design                                        Testing


                          Low Level                Unit Testing
                           Design


                                      Implementation




Rapid Prototype model

      This model is used to overcome the problem of capturing and understanding the
      user requirements accurately. This model is used to overcome issues related to
      understanding and capturing of user requirements. In this model a mock-up
      application is created “rapidly” to solicit feedback from the user. Once the user
      requirements are captured in the prototype to the satisfaction of the user, a proper
      requirement specification document is developed and the product is developed
      from scratch.

      It must always be kept in mind that the sole purpose of the rapid prototype is to
      capture the client’s needs; once this has been determined, the rapid prototype is
      effectively discarded.
Incremental model

      It is the assessment of waterfall model. In this type we divide the product into
      builds and then solve and integrate them into final full product. Here each sections
      of the project are created and tested separately. The product is designed,
       implemented, integrated and tested as a series of incremental builds. It is a
       popular model software evolution used many commercial software companies and
       system vendor.

       Incremental software development model may be applicable to projects where:
        Software Requirements are well defined, but realization may be delayed.
        The basic software functionalities are required early.




   Analysis (Business
      Modeling)



               Requirement Analysis
                 (Data Modeling)



                                 Designing (Process
                                     Modeling)



                                                        Coding
                                                      (Application)



                                                                      Testing (Phase)




Advantages:
  1. More flexible
  2. Easier to test.

Exceptions:
   1. Each phase in this model is rigid and has no connection with other phases of
      model.
   2. Hence may lead to problem which may cause all requirements to gather again for
      error correction.
Rapid Application Development model (RAD)

RAD is a linear sequential software development process model that emphasis an
extremely short development cycle (60-90 days) using a component based construction
approach. If the requirements are well understood and defines, and the project scope is
constraint, the RAD process enables a development team to create a fully functional
system with in very short time period. Compared to other methodologies, RAD generally
improves user/designer communication, user cooperation, and user commitment, and
promotes better documentation.

The RAD model relies on several teams developing each module or component in
parallel thus reducing the overall life cycle of development.




Synchronize and Stabilize model

This is yet another form of incremental model adopted by Microsoft. In this model,
during the requirements analysis interviews of potential customers are conducted and
requirements document is developed. Once these requirements have been captured,
specifications are drawn up. An alpha release was done for internal testing, a couple of
beta releases took care of a wider testing range outside the company. Finally, a release
candidate leading to the final version, called a gold master, was released to
manufacturing at some point before each release, specifications would be frozen and the
remaining time spent on fixing bugs.
There is heavy emphasis in schedule management and perfection
Spiral model

This model of development combines the features of the prototyping model and the
waterfall model. The spiral model is intended for large, expensive and complicated
projects. The spiral model, also known as the spiral lifecycle model, is a systems
development lifecycle (SDLC) model used in information technology (IT). The main
purpose of his model to overcome the threat of Risk in the software product development.
It is a software development process combining elements of both design and prototyping-
in-stages, in an effort to combine advantages of top-down and bottom-up concepts.
Advantages:
  1. In the first step estimate the budget cost and other effecting features of this model
  2. Most capable of handling events(change of data)
  3. Most Software Engineers focuses on this model

Exceptions:
   1. Instruction set consists of high level instructions.
   2. Applicable on limited platforms.
   3. Risk assessment may cost.



Object Oriented Lifecycle models

Object Modeling is based on identifying the objects in a system and their
interrelationships. Once this is done, the coding of the system is done. Object modeling is
somewhat similar to the traditional approach of system designing, in that it also follows a
sequential process of system designing but with a different approach.


      Extreme programming

It is a somewhat controversial new approach. XP (Extreme Programming) is an approach
to software development that places emphasis upon customer satisfaction. To achieve
this, XP uses an extended development team that involves managers and customers
working closely with the developers. XP is designed to empower developers to
confidently respond to changing customer requirements, even late in the life cycle. The
methodology takes its name from the idea that the beneficial elements of traditional
software engineering practices are taken to "extreme" levels, on the theory that if some is
good, more is better.




                      Architectural       User stories
                         spike



                        Release              Iteration           Acceptance
                        Planning                                    test


                          Spike                                  Small release




      Fountain Programming

Fountain model is another object-oriented lifecycle model. It is explained in the
following diagram.
Maintenance                   Evaluation




               Operation




              Testing and
              Integration




                 Coding




                 Design




              Requirements
              Specification



                Analysis
       In this model the circles representing the various phases overlap, explicitly
       representing an overlap between activities. The arrows within a phase represent
       iteration within the phase. The maintenance cycle is smaller, to symbolize
       reduced maintenance effort when the object oriented paradigm is used.


      Rational Unified Process

RUP is not a single concrete prescriptive process, but rather an adaptable process
framework, intended to be tailored by the development organizations and software
project teams that will select the elements of the process that are appropriate for their
needs. In this model a software product is designed and built in a succession of
incremental iterations. It incorporates early testing and validation of design ideas and
early risk mitigation. The horizontal dimension represents the dynamic aspect of the
process. This includes cycles, phases, iterations, and milestones. The vertical dimension
represents the static aspect of the process described in terms of process components
which include activities, disciplines, artifacts, and roles. The process emphasizes that
during development, all activities are performed in parallel, however, and at a given time
one activity may have more emphasis than the other.




       2.2 Adopted Methodology

The adopted methodology for the required project development is Waterfall and Spiral
Model.




       2.3 Reasons for choosing the Methodology
At the structure of waterfall model we can find easily that waterfall is a type of very
simple model for development purpose. The phases in the waterfall model consist of
Requirement, Design, Verification, Implementation and Maintenance. There so no
prototype concept. Each and every phase after successful working moves to another
phase. In this model one thing should be kept in mind that there in no Iterative ness.

Basically iterative ness is used for better software development purpose. It leads us to
make changes every where in the development process. There is no limitation applies
when a model provide Iterative feature in it. For that we have chosen the Spiral Model.

Spiral Model provides us the Prototype feature which is available in this model. Each and
every stage consists of prototyping and design process. This approach enables us to
overcome all the issues relating to the development process using start to bottom and
bottom to top approach.

The thing that should be remembered that:

   1. In the water fall model the process flows from top to bottom like a flow of water.
      But any new changes cannot be incorporated in the middle of the project
      development process.

   2. Whereas the spiral model is best suited for projects associated with risks.

   3. Water fall model is cascade in nature, because it goes from one stage to the other
      and it cannot come back to the previous stage.

   4. While in spiral model the concept of waterfall model is combined with the
      iterations.


And hence two model Waterfall and Spiral combined leads to great advantage.



3. Work Plan (Use MS Project to create Schedule/Work Plan)

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:8
posted:11/8/2012
language:Unknown
pages:18