Exam #1 Flashcards
(18 cards)
What is the difference between a Software Engineer & a Programmer?
Software Engineer is able to design software that can withstand change (creates codes & programs that are robust)
Encapsulation
grouping related data & operations together
Why use Encapsulation?
we use it to control what people can & can’t see depending on which layer of the program they’re on
What happens when we don’t use objects to hold information?
it has to be held in parallel arrays
What does Information Hiding allow for us to do?
allows us to control access to data & operations that have been encapsulated
Why use public and private?
keeps data in sync, accurate, & secure
High Initial Overhead
- need to be identified overhead
- design modules
- design how modules will work together
- start writing code
What does a good design help with?
- makes sure code is reusable
- makes the debugging process easier
- helps code to adapt to change
______ is ensuring that ever object or module has a specific role and can be found in the same (relative) package)
Separation of Concerns
_______ is controlling access to data and operations
Information Hiding
_______ is grouping related data and operations together in one object
Encapsulation
What does Requirements Analysis help with?
- helps us to understand the task
- understand the scope of the project
- figure out the facts
- envision
What term is used when programmers get “keyboard happy”?
Requirement Drift
What is functional requirements?
describes the interactions between the programmers & its environment & users
What makes up User-Story?
Role
What
Why
What is a non-functional requirment?
requirements of the program that aren’t actions or that the user doesn’t interact with directly
What is FURPS+?
Functional requirements
Usability
Reliability
Performance
Supportability
+ Constraints & pseudo requirements