Software engineering Interview Questions and Answers

Software engineering Questions and Answers:

1 :: What is Requirement Engineering?

Software Requirements are Descriptions and specifications of a system-A requirementis a condition or capability to which the system must conform and Define. A system is designed with certain functionality in mind and to ome up with that functionality and its specification right at the beginning is Requirement Engineering. Requirements Engineering-Eliciting, organizing, and documenting the requirements of the system-The process of establishing the services that the customer requires from a system and the constraints under which it operates and is developed Software requirements should be •Clear
•complete
•Unambiguous
•Quantitative
4.6/5 Rating (8 votes)
Is This Answer Correct?    35 Yes 7 No
Place Your Answer

2 :: What are Functional and Non Functional Requirements in Software Engineering?

Functional Requirements are the Expected functionality or services from the system.
Non - Functional Requirements are System property and constraints. Now Constraints can be on requirements itself. Some examples are of Response time, 24X7 availability of the system etc.
5/5 Rating (4 votes)
Is This Answer Correct?    22 Yes 10 No
Place Your Answer

3 :: What is SRS?

SRS stands for Software Requirement Specification.
It establishes the basis for agreement between customers and contractors or suppliers on what the software product is expected to do, as well as what it is not expected to do.
Some of the features of SRS are -
• It sets permits a rigorous assessment of requirements before design can begin.
• It sets the basis for software design, test, deployment, training etc. It also sets pre-requisite for a good design though it is not enough.
• It sets basis for software enhancement and maintenance.
• It sets Basis for Project plans like Scheduling and Estimation.
3.4/5 Rating (5 votes)
Is This Answer Correct?    23 Yes 4 No
Place Your Answer

4 :: What are the Different types of Testing in software engineering? How to design a Test Case?

What is Testing in Software Engineering
Testing is running the program(or product) under various circumstances and conditions to find errors and bugs in it. This is important as releasing a faulty product will not only cause serious problems to the end user, it will also harm the companies reputation. There are various kind of Testing conditions and which one to use depends on type of product.
Types of Testing in Software Engineering
As per Test Target, there is * Unit Testing * Integration Testing * System Testing As per Test Objective, there is * User Acceptance Testing * Installation Testing * Functional * Alpha / Beta testing * Regression * Performance * Stress * Usability * Configuration * Smoke (Sanity Test) Let's see them one by one -
Unit Testing
- The Tools used in Unit Testing are debuggers, tracers and is Done by Programmers. Unit testing verifies the functioning in isolation of software pieces which are separately testable.
Integration Testing
- According to IEEE, Integration Testing is An orderly progression of testing in which software elements, hardware elements, or both are combined and tested, to evaluate their interactions, until the entire system has been integrated. It Test against system design and Focuses on communication between modules start with one module, then add incrementally. Various Types of Integration Testing are: * big bang approach - Integrate Everything at once * top-down approach - Keep on breaking the system in parts one by one and than test each part. * bottom-up approach - Test the small parts first and than keep on integrating the system and keep on testing the bigger module of it. * mixed approach - Done by help of stubs (Dummy modules)
Sysem Testing
- IEEE Defines it as The process of testing an integrated hardware and software system to verify that the system meets its specified requirements. It is tested against system specification. May test manual procedures, restart and recovery, user interface, stress, performance. In System Testing, real data is used and sometimes users participations is also used.
Objective Based Testing
Some of the testing under this category and what they mean are as follows - *
User Acceptance Testing
- Testing conducted to determine whether or not a system satisfies its acceptance criteria and to enable the customer to determine whether or not to accept the system. It is Done against requirements and is done by actual users. *
Installation Testing
- System testing conducted once again according to hardware configuration requirements. Installation procedures may also be verified *
Functional Testing
- It checks that the functional specifications are correctly implemented. Can also check if Non Funcctional behavior is as per expectations. *
Stress testing (aka endurance testing)
- We impose abnormal input to stress the capabilities of the software. Input data volume, input data rate, processing time, utilization of memory, etc. are tested beyond the designed capacity. *
Regression Testing
- Regression Testing accdoing to IEEE is "selective retesting of a system or component to verify that modifications have not caused unintended effects". It is repetition of tests intended to show that the software’s behavior is unchanged, except insofar as required. It Can be done at each test level. *
Performance Testing
- It is verifying that the software meets the specified performance requirements (response time, volume ..)
Alpha / Beta testing
- Probably one term which you must be aware of as we often hears this software is in Alpha phase and in Beta phase. Here Testing is done by representative set of potential users for trial use. Please Note - in-house (alpha testing) - external (beta testing)
Usability Testing
- It evaluate the Human Computer Interface. Verifies for ease of use by end-users. Verifies ease of learning the software, including user documentation. Checks how effectively the software functions in supporting user tasks. Checks the ability to recover from user errors.
Configuration Testing
- It is Used when software meant for different types of users. It also check that whether the software performs for all users.
Smoke (Sanity Test)
- It is used to Verify whether the build is ready for feature/requirement based testing).
Recovery Testing
- It is used in verifying software restart capabilities after a “disaster”
Security Testing
- It is ued toverify proper controls have been designed.
How to Design a Test Case
This Question is often asked in microsoft of from any other company who is looking to hire you for testing work. A test case will have 5 section -
4.6/5 Rating (7 votes)
Is This Answer Correct?    14 Yes 6 No
Place Your Answer

