System Integration & Architecture MIDTERMS

0.0(0)
studied byStudied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/178

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 11:03 AM on 3/14/25
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

179 Terms

1
New cards

System Usability Scale

Is a questionnaire that is used to evaluate the usability of products and services.

2
New cards

System Usability Scale

Was originally created as a “quick and dirty” scale for administering after usability tests on systems like VT100 Terminal (“Green-Screen”) applications.

3
New cards

System Usability Scale

Consists of only 10 questions, which are answered using a Likert scale. The range goes from “I strongly agree” to “I strongly disagree.”

4
New cards

John Brooke in 1986.

was released into this world by

5
New cards

System Usability Scale

It has become an industry standard with references in over 600 publications, almost 30 years of use.

6
New cards

True

T or F: The System Usability Scale is a Likert Scale which includes 10 questions which users of your website will answer.

Participants will rank each question from 1 to 5 based on how much they agree with the statement they are reading. 5 means they agree completely, 1 means they disagree vehemently.

7
New cards

The SUS is a 10 item questionnaire

  1. I think that I would like to use this system frequently.

  2. I found the system unnecessarily complex.

  3. I thought the system was easy to use.

  4. I think that I would need the support of a technical person to be able to use this system.

  5. I found the various functions in this system were well integrated.

  6. I thought there was too much inconsistency in this system.

  7. I would imagine that most people would learn to use this system very quickly.

  8. I found the system very cumbersome to use.

  9. I felt very confident using the system.

  10. I needed to learn a lot of things before I could get going with this system.

8
New cards

68

The average System Usability Scale score is?

9
New cards

score < 68

There are probably serious problems with your website usability which you should address

10
New cards

score > 68

All goods imo website

11
New cards

A

80.3 or higher

12
New cards

C

68

13
New cards

F

51 or under

14
New cards

Scoring

knowt flashcard image
15
New cards

True

T or F: Even though a SUS score can range from 0 to 100, it isn’t a percentage.

16
New cards

Requirements Elicitation

Is the process of identifying, gathering, and understanding the needs and expectations of stakeholders for a software project.

17
New cards

Requirements Elicitation

It is a critical phase in the Software Development Life Cycle (SDLC) as it lays the foundation for defining the system's functionality, constraints, and objectives.

18
New cards

Requirements Elicitation

  1. Stakeholder Identification

  2. Techniques for Gathering Requirements

19
New cards

Stakeholder Identification

Determining key users, clients, and decision-makers.

20
New cards

Techniques for Gathering Requirements

  1. Interviews & Surveys

  2. User Stories and Use Cases

  3. Prototyping

  4. Requirement Workshops

  5. Requirement Workshops

  6. Document Analysis

  7. Brainstorming Sessions

21
New cards

Interviews

Direct interaction with stakeholders through —- allows for a deep dive into their needs.

22
New cards

Surveys

Can gather quantitative data from a larger audience, providing a broader perspective.

23
New cards

Interviews & Surveys

ex. business analyst might use structured interviews to gather detailed user requirements

24
New cards

User Stories and Use Cases

These narrative tools help in visualizing the end-user's interaction with the system, making it easier to understand and communicate requirements.

25
New cards

User Stories and Use Cases

ex. user stories describe how a customer will use an online shopping platform can help developers understand the features needed.

26
New cards

Prototyping

Creating mock-ups for validation.

27
New cards

Prototyping

ex. Clickable prototype of a mobile app interface can help stakeholders visualize the end product and suggest changes early in the development process.

28
New cards

Requirement Workshops

These collaborative sessions bring together various stakeholders to discuss and reconcile different needs and viewpoints

29
New cards

Requirement Workshops

ex. Conducting a workshop with end-users, developers, and quality assurance teams to define the acceptance criteria for a new feature.

30
New cards

Observation & Job Shadowing

Analyzing existing workflows.

31
New cards

Observation & Job Shadowing

ex. Shadowing a nurse during their shift to understand the requirements for a healthcare management system

32
New cards

Document Analysis

Reviewing existing documentation can provide insights into current processes and systems, helping to identify areas for improvement.

33
New cards

Document Analysis

e.g. Analyzing user manuals to identify gaps in current software functionalities

34
New cards

Brainstorming Sessions

Collaborative sessions to explore ideas.

35
New cards

Brainstorming Sessions

e.g. A brainstorming session that leads to the idea of integrating AI

36
New cards

Requirement Classification

  1. Functional vs Non-functional Requirements

  2. Requirements Documentation

  3. Requirements Maintenance & Management

  4. Modeling Tools and Methodologies using UML

  5. Testing of Requirements

37
New cards

Functional Requirements

These define the specific features, functionalities, and behaviors that the system must perform.

38
New cards

Functional Requirements

Examples:

  • User authentication and authorization

  • Data input and validation

  • CRUD operations (Create, Read, Update, Delete)

  • Payment processing in an e-commerce system

  • Generating reports and dashboards

39
New cards

Non-functional Requirements

These define the quality attributes, constraints, and system performance that do not directly relate to specific functionalities.

40
New cards

