Saturday, 2 February 2013

SDLC

SDLC: Software Development Life Cycle

The following are the actives of the SDLC

1) System engineering and modeling

2) Software require analysis

3) Systems analysis and design

4) Code generation

5) Testing

6) Development and Maintenance

System Engineering and Modeling

In this process we have to identify the projects requirement and main features proposed in the
application. Here the development team visits the customer and their system. They investigate
the need for possible software automation in the given system. By the end of the investigation
study. The team writes a document that holds the specifications for the customer system.

Software Requirement Analysis

In this software requirements analysis, firstly analysis the requirement for the proposed system.
To understand the nature of the program to built, the system engineer must understand the
information domain for the software, as well as required functions, performance and the
interfacing. From the available information the system engineer develops a list of the actors
use cases and system level requirement for the project. With the help of key user the list of use
case and requirement is reviewed. Refined and updated in an iterative fashion until the user is satisfied that it represents the essence of the proposed system.

Systems analysis and design

The design is the process of designing exactly how the specifications are to be implemented. It
defines specifically how the software is to be written including an object model with properties
and method for each object, the client/server technology, the number of tiers needed for the
package architecture and a detailed database design. Analysis and design are very important in
the whole development cycle. Any glitch in the design could be very expensive to solve in the
later stage of the software development.

Code generation

The design must be translated into a machine readable form. The code generation step performs
this task. The development phase involves the actual coding of the entire application. If design
is performed in a detailed manner. Code generation can be accomplished with out much
complicated. Programming tools like compilers, interpreters like c, c++, and java are used for
coding .with respect to the type of application. The right programming language is chosen.

Testing

After the coding. The program testing begins. There are different methods are there to detect the
error in coding .different method are already available. Some companies are developed they own
testing tools

Development and Maintenance

The development and maintenance is a staged roll out of the new application, this involves
installation and initial training and may involve hardware and network upgrades. Software will
definitely undergo change once it is delivered to the customer. There are many reasons for the
change. Change could be happen because of some unexpected input values into the system.
In addition, the changes in the system could be directly affecting the software operations. The
software should be developed to accommodate changes that could happen during the post
implementation period.



Water Fall Model:

For small projects, routine type of projects & well known requirements we preferred water fall model. It contains all SDLC phases, it is oldest model.






Disadvantages: -

1). During development phase it won’t allow any change request.
            2). There is no feedback mechanism between phases.


Proto type Model: -

                                           Information Gathering
                                                          
                                                     Analysis
                                                           
                                                       Design   → Develop prototype →   Given Demo to   

                                                                                                                      Client
                                                                                                                          
                                                                                                                          
                                                                                  Collect Feedback ← No   Yes
                                                                                                                             Coding
                                                                                                                                    
                                                                                                                              Testing
                                                                                                                                   
                                                                                                         Release & Maintenance              
In general we preferred this model when requirements are known but the implementation unknown. In this approach we develop proto types & we give demo to the client based on feedback we follow remaining SDLC phases.


Disadvantages: - Proto types are not reusable.

Note: - Proto type is a sample application without functionality.

 
V – MODEL:
The V-model represents a software development process (also applicable to hardware development) which may be considered an extension of the waterfall model. Instead of moving down in a linear way, the process steps are bent upwards after the coding phase, to form the typical V shape. The V-Model demonstrates the relationships between each phase of the development life cycle and its associated phase of testing. The horizontal and vertical axes represents time or project completeness (left-to-right) and level of abstraction (coarsest-grain abstraction uppermost), respectively.


VERIFICATION AND VALADATION MODEL:

1.      What does verification do?
Ans:
1.       Verification finds faults or errors
2.      It is the process of ensuring that the product is built right
3.      Verification is set of activities performed to determine the deliverable
3.1    Is correctly  derived from the inputs to the stage that creates it
3.2    Is Internally consistent
3.3    Confirms to standards
2.      What does validation do?
Ans: Validation ensures that
1.      The business case, requirements and user expectations of product are fulfilled
2.      The output deliverables satisfy the requirements specified in the input deliverables of previous stage.
 
