software engineering

    Master this deck with 20 terms through effective study methods.

    Generated from YouTube video

    Created by @dhanashri

    What is a many-to-many relationship in databases?

    A many-to-many relationship occurs when multiple records in one table are associated with multiple records in another table. This type of relationship is typically implemented using a junction table that contains foreign keys referencing the primary keys of the two related tables.

    What is a decision table?

    A decision table is a structured way to represent and analyze the relationships between different input conditions and their corresponding actions or outcomes. It helps in understanding cause-and-effect scenarios, making it useful for requirement gathering and decision-making processes.

    What is the purpose of requirement analysis?

    Requirement analysis aims to identify and resolve inconsistencies, incompleteness, and conflicts in data and processes. It involves various techniques to ensure that all requirements are clearly understood and documented before moving forward with development.

    What is a flowchart?

    A flowchart is a visual representation of a process or algorithm, showing the sequence of steps involved. It uses various shapes to denote different types of actions or decisions, making it easier to understand the flow of control in a program or system.

    What is the difference between conditional and unconditional branching?

    Conditional branching occurs when the flow of control in a program depends on a condition being true or false, leading to different execution paths. Unconditional branching, on the other hand, allows the program to jump to a specific point in the code without any conditions.

    What is the critical path method?

    The critical path method (CPM) is a project management technique used to determine the longest sequence of dependent tasks and their minimum completion time. It helps identify critical tasks that directly impact the project's timeline, allowing for better scheduling and resource allocation.

    What is top-down approach in problem-solving?

    The top-down approach involves breaking down a large problem into smaller, more manageable units or sub-problems. This method allows for easier understanding and solving of complex issues by focusing on high-level functionalities before delving into detailed aspects.

    What is bottom-up design approach?

    The bottom-up design approach starts with the detailed components or features of a system and integrates them to form a complete system. This method emphasizes understanding the individual parts before considering how they fit into the larger context.

    What is the significance of a software design document (SDD)?

    A software design document (SDD) outlines the architecture, components, interfaces, and other aspects of a software system. It serves as a blueprint for development, ensuring that all stakeholders have a clear understanding of the system's design and functionality.

    What is interface design in software development?

    Interface design focuses on the interaction between the system being developed and its environment. It defines how users and other systems will interact with the software, ensuring usability and functionality without delving into the internal workings of the system.

    What is architectural design in software engineering?

    Architectural design involves defining the overall structure and organization of a software system. It includes decisions about components, their interactions, and the technologies to be used, ensuring that the system meets both functional and non-functional requirements.

    What is the role of requirement gathering in software development?

    Requirement gathering is the process of collecting and documenting the needs and expectations of stakeholders for a software project. It is crucial for ensuring that the final product meets user needs and aligns with business goals.

    What are functional and non-functional requirements?

    Functional requirements specify what a system should do, detailing the behaviors and functions it must support. Non-functional requirements define how a system performs its functions, including aspects like performance, security, and usability.

    What is the purpose of a project timeline?

    A project timeline outlines the schedule for completing tasks and milestones within a project. It helps in tracking progress, managing resources, and ensuring that the project stays on schedule.

    What is the importance of standardization in software development?

    Standardization ensures consistency and quality across software projects by establishing common guidelines and practices. It helps reduce confusion, improve communication among teams, and facilitate easier maintenance and updates.

    What is data flow testing?

    Data flow testing is a technique used to analyze the flow of data within a program. It focuses on how data is defined, used, and manipulated throughout the code, helping to identify potential errors and ensure data integrity.

    What is the significance of a clear terminology in software documentation?

    Clear terminology in software documentation ensures that all stakeholders have a common understanding of the concepts and features being discussed. It reduces ambiguity and enhances communication, leading to better collaboration and fewer misunderstandings.

    What is the role of a project manager in software development?

    A project manager oversees the planning, execution, and completion of a software project. They coordinate resources, manage timelines, and ensure that the project meets its objectives while adhering to budget and quality standards.

    What is the purpose of testing in software development?

    Testing is conducted to identify defects and ensure that the software meets its requirements and functions as intended. It helps improve the quality of the software, enhances user satisfaction, and reduces the risk of failures in production.

    What is the significance of user feedback in software development?

    User feedback is crucial for understanding how well the software meets user needs and expectations. It provides insights into usability, functionality, and areas for improvement, guiding future development and enhancements.