Types of Non-functional Requirements

  1. Performance Requirements – System response time, load capacity

  2. Scalability – Ability to handle growing user loads Security

  3. Requirements – Data encryption, authentication standards

  4. Usability Requirements – User experience, accessibility

  5. Reliability & Availability – System uptime, error handling

  6. Maintainability & Portability – Ease of updates, system migration

41
New cards

How to Gather Functional Requirements

  1. Interviews: Talk to stakeholders or users to understand their needs.

  2. Surveys: Distribute questionnaires to gather input from a larger audience.

  3. Workshops: Host sessions to brainstorm features and gather feedback.

42
New cards

How to Gather Non-functional Requirements

  1. Performance Benchmarks: Consult with IT teams to set expectations for performance and load.

  2. Security Standards: Consult with security experts to define the best practices for data protection.

  3. Usability Testing: Test the system to find areas where users might struggle and refine the interface.

43
New cards

Functional Requirements Definition

Describes what the system should do, i.e., specific functionality or tasks.

44
New cards

Non-Functional Requirements Definition

Describes how the system should perform, i.e., system attributes or quality.

45
New cards

Functional Requirements Purpose

Focuses on the behavior and features of the system.

46
New cards

Non-Functional Requirements Purpose

Focuses on the performance, usability, and other quality attributes.

47
New cards

Functional Requirements Scope

Defines the actions and operations of the system.

48
New cards

Non-Functional Requirements Scope

Defines constraints or conditions under which the system must operate.

49
New cards

Functional Requirements Measurement

Easy to measure in terms of outputs or results.

50
New cards

Non-Functional Requirements Measurement

More difficult to measure, often assessed using benchmarks or SLAs.

51
New cards

Functional Requirements Impact on development

Drives the core design and functionality of the system.

52
New cards

Non-Functional Requirements Impact on development

Affects the architecture and overall performance of the system.

53
New cards

Functional Requirements focus on user needs

Directly related to user and business requirements.

54
New cards

Non-Functional Requirements focus on user needs

Focuses on user experience and system performance.

55
New cards

Functional Requirements Documentation

Typically documented in use cases, functional specifications, etc.

56
New cards

Non-Functional Requirements Documentation

Documented through performance criteria, technical specifications, etc.

57
New cards

Functional Requirements Evaluation

Can be tested through functional testing (e.g., unit or integration tests).

58
New cards

Non-Functional Requirements Evaluation

Evaluated through performance testing, security testing, and usability testing.

59
New cards

Functional Requirements Dependency

Determines what the system must do to meet user needs.

60
New cards

Non-Functional Requirements Dependency

Depends on how well the system performs the required tasks.

61
New cards

Requirements Documentation

  • Software Requirements Specification (SRS) .

  • User Stories and Use Case Diagrams

  • Business Requirement Document (BRD) vs. Functional Requirement Document (FRD)

  • IEEE Standard for SRS

  • Traceability Matrix

62
New cards

Software Requirements Specification (SRS) .

Lists out all the requirements stated by the user inconsistent manner.

63
New cards

Requirements Maintenance & Management

  • Change Management in Requirements

  • Version Control for Requirements

  • Impact Analysis of Requirement Changes

  • Handling Requirement Conflicts

64
New cards

Modeling Tools and Methodologies Using UML

  • UML Diagrams (Use Case, Class, Sequence, Activity, State Machine)

  • Data Flow Diagrams (DFD)

  • Entity-Relationship Diagrams (ERD)

  • BPMN (Business Process Model and Notation)

  • Agile Requirement Modeling (User Stories, Epics)

65
New cards

Testing of Requirements

  • Requirements Validation and Verification

  • Test-Driven Development (TDD) and Behavior-Driven Development (BDD)

  • Requirement-based Test Case Design

  • Ensuring Test Coverage of Requirements

  • Acceptance Criteria and User Acceptance Testing (UAT)

66
New cards

The Use Case Diagram

Visually represents interactions between users and the system.

67
New cards

Processes (Functionalities)

These are actions or operations performed in the system (e.g., user registration, book search).

68
New cards

Modules (Components of the System)

These are structural divisions of the system that group related functionalities (e.g., User Management Module, Book Management Module).

69
New cards

Use Cases (User Interactions)

These describe how users interact with specific functionalities (e.g., “Register/Login” represents the process of authentication).

70
New cards

System Development Life Cycle

Refers to the overall process of developing software from conception to deployment and maintenance.

71
New cards

System Development Life Cycle

It is a framework that defines the stages (e.g., planning, analysis, design, implementation, testing, deployment, and maintenance) and can follow various models like Waterfall, V-Model, Agile, etc.

72
New cards

10 System Development Life Cycle

  1. Waterfall

  2. Agile system development

  3. Spiral

  4. V-model (Verification and validation model)

  5. Prototyping model

  6. RAD (Rapid application development)

  7. Incremental model

  8. DevOps Methodlogy

  9. LEAN development

  10. Object oriented development

73
New cards

Waterfall

  • A linear, sequential approach.

  • Each phase must be completed before the next begins.

  • Best suited for projects with well-defined requirements.

