You are on page 1of 2

1. What is Testing? What are its Types?

Make 5-10 Test Cases for Testing ATM Machine


and Library Software?
Ans:
Software Testing is a method to check whether the actual software product matches expected
requirements and to ensure that software product is defect free. It involves execution of
software/system components using manual or automated tools to evaluate one or more
properties of interest. The purpose of software testing is to identify errors, gaps or missing
requirements in contrast to actual requirements.
Types of Software Testing:
● Certification Test: Accept or reject (binary decision) an acquired component for a
given target failure intensity.
● Feature Test: A single execution of an operation with interaction between
operations minimized.
● Load Test: Testing with field use data and accounting for interactions among
operations.
● Regression Test: Feature tests after every build involving significant change, i.e.,
check whether a bug fix worked.
ATM Test Cases
2. Explain COCOMO Model in detail? Explain with 2 Examples?
Cocomo (Constructive Cost Model) is a regression model based on LOC, i.e number of Lines of
Code. It is a procedural cost estimate model for software projects and often used as a process
of reliably predicting the various parameters associated with making a project such as size,
effort, cost, time and quality. It was proposed by Barry Boehm in 1970 and is based on the study
of 63 projects, which make it one of the best-documented models.
The key parameters which define the quality of any software products, which are also an
outcome of the Cocomo are primarily Effort & Schedule:
● Effort: Amount of labor that will be required to complete a task. It is measured in
person-months units.
● Schedule: Simply means the amount of time required for the completion of the
job, which is, of course, proportional to the effort put. It is measured in the units
of time such as weeks, months.
Different models of Cocomo have been proposed to predict the cost estimation at different
levels, based on the amount of accuracy and correctness required. All of these models can be
applied to a variety of projects, whose characteristics determine the value of constant to be
used in subsequent calculations. These characteristics pertaining to different system types are
mentioned below.
Boehm’s definition of organic, semi detached, and embedded systems:
● Organic – A software project is said to be an organic type if the team size
required is adequately small, the problem is well understood and has been
solved in the past and also the team members have a nominal experience
regarding the problem.
● Semi-detached – A software project is said to be a Semi-detached type if the vital
characteristics such as team-size, experience, knowledge of the various
programming environments lie in between that of organic and Embedded. The
projects classified as Semi-Detached are comparatively less familiar and difficult
to develop compared to the organic ones and require more experience and better
guidance and creativity. Eg: Compilers or different Embedded Systems can be
considered of Semi-Detached type.
● Embedded – A software project requiring the highest level of complexity,
creativity, and experience requirement falls under this category. Such software
requires a larger team size than the other two models and also the developers
need to be sufficiently experienced and creative to develop such complex
models.
All the above system types utilize different values of the constants used in Effort
Calculations.
Types of Models:
● Basic COCOMO Model: can be used for quick and slightly rough calculations of
Software Costs. Its accuracy is somewhat restricted due to the absence of
sufficient factor considerations.
● Intermediate COCOMO Model: takes these Cost Drivers into account
● Detailed COCOMO Model: additionally accounts for the influence of individual
project phases, i.e
3. What is Basic Control Structure? What are its Types, and explain with examples?
Control Structures are just a way to specify flow of control in programs. Any algorithm or
program can be more clear and understood if they use self-contained modules called as logic or
control structures. It basically analyzes and chooses in which direction a program flows based
on certain parameters or conditions. There are three basic types of logic, or flow of control,
known as:
● Sequence logic, or sequential flow
● Selection logic, or conditional flow
Single alternative
Double alternative
Multiple alternative
● Iteration logic, or repetitive flow
4. Highlight the concept of Software Size? Explain details with examples and with 1
Functioning example?
Software sizing or Software size estimation is an activity in software engineering that is used to
determine or estimate the size of a software application or component in order to be able to
implement other software project management activities (such as estimating or tracking). Size is
an inherent characteristic of a piece of software just like weight is an inherent characteristic of a
tangible material.

You might also like