Sei sulla pagina 1di 8

Software Engineering Question and Answers

1. Define software engineering?

According to IEEE, Software engineering is the application of a systematic, disciplined,

quantifiable approach to the development, operation and maintenance of sofware.

2. What are the categories of software?

 System software

 Application software

 Embedded software

 Web Applications

 Artificial Intelligence software

 Scientific software.

3. Define testing?

Testing is a process of executing a program with the intent of finding of an error.

4. What is white box testing?

White box testing is a test case design method that uses the control structure of the

procedural design to derive test cases. It is otherwise called as structural testing.

5. What is Black box testing?

Black box testing is a test case design method that focuses on the functional

requirements of the software. It is otherwise called as functional testing.

6. What is verification and validation?

Verification refers to the set of activities that ensure that software correctly

implements a specific function.

Validation refers to the set of activities that ensure that the software that has been

built is traceable to customer requirements.

7. What is debugging?

Debugging is the process that results in the removal of error. It occurs as a

consequence of successful testing.

8. Define cyclomatic complexity?

Cyclomatic complexity is a software metric that provides a quantitative measuer of the

logical complexity of a program.

9. What is error tracking?

Error tracking is an activity that provides a means for assessing the status of a current

project.

10. What are case tools?

Computer Aided Software Engineering - CASE tools assist software engineering

managers and practitioners in evey activity associated with the software process. They
automate project management activities manage all work products produced

throughout the process and assist the engineers in their analysis, design, coding and

test work.

11. What is data design?

Data design transforms the information domain model created during analysis into the

data structures that will be required to implement the software.

12. Define cohension and coupling?

Cohension is a measure of the relative functional strength of a module.

Coupling is a measure of the relative interdependence among modules.

13. What are the different types of cohension?

There are different types of cohension are

 Coincidental cohension

 Logical cohension

 Temporal cohension

 Procedural cohension

 Communicational cohension

14. What are the different types of coupling?

There are different types of coupling are

 Data coupling

 Stamp coupling

 Control coupling

 External coupling

 Common coupling

 Content coupling

15. What is user interface design?

User interface design creates an effective communication medium between a human

and a computer.

16. What is meant by specification?

A specification can be a written document, a graphical model, a formal mathematical

model, a collection of usage scenarios, a prototype or any combination of these.

17. Define process?

A series of steps involving activities, constraints, and resources that produce an

intended output of some kind is known as process.

18. How spiral model works?


The spiral model is an evolutionary software process model that couples the iterative

nature of prototyping with the controlled and systematic aspects of the waterfall

lifecycle model. It also has an emphasis on the use of risk management techniques.

19. What is winwin spiral model?

Winwin spiral model defines a set of negotiation activities at the beginning of each

pass around the spiral. The best negotiations strive for a win-win result.

20. Mention the various views in system engineering hierarchy?

The various views in system engineering hierarchy from top to bottom in order are

 World view

 Domain view

 Element view

 Detailed view

21. What is software requirements definition?

A software requirements definition is an abstract description of the services which the

system should provide and the constraints under which the system must operate.

22. What is SDLC ?

A software cycle deals with various parts and phases from planning to testing and

deploying. All these activities are carried out in different ways, as per the needs. Each

way is known as a Software Development Lifecycle Model (SDLC).

23. What are data aquistion systems?

Systems that collects data from sensors for subsequent processing and analysis are

termed as Data acquistion systems. Data collection process and processing processes

may have different periods and deadlines.

24. Define software configuration model?

SCM is the art of identifying, organizing, and controlling modifications to the software

being built by a programming team. It is an umbrella activity that is applied

throughout the software process.

25. What are the SCM activities?

SCM activities are developed to

 Identify change

 Control change

 Ensure that change is being properly implemented

 Report changes to others who may have an interest.

26. What are the advantages and disadvantages of white box testing?

Advantages :
Software’s structure logic can be tested.

Disadvantages :

Doesn’t ensure that user requirements are met.

Its test may not mimic real world situations.

27. What is meant by loop testing?

Loop testing is a white box testing techniques that focuses exclusively on the validity

of loop constructs. This technique can be applied to simple loops, nested loops,

concatenated loops and unstructured loops.

28. What is meant by smoke testing?

Smoke testing is an integration testing approach that is commonly used ehen “shrink

wrapped ” software products are being developed.

29. What is alpha and beta tests?

Alpha test is the test that is conducted at the developer’s site by a customer. Beta test

is the test that is conducted at one or more customer sites by the end-user of the

software.

30. What is meant by system testing?

System testing is actually a series of different tests whose primary purpose is to fully

exercise the computer based system. It verifies whether the system elements have

been properly integrated and perform the allocated functions.

31. Mention the categories of debugging approaches?

There are three categories of debugging approaches as follows :

 Brute force

 Back tracking

 Cause elimination

32. Define metric?

IEEE93 defines as a quantitative measure of the degree to which a system, componen,

or process possesses a given attribute.

33. Mention some of the process models appropriate for the software to be
engineered?

 Linear sequential or waterfall model

 Prototyping model

 Rad model

 Incremental model

 Spiral model

 Winwin spiral model


 Component based development model

34. What is adaptive maintenance?

Adaptive maintanence is the maintenance to adapt software to a different operating

environment. It involves changing a system so that it operates in a different

environment from its initial implementation.

35. What are the advantages and disadvantages of black box testing?

Advantages:

Simulates actual system usage.

makes no system structure assumptions.

Disadvantages :

Potential of missing logical errors in software.

Possibility of redundant testing.

36. What are the broad categories of system requirements?

System requirements may be either functional or non-functional requirements.

