Software Enggenering Ans
Software Enggenering Ans
ans:
In software engineering, abstraction means focusing on the important details of
something while hiding the unnecessary or complex parts. It's like simplifying a
big idea into something easier to understand and use.
define agility
ChatGPT said:
ChatGPT
In the context of software engineering, agility refers to the ability to adapt
quickly and efficiently to changes in requirements, technology, or market
conditions during the development process. It emphasizes flexibility,
collaboration, and iterative progress to deliver value to the customer as early and
as often as possible.
what is ASD
ChatGPT said:
ChatGPT
ASD stands for Adaptive Software Development, which is an iterative and agile
approach to software development. It emphasizes flexibility, continuous learning,
and adaptation to change rather than following a rigid plan.
define artificat
ChatGPT said:
ChatGPT
In software engineering, an artifact refers to any work product or document
produced during the software development lifecycle. These can be tangible items or
outputs created at different stages of the process, such as design, coding,
testing, and deployment. Artifacts help in documenting the system's development and
provide essential resources for maintenance and future improvements.
Design Documents:
High-level architecture and detailed design of the system, including diagrams,
models, and prototypes.
Source Code:
The actual code written by developers that implements the system's features.
User Documentation:
Guides and manuals for end-users on how to use the software.
Configuration Files:
Files used for system setup, environment configurations, or database schema.
Release Notes:
Documents describing changes, updates, or fixes in a new version of the software.
Importance of Artifacts:
Communication: Artifacts help in communication between team members, stakeholders,
and clients.
Traceability: They provide a record of decisions and changes throughout the
software development process.
Quality Assurance: Artifacts like test cases and test results help ensure the
system meets its requirements and functions as expected.
Artifacts play a key role in the structured and organized development of software,
ensuring clarity and consistency across the project lifecycle.
Singleton: Ensures a class has only one instance and provides a global point of
access to it.
Factory Method: Defines an interface for creating objects, but allows subclasses to
alter the type of objects that will be created.
Abstract Factory: Provides an interface for creating families of related or
dependent objects without specifying their concrete classes.
Builder: Separates the construction of a complex object from its representation,
allowing the same construction process to create different representations.
Prototype: Creates new objects by copying an existing object, known as the
prototype, rather than creating a new instance from scratch.
2. Structural Design Patterns:
These patterns are concerned with how classes and objects are composed to form
larger structures. They simplify the design by identifying simple ways to realize
relationships between entities.