5 :: What is RUP and PSP?

RUP stands for Rational Unified Process
It deals with -
• Iterative software development process.
• Visual Modeling of Systems
• Quality Management
• Change Control Management
• Deals with the role, the activity, and the artifact
• For managing OO Software Development
Some Features of RUP are -
• Online Repository of Process Information and Description
• Templates for all major artifacts, including:
- Requirements tracking (RequisitePro templates)
- Use Cases (Word Templates )
- Project Management (Project Templates)
• Process Manuals describing key processes
PSP stands for Personal Software Process
PSP Objectives are -
- To introduce individuals to a process-based approach to developing software
- To show individuals how to measure, estimate, schedule, and track their work
- To show individuals how to improve the quality of their programs
- In general PSP improves quality and productivity
- The time saved in testing because of better quality reduces time across the project by 20-40%
Advantage of PSP -
- To manage your work & assess/build your talents/skills
- To plan better
- To track your performance precisely
- To measure the quality of your software products
4.5/5 Rating (4 votes)
Is This Answer Correct?    16 Yes 3 No
Place Your Answer

Rate This Category:
4.6/5 Rating (12 votes)
Place Your Question



Top: Software engineering   Interview Questions and Answers
Software engineering   Interview Questions and Answers

Top Frequently Asked Software engineering   Question
Frequently Asked Software engineering   Job Interview Question


Top Frequently opened Computer Programming Job Interview categories
Most popular Computer Programming Job Interview categories

Comments About Software engineering Interview Questions and Answers

Share your valuable opinions, ideas and suggestions about Software engineering Interview Questions and Answers
While placing your comment your email address is required but won't be published any where else; Personal information will be kept confidential; we do not sell or release our respective visitors private information.
  1. Webmaster 23rd of February 2012

    Webmaster Said

    Tell us what you feel about Software engineering Interview Questions and Answers
    All comments will be published after review. No login or registration is required to post a comment on Software engineering Interview Questions and Answers We offer and invite you to submit your valuable comment now; Please be respectful of others when commenting. Insulting others, self-promotional comments, website promotional comments, marketing stuff, SEO Techniques, SMS-style content and off-topic comments will not be approved at this information portal.
    So start sharing your thoughts regarding Software engineering Interview Questions and Answers
    Thank you.

  2. Chacidy (1 Comment) 27th of January 2012

    Chacidy Said

    Great stuff, you hepeld me out so much!

Leave a Comment

Leave a Comment
  1.  Enter This Verification Code  Regenerate Verification Code  



Your reply will be added to the comment above (Below any other replies to this comment) -

Top Comments About: Software engineering   Interview Questions and Answers
Comments on Software engineering   Interview Questions and Answers

 
Top of Link batk to Software engineering   Interview Questions and Answers
Link batk to Software engineering   Interview Questions and Answers