CS 3240 Software Engineering - MVC and REST

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

1/30

flashcard set

Earn XP

Description and Tags

Flashcards created to review key concepts and terminology from Software Engineering lecture on MVC and REST.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

31 Terms

1
New cards

Client-Server Architecture

A distributed application structure that partitions tasks or workloads between service providers (servers) and service requesters (clients).

2
New cards

Three-Tier Architecture

A software architecture pattern that separates an application into three layers: presentation, logic, and data.

3
New cards

MVC Pattern

Model-View-Controller; an architectural pattern that separates an application into three interconnected components.

4
New cards

Separation of Concerns

A principle for separating a computer program into distinct features that overlap in functionality as little as possible.

5
New cards

Statelessness (in REST)

A principle where no state information is stored in the server; each request from a client contains all the information needed to process that request.

6
New cards

Idempotency (in REST)

A property that ensures that executing the same operation multiple times results in the same state and response.

7
New cards

Addressable Resources

In REST, everything is represented as a resource identifiable by a URL.

8
New cards

Well-Defined Operations

In REST, the standard HTTP methods (GET, POST, PUT, DELETE) define the operations that can be performed on resources.

9
New cards

Structured Data

Data that is organized in a predictable format, such as HTML, XML, or JSON, making it easily parseable.

10
New cards

Service-Oriented Architecture (SOA)

An architectural pattern based on the concept of services, where software components provide services to other components via a communication protocol.

11
New cards

Asynchronous Communication

A method of communication where sending and receiving can happen independently, allowing for non-blocking operations.

12
New cards

REST API

An application programming interface (API) that adheres to REST architectural constraints and enables interaction with RESTful services.

13
New cards

MVC Frameworks

Software frameworks that utilize the Model-View-Controller pattern to facilitate the development of user interfaces.

14
New cards

Functional Requirement

A specific behavior or function of a software system as defined by user requirements.

15
New cards

Synchronous internet

Blocking, execution of each operation depends on the one before and the task requires a response before moving on

16
New cards

Software entropy

as a software system ages, it becomes increasingly risky that a change to the existing software will result in unexpected problems or failure

17
New cards

System Architecture

Very high-level design for complex systems, often includes business processes

18
New cards

High-level(software architecture)

Modularity, internal interfaces, data sources and external interfaces

19
New cards

Low level design

Detailed algorithms and data structures

20
New cards

Generic web browswer

UI, Browser engine, rendering engine, data persistence, XML parser, networking, JavaScript interpreter and backend display

21
New cards

Peer-to-peer architecture pattern

Multiple computers, communicate through input and output over network

22
New cards

Layered architecture pattern

Organized hierarchically layers providing a service to layer above, layer acts as client to the layer below

23
New cards

Risk Management Cycle

Identify, Analyze, Prioritize, Plan, Mitigate, Monitor

24
New cards

Usability

Effectiveness, efficiency and satisfaction

25
New cards

User centered design

Approach to design that involves the user a great deal, in many phases

26
New cards

Effectiveness

Accuracy and completeness in achieving goalsE

27
New cards

Efficiency

resources expended

28
New cards

Satisfaction

Comfort, acceptability

29
New cards

Persona

Description of archetypical, hypothetical and imaginary user

30
New cards

Data driven personas

created from user-reported usage data

31
New cards

5 E’s

Effective, efficient, engaging, easy to learn and error tolerant