Software Engineering
Question Bank
Unit 1:
   1. What is Software Development Life Cycle? (SDLC)
   2. Define Software process.
   3. What are the various categories of software?
   4. What are the challenges in software?
   5. Define software process.
   6. Explain layered architectural style in detail.
   7. What are the fundamental activities of a software process?
   8. What are the umbrella activities of a software process?
   9. What are the merits of incremental model?
   10. What are the attributes of good software?
   11. What are the advantages of evolutionary prototyping?
   12. What are the various Rapid prototyping techniques?
   13. What is the use of User Interface prototyping?
   14. What are the characteristics make software different from hardware? Compare
      hardware and software characteristics
   15. Provide three examples of software projects that would be amenable to the
      incremental model. Be specific.
  16. As you move outward along the spiral process flow, what can you say about
      the software that is being developed or maintained?
   17. What are myths? Exaplin Management, Customer and Practioner’s myths.
  18. Provide three examples of software projects that would be amenable to the
      waterfall model. Be specific.
Unit 2:
   1. What is agile manifesto? What principles helps to achieve the agility?
   2. What is scrum? Define following terms in scrum process: Scrum, Scrum team,
          Scrum master, Sprint, Sprint Backlog.
   3. Discuss Extreme programming in detail.
   4. Describe the XP concepts of refactoring and pair programming in your own
          words.
   5. Describe the XP concepts of refactoring and pair programming in your own
          words.
   6.
Unit 3:
   1. What are the Difficulties in Elicitation?
   2. Explain the following UML Diagrams: Use case diagram             Activity Diagram
   3. Draw level 0, level1, and level 2 data flow diagrams for Hospital management
          system. The system keeps track of patients, nurses, doctors, wards, operation
          theatre and bills. The system geenrates reports on demand.
   4. What is requirements engineering?
   5. Explain the activities and steps used for negotiating software requirements.
   6. Why is it that many software developers don’t pay enough attention to
          requirements engineering? Are there ever circumstances where you can skip
          it? 
   7. Why do we say that the requirements model represents a snapshot of a system
          in time? 
   8. Why is feedback important to the software team?
   9. Why do requirements change so much? After all, don’t people know what they
          want?
   10. Most agile process models recommend face-to-face communication. Yet
          today, members of a software team and their customers may be geographically
          separated from one another. Do you think this implies that geographical
          separation is something to avoid? Can you think of ways to overcome this
          problem?
   11.