Understanding RFPs and Use Cases in Software Development

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

1/73

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 1:18 AM on 2/19/25
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

74 Terms

1
New cards

RFP (Request for Proposal)

a formal document issued by an organization when seeking bids for a specific project, product, or services. It outlines project requirements, evaluation criteria, and submission guidelines.

2
New cards

Benefits of an RFP

easily evaluate potential vendors side by side and find the software development team that aligns best with business and technical requirements; provides a clear picture of your project's needs and perspectives; software development contracts should correspond to the specified project scope, services, and deliverables provided.

3
New cards

Key Components of an RFP

1. Introduction & Background - Explains the issuing organization and the purpose of the RFP. 2. Project Scope & Objectives - Defines what the organization needs, including deliverables, technical requirements, and goals. 3. Timeline - Specifies deadlines for proposal submission, project milestones, and expected completion dates. 4. Budget (Optional) - Some RFPs provide a budget range to guide proposals. 5. Selection Criteria - Outlines how proposals will be evaluated (e.g., cost, experience, methodology). 6. Submission Requirements - Details required documents, formats, and submission deadlines. 7. Terms & Conditions - Specifies legal, contractual, or compliance requirements.

4
New cards

Use Case

a description of how a user interacts with a product, software, or system to achieve a goal.

5
New cards

Actors in a Use Case

user or system that interacts with the application (ex: customer, admin, payment system).

6
New cards

Goal in a Use Case

objective the actor wants to achieve.

7
New cards

Preconditions in a Use Case

necessary conditions before the use case starts (ex: user must have an existing account).

8
New cards

Flow of Events in a Use Case

the sequence of actions the user/system takes to complete the process.

9
New cards

Basic Flow in a Use Case

ideal steps taken to complete the goal.

10
New cards

Alternative Flows in a Use Case

variations, optional steps, or additional conditions.

11
New cards

Exception Flows in a Use Case

errors or edge cases (ex: invalid credentials during login).

12
New cards

Postconditions in a Use Case

state of the system after the use case is completed successfully.

13
New cards

Example Actor in a Use Case

Registered User.

14
New cards

Example Goal in a Use Case

Access the user dashboard.

15
New cards

Example Preconditions in a Use Case

User must have valid login credentials.

16
New cards

Example Basic Flow in a Use Case

User enters email and password. System verifies credentials. If valid, user is redirected to the dashboard.

17
New cards

Example Alternative Flow in a Use Case

User clicks 'Forgot Password' and resets it.

18
New cards

Example Exception Flow in a Use Case

If the credentials are invalid, an error message is displayed.

19
New cards

Nouns

Classes/Objects: typically things or entities in a sentence

20
New cards

classes

represent the structure or blueprint of an object; what an object should be in terms of properties and behaviors

21
New cards

objects

instances of a class

22
New cards

ex: Noun

Car

23
New cards

Class

Car with make, model attributes, and methods such as startEngine()

24
New cards

Verbs

Methods/Functions

25
New cards

Verbs

represent actions or operations

26
New cards

Methods

define what an object can do and are invoked to perform an operation on the object

27
New cards

ex: Verb

"Drive"

28
New cards

Method

`drive()` (A method inside the `Car` class that defines the action of driving.)

29
New cards

Adjectives

Attributes/Properties

30
New cards

adjectives

describe or modify nouns

31
New cards

attributes

variables inside a class that hold data describing the object's state

32
New cards

ex: Adjective

"Red"

33
New cards

Attribute

`color` (An attribute inside the `Car` class that specifies the car's color, such as `color = "Red"`.)

34
New cards

Adverbs

Non-functional Requirements (NFRs)

35
New cards

adverbs

describe the manner, time, place, or degree of an action; modifies verbs, adjectives, or other adverbs

36
New cards

non-functional reqs

describe how a system should behave or perform rather what it should do; define aspects like performance, scalability, reliability, security, and user experience

37
New cards

ex: Adverb

*"Quickly"*

38
New cards

NFR

The system must handle requests *quickly*, meaning it should have a performance requirement like "response time must be under 1 second."

39
New cards

ex: Adverb

*"Reliably"*

40
New cards

NFR

The system should be *reliable*, such as "the system should have 99.9% uptime."

41
New cards

class diagrams

provides a static view of the system by showing the classes involved and their relationship

42
New cards

name

what it is; identifies the method or function

43
New cards

description

provides a detailed explanation of what the system, use case, or function does

44
New cards

pre-conditions

conditions or state of the system that must be true or met before a function or use case can be executed successfully

45
New cards

post-conditions

conditions or state of the system that must be true after the function or use case has completed its execution; describe the outcome or result of the operation

46
New cards

signature

describes its external interface, which typically includes the method's name, input parameters, and the return type

47
New cards

ReturnType methodName(Type1, Parameter1, type2 Parameter2, ..., TypeN, ParameterN)

If there is no return value then ReturnType must be **void.** It is not mandatory to have method parameters.

48
New cards

sequence diagrams

shows how objects interact with each other over time; show the sequence of messages exchanged between objects and the order in which these interactions occur

49
New cards

key components

objects/participants: entities involved in the interaction (represented by lifelines (vertical dashed liens with the names of the objects or classes))

50
New cards

messages

interactions that occur between objects

51
New cards

synchronous messages

method calls or requests; represented by a solid arrow used to represent method calls or requests that require a response.

52
New cards

async messages

used when a message is sent, but the sender does not wait for the receiver's response to continue.

53
New cards

return messages

represented by dashed arrows indicating the response to a previous message.

54
New cards

activation bar

thin rectangle placed on the lifeline of an object that shows when an object is active.

55
New cards

time

shows the order of messages based on time, with time progressing vertically from top to bottom.

56
New cards

functional reqs

describe what the system should do; define the functions, features, and interactions that the system must support.

57
New cards

nonfunctional reqs

define how the system should perform rather than what it should do.

58
New cards

usability

ease with which a user can learn to operate, prepare inputs for, and interpret outputs of a system or component.

59
New cards

reliability

ability of a system or component to perform its required functions under stated conditions for a specific period of time.

60
New cards

dependability

property of a computer system such that reliance can be justifiably placed on the service it delivers; includes reliability, robustness, and safety.

61
New cards

performance

concerned with quantifiable attributes of the system such as response type, throughput, availability, and accuracy.

62
New cards

supportability

ease of changes to the system after deployment, including adaptability, maintainability, and portability.

63
New cards

throughput

how much work the system can accomplish within a specified amount of time.

64
New cards

availability

degree when system is operational and accessible when required for use.

65
New cards

accuracy

the degree to which the system's output is correct or precise.

66
New cards

FURPS+ model

additional categories of requirements including implementation, interface, operations, packaging, and legal requirements.

67
New cards

implementation requirements

constraints on the implementation of the system (prog lang, hardware platform).

68
New cards

interface req

constraints imposed by external systems.

69
New cards

operations reqs

constraints on the administration and management of the system in the operational setting.

70
New cards

packaging reqs

constraints on the actual delivery of the system (installation).

71
New cards

legal reqs

licensing, regulation and certification.

72
New cards

Entity Object

An object that represents a real-world object in the system we are building, usually appears as a persistent piece of data in the database.

73
New cards

Boundary Object

An object that allows our Entity and Control objects to communicate with external agents.

74
New cards

Control Object

An object whose methods contain the flow of control of the Use Cases.