. What are the differences between Verification and Validation?

1. Verification checks the product is being built right, Validation Checks the right product is being built
2. Verification Uses mechanism to help determine whether appropriate standards have been implemented, and if the product derives correctly from inputs, Validation uses mechanism to help determine whether product satisfies the intended use.



Analytical Questions

Analytical Questions:

1.Why is a manhole cover round?

2. If you had an infinite supply of water and a 5 quart and 3 quart pail, how would you
measure exactly 4 quarts?

3. You have 5 jars of pills. Each pill weighs 10 gram, except for contaminated pills
contained in one jar, where each pill weighs 9 gm. Given a scale, how could you tell
which jar had the contaminated pills in just one measurement?

4. If you are on a boat and you throw out a suitcase, will the level of water increase or
decrease?

5. How many times a day a clock's hands overlap?

6. One train leaves Los Angeles at 15mph heading for New York. Another train leaves
from New York at 20mph heading for Los Angeles on the same track. If a bird, flying
at 25mph, leaves from Los Angeles at the same time as the train and flies back and forth
between the two trains until they collide, how far will the bird have traveled?

7. There are 3 ants at 3 corners of a triangle; they randomly start moving towards another
corner. What is the probability that they don't collide?

8. If you look at a clock and the time is 3:15, what is the angle between the hour and the
minute hands? (The answer to this is not zero!)

9. How would you weigh a plane without using scales

10. Why are beer cans tapered at the top and bottom?

11.You have 8 balls. One of them is defective and weighs less than others. You have
a balance to measure balls against each other. In 2 weightings how do you find the
defective one?

12. There are 3 baskets. One of them have apples, one has oranges only and the other has
mixture of apples and oranges. The labels on their baskets always lie. (i.e. if the label
says oranges, you are sure that it doesn’t have oranges only, it could be a mixture) The
task is to pick one basket and pick only one fruit from it and then correctly label all the
three baskets.

13. Given a rectangular (cubical for the puritans) cake with a rectangular piece removed (any
size or orientation), how would you cut the remainder of the cake into two equal halves
with one straight cut of a knife?

14. If you have two buckets, one with red paint and the other with blue paint, and you take
one cup from the blue bucket and poor it into the red bucket. Then you take one cup
from the red bucket and poor it into the blue bucket. Which bucket has the highest ratio
between red and blue? Prove it mathematically.

15. You have a bucket of jelly beans. Some are red, some are blue, and some green. With
your eyes closed, pick out 2 of a like color. How many do you have to grab to be sure you
have 2 of the same?

16. You are given a scale which you are to use to measure eight balls. Seven of these balls
have the same weight: the eight ball is heavier than the rest. What is the minimum
number of weighs you could perform to find the heaviest of the eight balls?

17. Pairs of primes separated by a single number are called prime pairs. Examples are 17 and
19. Prove that the number between a prime pair is always divisible by 6 (assuming both
numbers in the pair are greater than 6). Now prove that there are no 'prime triples.'

18. There is a room with a door (closed) and three light bulbs. Outside the room there are
three switches, connected to the bulbs. You may manipulate the switches as you wish, but
once you open the door you can't change them. Identify each switch with its bulb.

19. There are 4 women who want to cross a bridge. They all begin on the same side. You
have 17 minutes to get all of them across to the other side. It is night. There is one
flashlight. A maximum of two people can cross at one time. Any party, who crosses,either 1 or 2 people, must have the flashlight with them. The flashlight must be walked
back and forth; it cannot be thrown, etc. Each woman walks at a different speed. A pair
must walk together at the rate of the slower woman's pace.

Woman 1: 1 minute to cross
Woman 2: 2 minutes to cross
Woman 3: 5 minutes to cross
Woman 4: 10 minutes to cross

For example: if Woman 1 and Woman 4 walk across first, 10 minutes have elapsed When they get to the other side of the bridge. If Woman 4 then returns with the flashlight,
a total of 20 minutes have passed and you have failed the mission. What is the order
required to get all women across in 17 minutes? Now, what's the other way?