Software Engineering & Database Fundamentals Lecture Notes

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/42

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards summarizing key terms and definitions from lecture notes on software quality, roles, testing, requirement gathering, and database concepts.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

43 Terms

1
New cards

Software Quality

The degree to which a software system meets specified requirements and satisfies user needs, covering attributes like reliability, usability, performance, maintainability, and security.

2
New cards

Functional Suitability

A quality attribute that measures how accurately and completely software fulfills its specified functional requirements.

3
New cards

Performance Efficiency

The ability of software to run smoothly and quickly while using resources (CPU, memory, bandwidth) wisely.

4
New cards

Reliability (Software)

The capability of software to perform consistently and predictably over time without failures or crashes.

5
New cards

Usability

The ease with which users can learn, understand, and operate software through intuitive interfaces, clear navigation, and logical workflows.

6
New cards

Maintainability

The ease with which software can be understood, modified, and enhanced, enabling efficient bug fixing, updates, and future development.

7
New cards

Portability

The capability of software to run on different hardware platforms or operating systems without significant modification.

8
New cards

Security (Software Context)

Protecting software and data against unauthorized access, vulnerabilities, and attacks through controls like authentication, encryption, and integrity checks.

9
New cards

Testability

The degree to which software can be effectively and efficiently tested to verify functionality and uncover defects.

10
New cards

Compliance (Software)

Adherence of software to relevant laws, regulations, standards, and industry best practices (e.g., HIPAA, ISO).

11
New cards

Software Analyst

Professional who interacts with users/clients to gather needs, prepares reports and flowcharts, focuses on documentation and planning, and ensures what needs to be built aligns with user requirements.

12
New cards

Software Engineer

Professional who designs, develops, and maintains software systems, writing code, performing testing, and focusing on code quality and performance.

13
New cards

Black Box Testing

Testing technique that examines software functionality without knowledge of internal code; focuses on inputs and outputs, often performed by testers or users.

14
New cards

White Box Testing

Testing technique where testers have full knowledge of internal code and structure to verify logic, paths, and quality; usually done by developers.

15
New cards

System Analyst

Professional responsible for analyzing, designing, and implementing information systems that meet business needs, including requirement gathering, documentation, and project coordination.

16
New cards

Unit Testing

Testing that verifies the smallest testable units of code (e.g., functions, methods) to detect defects early in development.

17
New cards

Integration Testing

Testing the interaction between integrated modules or components to ensure they work together correctly.

18
New cards

System Testing

End-to-end testing of the complete software system to verify it meets specified requirements as a whole.

19
New cards

Acceptance Testing

Testing performed by end-users or stakeholders to confirm the software meets their requirements and is ready for deployment.

20
New cards

Performance Testing

Evaluation of how well software performs under specific load, stress, or volume conditions to identify performance issues.

21
New cards

Security Testing

Testing that assesses the software’s resilience against threats, vulnerabilities, and attacks to ensure data confidentiality, integrity, and availability.

22
New cards

Usability Testing

Evaluation of a product by observing real users interacting with it to identify usability problems and improve user experience.

23
New cards

Requirements Phase

Crucial SDLC stage involving gathering and analyzing information from stakeholders to define project needs, preferences, and expectations.

24
New cards

Interview (Requirement Collection)

One-on-one or group discussions with stakeholders to ask targeted questions, clarify details, and gather in-depth requirements.

25
New cards

Survey & Questionnaire

Requirement-gathering method that distributes standardized questions to stakeholders—often online—to collect structured feedback.

26
New cards

Focus Group

Interactive session with multiple stakeholders to gather diverse insights and perspectives on system requirements.

27
New cards

Prototyping (Requirement Collection)

Creating a working model of the system or product to solicit stakeholder feedback, revealing design flaws and usability issues early.

28
New cards

Observation (Requirement Collection)

Studying stakeholders in their actual work environment to uncover needs and behaviors, including unspoken requirements.

29
New cards

Database Administrator (DBA)

Individual responsible for installing, configuring, securing, monitoring, backing up, and optimizing database systems, ensuring availability and performance.

30
New cards

Primary Key

A table column (or set of columns) that uniquely identifies each record in that table.

31
New cards

Alternate Key

A candidate key not chosen as the primary key; can still uniquely identify records and is often used for lookups.

32
New cards

Data Definition Language (DDL)

Subset of SQL used to define and modify database structures (tables, schemas) with commands like CREATE, DROP, ALTER, TRUNCATE.

33
New cards

CREATE Command

DDL command that defines a new database object such as a table (e.g., CREATE TABLE students (…)).

34
New cards

DROP Command

DDL command that permanently deletes an existing database object (e.g., DROP TABLE students).

35
New cards

ALTER Command

DDL command that modifies an existing database object, allowing changes like adding or altering columns.

36
New cards

TRUNCATE Command

DDL command that removes all rows from a table while keeping its structure intact (e.g., TRUNCATE TABLE school).

37
New cards

Centralized Database

Database architecture with a single server and location; cheaper and easier to maintain but slower, less scalable, and higher data-loss risk.

38
New cards

Distributed Database

Database architecture with multiple servers across geographic areas; faster, more scalable and reliable, but costlier and harder to maintain.

39
New cards

ER Diagram (Entity-Relationship Diagram)

Graphical representation of entities, their attributes, and relationships in a database model.

40
New cards

Entity (ER Model)

Object or concept represented by a rectangle in an ER diagram; corresponds to a table in a database.

41
New cards

Attribute (ER Model)

Property or characteristic of an entity, shown as an oval connected to its entity in an ER diagram.

42
New cards

Relationship (ER Model)

Association between two or more entities, depicted by a diamond in an ER diagram.

43
New cards

Relational Database Model

Data model that stores information in tables (relations) consisting of rows (tuples) and columns (attributes), emphasizing logical structure, reduced redundancy, and flexible querying.