Software Engineering Flashcards
What is software engineering?
Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software, and the study of these approaches.
What is the purpose of software engineering?
The purpose of software engineering is to offer codified methods that constrain the creativity of the practitioner so that what is built has some likelihood of working and being safe.
Why are codified methods important in software engineering?
Codified methods provide a clear route to guaranteed and repeatable success in software development, operation and maintenance.
What are the challenges for software engineering in delivering large software projects?
The challenges include delivering the project on cost, on time, with quality, ensuring safety, security, functionality for the end-user, and maintainability.
Why is software engineering important in developing software?
: Software engineering provides a systematic, disciplined, and quantifiable approach to the development, operation, and maintenance of software. It helps in ensuring the software is reliable, efficient, and safe.
What is the purpose of codified methods in software engineering?
Codified methods provide a clear and systematic approach to developing software, which helps in ensuring that the software is safe, reliable, and efficient. It also helps in delivering the project on time and within the allocated budget.
What is the role of software engineering in ensuring software security?
Software engineering helps in developing software that is secure and protects against unauthorized access, theft, or damage. This is done by following best practices in coding, testing, and maintaining the software.
Why is maintainability an important aspect of software engineering?
Maintainability ensures that the software can be updated, modified, and improved over time. This is important as software needs to adapt to changing requirements and environments. A software that is difficult to maintain can lead to increased costs and reduced efficiency.
What disciplines intersect in software engineering?
Psychology, management, economy, engineering, and computer science intersect in software engineering.
What is a Software Development Model (SDM) or Software Life-Cycle (SLC)?
It is a structure imposed on the development of a software product, describing the approaches to a variety of tasks or activities that take place during the process.
What are the tasks or activities described by Software Development Models?
The tasks or activities described by Software Development Models vary depending on the model, but can include requirements gathering, design, coding, testing, and maintenance.
What is the purpose of Software Development Models?
The purpose of Software Development Models is to provide a framework for software development that can help ensure a successful outcome.
What are some examples of Software Development Models?
Some examples of Software Development Models include Waterfall, Agile, and Spiral.
What is the Waterfall Model?
The Waterfall Model is a sequential software development model in which each phase of the software development process must be completed before the next phase can begin.
What is Agile?
Agile is an iterative and incremental approach to software development that emphasizes flexibility and customer satisfaction.