Intro - To Software Engineering Worksheet - Chapter 1

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Department of Software Engineering 2023/2024

Introduction to Software Engineering (SWEN104) Worksheet for Practice and better


Understanding

General Instruction: First, read all the questions carefully and try their answers based on your
classroom learning, then read class notes and related books from library or online resources
and provide proper answer for each question according to its type.

Part I: Choose the correct answer for the following questions.

1. Which of the following is incorrect about software engineering?


A. The application of engineering principles to software development
B. A disciplined approach to software development
C. Brainstorming and creativity is not required in software engineering
D. Software Engineering is not only writing code but also managing every aspect of
software development
E. All statements are correct
2. Which of the following is not an issue in waterfall?
A. Don’t release any value and leave the testing until the end
B. The power of one, heavily reliant upon the project manager
C. Encourages customer involvement
D. Heavily reliant upon a plan/requirement
E. Don’t seek approval from the stakeholders until the very end
F. All are an issue of waterfall methodology
3. What is the purpose of the spiral model in software development?
A. Provides a linear, step-by-step development process
B. Focuses on risk assessment and iterative development cycles
C. Emphasizes rapid prototyping for quick user feedback
D. Ideal for projects with well-defined and unchanging requirements
4. Which Agile principle emphasizes the importance of face-to-face communication?
A. Working software over comprehensive documentation
B. Customer collaboration over contract negotiation
C. Responding to change over following a plan
D. Individuals and interactions over processes and tools.

Yimer A. Introduction to Software Engineering (worksheet for chapter-One) Page 1 of 5


Department of Software Engineering 2023/2024

5. Select the different among the lists.


A. Kanban C. Scrum E. FDD
B. V-shaped D. XP F. Lean
6. Which software development methodology is suitable for projects with frequently
changing requirements?
A. Waterfall C. Agile
B. Spiral D. V-Model
7. Which software development methodology is characterized by a sequential, linear
approach where each phase must be completed before moving to the next?
A. Agile C. Kanban
B. Waterfall D. XP
8. Select the different among the lists.
A. Waterfall C. RAD E. Agile
B. Spiral D. IID F. All are same
9. One of the following is a core principle in software engineering discipline.
A. KISS & DRY C. Abstraction E. Security
B. Decomposition D. Robustness F. All
10. What is the purpose of software development methodologies?
A. To make the development process more complex
B. To standardize and streamline the development process
C. To increase the number of defects in software
D. To limit creativity in software development
11. Which methodology encourages frequent customer involvement and feedback throughout
the development process?
A. Waterfall C. Kanban
B. Lean D. Agile
12. Which methodology emphasizes the importance of early and frequent user involvement,
rapid prototyping, and iterative development?
A. Waterfall C. RAD
B. Lean D. V-Model

Yimer A. Introduction to Software Engineering (worksheet for chapter-One) Page 2 of 5


Department of Software Engineering 2023/2024

13. What are some emerging trends in software engineering?


A. Artificial intelligence and machine learning for code generation and testing
B. Increased focus on cloud and serverless computing
C. Growing importance of user experience (UX) design in software development
D. All of the above

Part II: Write true if the statement is correct and false if it is wrong for the following
questions.
14. Before software engineering became a formalized discipline, software was often sold
bundled with hardware.
15. The chosen software engineering paradigm significantly influences how developers
design, write, and maintain software
16. RAD approach prioritizes planning rather than development and building of a prototype.
17. The quality of software depends not only on good methodology and clear requirements
but also on the influence of human factors.
18. Agile Software development considers working software as the measure of the progress.
19. Software crisis is considered as the catalyst for change and birth of software engineering
as a discipline.
20. Waterfall embraces change while agile resists it.
21. Waterfall is good for clear and stable requirements that are likely to change significantly.
22. Software development is a simple and fixed process that requires careful planning,
organization, and execution.
23. Agile methodology is not capable if the project is large and complex.
24. Agile methodologies require detailed documentation before any development work can
begin.
25. Agile teams aim to deliver a fully functional product at the end of each sprint.
26. Agile teams aim to deliver valuable increments of the product at the end of each sprint.

Part III: Fill in the blanks with the missing words or phrases for the following questions.
27. __________ is are defined as a process in which the software developers design, develop
and test a software.
28. ____________ is a set of principles used to create software

Yimer A. Introduction to Software Engineering (worksheet for chapter-One) Page 3 of 5


Department of Software Engineering 2023/2024

29. Failures and inefficiencies in creating software systems that meet user requirements is
called ___
30. _____________ emphasized the need for systematic approaches to software
development, leading to the emergence of methodologies, best practices, and standards
aimed at improving the quality and reliability of software systems.
31. Fill the missing words from the Agile Manifesto.
A. Agile values _____ and _____ over processes and tools
B. Working software over _____ documentation.
C. Customer collaboration over contract _____.
D. Responding to change over following a _____ plan.
32. The primary measure of progress in Agile is ________________
33. _____________ defines the fundamental software engineering principles, methodologies,
and practices used to develop high-quality software systems.
34. ______________ is the degree to which a system, component or process meets customer
or user needs or expectations.
35. In Agile, the development team is typically _______________, meaning they have all the
skills necessary to complete the work.
36. ________________________ software development methodology focuses on the people
doing the work and how they work together.
37. In Agile, the team strives to deliver _____________ of value at the end of each sprint.
38. Agile encourages _____________, allowing for changes to be made even late in the
development process.

Part IV: Provide Short answer for the following questions.


39. How do communication skills impact the success of software development teams?
40. Why software engineering is needed and what is the role of engineering in this
discipline?
41. What are the challenges in software engineering discipline?
42. What are the strengths and drawbacks of sequential software development approaches?
43. List three popular agile frameworks with their core focus or unique feature.
44. How does Agile address the risk of project failure compared to traditional
methodologies?

Yimer A. Introduction to Software Engineering (worksheet for chapter-One) Page 4 of 5


Department of Software Engineering 2023/2024

45. Define software crisis and list the causes of software crisis.
46. What does it mean by cross-functional team in agile
47. Mention attributes of good software?
48. List the types of software based on different criterion like functionality/purpose.

Part V: Provide detail explanations for the following questions.

49. Demonstrate the relationship between software process, software development and
software product.
50. List and explain the key principles of software engineering.
51. What is scope creep and how it happens in software engineering?
52. Discuss the importance of teamwork and collaboration in software development projects.
53. How does software engineering discipline contribute to the overall quality of software
products?
54. What is the main difference between waterfall and agile methodologies? Discuss their
advantages and disadvantages as well as situations where each approach might be more
suitable
55. What is agile methodology? Explain by considering its core values and principles.
56. What is the concept of “Simplicity--the art of maximizing the amount of work not done--
is essential”, which is one of the twelve agile manifesto principles.
57. Describe the iterative and incremental nature of agile methodologies
58. How agile methodology solves the issue of waterfall software development
methodology?
59. Why today’s software industries follow agile software development methodologies? Why
don’t they use waterfall?
60. Compare and contrast scrum, lean and Kanban frameworks.
61. Discuss the challenges of agile methodology and the way how to overcome it?

“With the right people, you can build anything! - Joel Spolsky”

Yimer A. Introduction to Software Engineering (worksheet for chapter-One) Page 5 of 5

You might also like