1/55
Comprehensive vocabulary flashcards covering the CSC 308 lecture notes on System Analysis and Design by Ayepeku F.O, including SDLC, modeling techniques, and implementation strategies.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
System
An organized collection of components that work together to achieve a specific goal or set of goals.
Inputs
The resources, data, or materials that are put into a system to be processed, such as raw data or user commands.
Processes
The activities or operations that transform inputs into outputs, including data processing and computation.
Outputs
The results produced by the system after processing the inputs, such as processed information or reports.
Feedback
Information about the output of a system that is used to make adjustments or improvements to the inputs or processes.
Control
Mechanisms that monitor and regulate the operation of a system to ensure it achieves its goals, such as management oversight.
Environment
Everything outside the system that can influence its operation and performance, including regulatory constraints and economic conditions.
Boundaries
The limits of the system that differentiate it from its environment, such as the scope of a project.
Open Systems
Systems that interact with their environment by receiving inputs and producing outputs, like businesses or ecosystems.
Closed Systems
Systems that do not interact with their environment; all inputs and outputs are contained within the system.
Information Systems
Systems designed to manage and process data to provide useful information for decision-making within an organization.
Hardware
Physical devices and equipment that perform input, processing, storage, and output activities, such as servers and peripherals.
Software
Programs and applications that control hardware and process data, such as operating systems and database management systems.
Data
Raw facts and figures that are processed into meaningful information, including customer records and sales transactions.
System Development Life Cycle (SDLC)
A structured approach used for developing information systems that provides a systematic process for planning, creating, testing, and deploying.
Planning Phase
The SDLC phase used to define project scope, objectives, and feasibility; deliverables include the project charter and feasibility study report.
Analysis Phase
The SDLC phase focused on gathering detailed requirements and analyzing business needs, resulting in a System Requirements Specification (SRS).
Design Phase
The SDLC phase meant to create detailed system designs, including system architecture, database design, and interface design.
Implementation (Development) Phase
The SDLC phase where the system is built based on design specifications, involving coding and integration of system components.
Testing Phase
The SDLC phase used to ensure the system works as intended and is free of defects via unit, integration, system, and user acceptance testing.
Deployment Phase
The SDLC phase where the system is delivered to users and made operational through installation, data migration, and training.
Maintenance Phase
The SDLC phase intended to monitor, support, and enhance the system post-deployment through bug fixing and updates.
Waterfall Model
A linear and sequential SDLC approach where each phase must be completed before the next one begins.
V-Model (Validation and Verification Model)
An extension of the Waterfall model that includes corresponding testing phases for each development stage.
Iterative Model
An SDLC model that develops the system through repeated cycles (iterations), allowing refinement through each cycle.
Spiral Model
An SDLC model that combines iterative development with risk assessment, involving planning, risk analysis, engineering, and evaluation.
Agile Model
An SDLC model emphasizing flexibility, collaboration, and customer feedback through iterative cycles called sprints.
DevOps Model
An SDLC model that integrates development (Dev) and operations (Ops) to improve collaboration and automate the delivery pipeline.
System Analyst
A professional who specializes in analyzing, designing, and implementing information systems, acting as a bridge between business problems and technology solutions.
Requirements Elicitation Techniques
Methods used by system analysts to gather information from stakeholders, including interviews, questionnaires, and workshops.
Interviews
A requirement elicitation technique involving direct interaction between the analyst and stakeholders to gather in-depth qualitative data.
Questionnaires
Standardized written sets of questions administered to a large number of stakeholders simultaneously to facilitate quantitative analysis.
Requirements Analysis
The process of systematically studying stakeholder needs, expectations, and constraints to identify, clarify, and prioritize system requirements.
Data Flow Diagram (DFD)
A graphical representation technique depicting the flow of data between processes, data stores, and external entities within a system.
Entity-Relationship Diagram (ERD)
A visual representation of entities, attributes, and relationships used in database design to illustrate the structure of a database.
Use Case Diagram
A graphical representation showing the interactions between users (actors) and a system to capture functional requirements.
Activity Diagram
A visual representation of the sequence of actions, decisions, and control flows required to accomplish a specific task or process.
Normalization
A database design technique used to organize data in a relational database to reduce redundancy and dependency.
First Normal Form (1NF)
A stage of normalization ensuring that each column in a table contains atomic values and each row is unique.
Second Normal Form (2NF)
A stage of normalization that eliminates partial dependencies by ensuring all non-key attributes depend on the entire primary key.
Third Normal Form (3NF)
A stage of normalization that removes transitive dependencies by ensuring non-key attributes depend only on the primary key.
SQL (Structured Query Language)
A powerful language used to communicate with and manipulate databases through querying, inserting, updating, and deleting data.
Data Definition Language (DDL)
A component of SQL used to define and modify database structure, including commands like CREATE, ALTER, and DROP.
Data Manipulation Language (DML)
A component of SQL used for data manipulation, including commands like SELECT, INSERT, UPDATE, and DELETE.
Simplicity Principle
An interface design principle focused on keeping the interface as simple as possible by avoiding unnecessary elements.
Consistency Principle
An interface design principle ensuring the interface is consistent in layout, design elements, and behaviors across the application.
Learnability
A usability principle stating that a system should be easy for new users to learn basic tasks quickly upon first encounter.
Unit Testing
A testing type focused on evaluating individual units or components of software independently.
Integration Testing
A testing phase where individual units are combined and tested as a group to ensure they function together seamlessly.
Blue-Green Deployment
A deployment strategy running two identical production environments (blue and green) where traffic is switched to the new version after verification.
Canary Deployment
A deployment strategy that releases a new version to a small subset of users initially to monitor performance before a full rollout.
Corrective Maintenance
System maintenance activities involving fixing errors and bugs identified after the software is in use.
Adaptive Maintenance
System maintenance involving modifying software to keep it compatible with changing environments, such as new operating systems.
Version Control
A system that manages changes to software code, allowing multiple developers to collaborate and track the history of changes.
Repository
A storage location in version control for software code and its revision history.
Commit
A snapshot of changes made to the codebase at a specific point in time within a version control system.