37. What are user requirements?

User requirements should describe functional and non-functional requirements so that

they are understandable by system users who don’t have detailed technical

knowledge. User requirements are defined using natural language, tables and

diagrams.

38. What is test scenario ?

Test scenario is the hypothetical story to test the particular functionality of an

application. It serves as an input to functional testing. For test scenario we need use

case.

39. Define an analysis model?

An analysis model is a set of models that serves as the technical representation of

system.

40. Define prototype?

Prototype is an initial version of a software system which is used to demonstrate

concepts, try out design options and generally to find out more about the problem and

its possible solutions.

41. What is the function of the user model?

The user model establishes the profile of end users of the system.

42. What is system image?

The system image combines the outward manifestation of the computer based system,

coupled with all supporting information that describes system syntax and semantics.
43. what is transform mapping?

Transform mapping is a set of design steps that allows a DFD with transform flow

charactersistics to be mapped into a specific architectural style.

44. What is tracebility matrix?

Traceability matrix is a document in which we map the test cases with the

requirements. In general we check whether the application works as per requirements

or whether we had covered all the required functionality through test cases.

45. List the metrics for specifying non functional requirements?

The possible metrics that specify the non-functional requirements are :

 Speed

 Size

 Easy of use

 Reliability

46. What is the difference between black box testing and white box testing?

Black box testing :


 No knowledge of the internal logic of the system is used to develop test cases.

 Uses validation techniques.

 Applied during later stages of testing.

 Examples include unit testing, integration testing, system testing, acceptance testing.

White box testing :


 Knowledge of the internal logic of the system is used to develop test cases.

 Uses verification techniques

 Performed early in the testing process.

47. Mention the various types of maintenance?

The various types of maintenance are :

 Corrective maintenance

 Adaptive maintenance

 Perfective maintenance

 Preventive maintenance

48. What is the difference between software engineering and system


engineering?

Software Engineering - is concerned with all aspects of computer based systems

development including hardware, software and process engineering.

System Engineering - are involves in system specification architectural design

intergration and deployment.


49. Which is the best testing model?

In real projects, tailored models are proven to be the best, because they share features from The Waterfall, Iterative,
Evolutionary models, etc., and can fit into real life time projects. Tailored models are most productive and beneficial for many
organizations. If it's a pure testing project, then the V model is the best.

50. What is the difference between a defect and a failure?

When a defect reaches the end customer it is called a failure and if the defect is detected internally and resolved it's called a
defect.

51. Explain Unit Testing, Integration Tests?

Unit testing - Testing performed on a single, stand-alone module or unit of code.

Integration Tests - Testing performed on groups of modules to ensure that data and control are passed properly between
modules.

52. What is a test log?

The IEEE Std. 829-1998 defines a test log as a chronological record of relevant details about the execution of test cases. It's a
detailed view of activity and events given in chronological manner.

53. Can you explain requirement traceability and its importance?

In most organizations testing only starts after the execution/coding phase of the project. But if the organization wants to really
benefit from testing, then testers should get involved right from the requirement phase.

If the tester gets involved right from the requirement phase then requirement traceability is one of the important reports that
can detail what kind of test coverage the test cases have.

54. What does entry and exit criteria mean in a project?

Entry and exit criteria are a must for the success of any project. If you do not know where to start and where to finish then
your goals are not clear. By defining exit and entry criteria you define your boundaries.

For instance, you can define entry criteria that the customer should provide the requirement document or acceptance plan. If
this entry criteria is not met then you will not start the project. On the other end, you can also define exit criteria for your
project. For instance, one of the common exit criteria in projects is that the customer has successfully executed the acceptance
test plan.

55. Explain System Testing and Acceptance Testing?

System testing - Testing a predetermined combination of tests that, when executed successfully meets requirements.

Acceptance testing - Testing to ensure that the system meets the needs of the organization and the end user or customer (i.e.,
validates that the right system was built).

56. What is the difference between pilot and beta testing?

The difference between pilot and beta testing is that pilot testing is nothing but actually using the product (limited to some
users) and in beta testing we do not input real data, but it's installed at the end customer to validate if the product can be
used in production.

57. Can you explain regression testing and confirmation testing?

Regression testing is used for regression defects. Regression defects are defects occur when the functionality which was once
working normally has stopped working. This is probably because of changes made in the program or the environment. To
uncover such kind of defect regression testing is conducted.

if we fix a defect in an existing application we use confirmation testing to test if the defect is removed. It's very possible because
of this defect or changes to the application that other sections of the application are affected. So to ensure that no other section
is affected we can use regression testing to confirm this.

58. What is gray box testing?

There is one more type of testing called gray box testing. In this we look into the "box" being tested just long enough to
understand how it has been implemented. Then we close up the box and use our knowledge to choose more effective black box
tests.

59. Can you explain usability testing?

Usability testing is a testing methodology where the end customer is asked to use the software to see if the product is easy to
use, to see the customer's perception and task time. The best way to finalize the customer point of view for usability is by
using prototype or mock-up software during the initial stages. By giving the customer the prototype before the development
start-up we confirm that we are not missing anything from the user point of view.

60. What are the categories of defects?

There are three main categories of defects:


Wrong: The requirements have been implemented incorrectly. This defect is a variance from the given specification.

Missing: There was a requirement given by the customer and it was not done. This is a variance from the specifications, an
indication that a specification was not implemented, or a requirement of the customer was not noted properly.

Extra: A requirement incorporated into the product that was not given by the end customer. This is always a variance from the
specification, but may be an attribute desired by the user of the product. However, it is considered a defect because it's a
variance from the existing requirements.

Potrebbero piacerti anche