





Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Explore fundamental concepts in software engineering through a question-and-answer format. Various software development models, including waterfall, iterative-and-incremental, rapid prototyping, and agile processes. It also delves into programming paradigms such as individual artistic, modular, imperative, and object-oriented programming. Key principles like encapsulation, information hiding, and message passing are explained, providing a comprehensive overview of software engineering principles and practices. This material is designed to enhance understanding and retention of core concepts in software development.
Typology: Exams
1 / 9
This page cannot be seen from the preview
Don't miss anything!






What is software development in theory? It is software that is developed linearly and starting from scratch Requirements -> Analysis -> Design -> Implementation What is Software Development in Practice like? In the real world it is different, mistakes are made, and requirements change while the product is being developed. Winburg Mini Case Study -> Evolution Tree Model (What are the steps?)
o No partial product o Do not see product until the end What is the Waterfall model characterized by? o Feedback loops o Document driven What is the Rapid Prototyping Model?
o Less emphasis on analysis and design o Earlier implementation - working software is considered more important than documentation o Responsiveness to change o Close collaboration with the client Evaluating Agile Processes o However, medium- and large-scale software development are completely different
represent a way of organizing knowledge o Based on the class/object set of abstractions o Object-orientation does not make programming easier o It does provide a set of abstractions, methods, and standards that enables us to write better programs What are Abstractions
Delegation