74
New cards

Agile

  • An iterative and incremental approach.

  • Focuses on flexibility, continuous feedback, and delivering working software in small increments.

  • Ideal for dynamic projects with evolving requirements.

75
New cards

Spiral

  • Combines iterative development with risk management.

  • Focuses on cycles (or "spirals") where each loop involves planning, risk analysis, development, and evaluation.

  • Suitable for large, high-risk projects.

76
New cards

V-model

  • A structured, linear approach where each development phase is directly associated with a corresponding testing phase.

  • Verification (design and development) and validation (testing) activities run in parallel.

  • Relation to SDLC: It is a variant of the Waterfall model, emphasizing early and systematic testing within the SDLC framework.

77
New cards

Prototyping model

  • Focuses on building a prototype early in the development process to understand user requirements better.

  • Feedback from the prototype is used to refine requirements and develop the final product.

  • Relation to SDLC: It emphasizes iterative design and user involvement during the SDLC phases, particularly in requirements gathering and design.

78
New cards

RAD

  • A user-centered, iterative approach that emphasizes speed and rapid prototyping.

  • Encourages the use of reusable components and collaborative development.

  • Relation to SDLC: It aligns with SDLC by compressing stages like design, development, and testing into iterative cycles for faster delivery.

79
New cards

Incremental development

  • Divides the project into smaller, manageable parts (increments) that are developed and delivered sequentially.

  • Each increment builds upon the previous one until the final product is completed.

  • Relation to SDLC: It executes the SDLC phases incrementally, providing working software at the end of each cycle

80
New cards

DevOps meetthodology

  • Focuses on collaboration between development and operations teams to automate and streamline software delivery.

  • Incorporates CI/CD (Continuous Integration and Continuous Deployment) pipelines and emphasizes monitoring and feedback.

  • Relation to SDLC: It enhances the implementation, deployment, and maintenance stages of SDLC by integrating automation and collaboration throughout the lifecycle

81
New cards

LEAN methodology

  • Inspired by lean manufacturing principles, it aims to minimize waste and maximize value.

  • Encourages iterative development, continuous improvement, and customer-focused solutions.

  • Relation to SDLC: It optimizes SDLC processes by focusing on efficiency and removing unnecessary steps.

82
New cards

Object-oriented methodology

  • A design approach based on the principles of object-oriented programming, emphasizing encapsulation, inheritance, and polymorphism.

  • Models the system using objects and their interactions to represent real-world entities.

  • Relation to SDLC: Primarily influences the design and implementation phases of SDLC, but the overall process follows the SDLC structure.

83
New cards

Traditional SDLC approaches

  1. Waterfall

  2. Spiral

  3. V-model

  4. Prototyping

  5. RAD

  6. Incremental

84
New cards

Modern SDLC approaches

  1. Agile

  2. DevOps

  3. OOP

  4. Lean

85
New cards

Agile methodology

Is unequivocally a modern approach, designed to address the dynamic and unpredictable nature of contemporary software development.

86
New cards

Agile methodology

It is well-suited for projects requiring flexibility, rapid iteration, and close collaboration with stakeholders.

87
New cards

RAD

Is a traditional methodology due to its origins and limitations, its iterative nature and emphasis on user feedback make it a precursor to modern approaches like Agile. Serves as a bridge between the rigid traditional methods (e.g., Waterfall) and the adaptive, iterative methods of today.

88
New cards

Prototyping

Is fundamentally a traditional methodology with iterative principles. While it is not fully modern, its core ideas have significantly influenced the development of modern, user-focused methodologies like Agile, Lean UX, and Design Thinking.

89
New cards

Additional phases uses

  1. Feasibility Study

  2. Risk Management

  3. Prototyping and Validation

  4. CI/CD

  5. Customer Feedback and Collaboration

  6. Monitoring and Optimization

  7. User Experience (UX) Design

  8. Knowledge Transfer and Training

  9. Retirement and Decommissioning

  10. Compliance and Security Auditing

90
New cards

Key focus of Feasibility Study

Project viability and risk assessment.

91
New cards

Key focus of Risk Management

Proactive identification and mitigation of risks.

92
New cards

Key focus of Prototyping and Validation

Early requirement refinement and validation.

93
New cards

Key focus of CI/CD

Automation of integration and deployment.

94
New cards

Key focus of Customer Feedback and Collaboration

Incorporating continuous feedback.

95
New cards

Key focus of Monitoring and Optimization

Ongoing performance tracking and improvement.

96
New cards

Key focus of User Experience (UX) Design

Creating intuitive and user-friendly designs.

97
New cards

Key focus of Knowledge Transfer and Training

Ensuring smooth adoption and operational continuity.

98
New cards

Key focus of Retirement and Decommissioning

Safe phasing out of software systems.

99
New cards

Key focus of Compliance and Security Auditing

Adherence to standards and legal requirements.

100
New cards

True

T or F: Frameworks and methodologies explicitly designed for software development align closely with SDLC because they provide structured ways to manage its phases, such as planning, design, development, testing, and maintenance.