Shared Flashcard Set

Details

SE final
Software Engineering Final
48
Computer Science
Undergraduate 3
12/14/2012

Additional Computer Science Flashcards

 


 

Cards

Term
What is software Engineering?
Definition
"A form of creative human design."
Term
3 Perspectives of Software Engineering
Definition
Business
Engineering
Design
Term
Essential Difficulties of SE
Definition
CCCI
Complexity
Conformity
Changeability
Intangibility
Term
Principal Design Decisions
Definition
BINS
Structure
Behavior
Interaction
Non-Functional Properties
Term
Definition of Software Architecture
Definition
"Software architecture is the blueprint for a software system's construction and evolution."
Term
Fundamental Principles of Software Architecture
Definition
Rigor and formality
Modulary and Abstraction
Generality
Incrementability
Anticipation of change
Term
Component
Definition
-Encapsulates a subset of a system functionality
-restricts access
-explicit defined dependencies
Term
software connector
Definition
procedure call or shared data access
provide application-independent interaction
procedure call, shared memory, message passing, streaming, distribution
Term
7 Styles of architectural configuration or topology
Definition
Object-oriented
MVC
Client server
blackboard
P2P
pip and filter
pub-sub
Term
Why is descriptive modified from prescriptive?
Definition
Sloppiness
Short deadlines
lack of documentation
need for code optimization
inadequate tech
Term
Why user-orientation matters?
Definition
its where you make your money
medical equipment needs to be easy to use
Term
What does UCD cause
Definition
Simpler
cheaper
higher sales
higher satisfaction
Term
User-Centered Methods
Definition
IPSSSSMD
Interviews & observations
Personas
Scenarios
Storyboards
Swimming lane diagrams
Site maps
Mock Ups
Design Guidelines
Term
Heuristic Evalutions
Definition
MUVCREAMHH
Maintain system words to real words
User Control and Freedom
Visible system Status
Consistency & standards
Recognition rather than recall
Error Prevention
Accelerators
Minimalistic design
Help error recovery
help and documentation
Term
Build-And-Fix
Definition
S: Fine for short program
W: Bad for non-trivial programs
Term
Waterfall
Definition
S:Documentation
and disciplined
W:Might not get the right program by the end.
Term
Rapid Prototype
Definition
S:Ensures product meets clients needs
W:Beyond all doubt
Term
Incremental
Definition
S:Maximizes early return on investment
and promotes maintainability.
W:May degenerate into build-and-fix.
Term
Synchronize-and-stabilize
Definition
S:Ensures components can be successfully integrated.
W:Only microsoft uses it.
Term
Spiral
Definition
S:Incorporates features of all other models.
W:Only works on large scale and must have good RA and risk resolution team.
Term
Rational unified process
Definition
Put certain amount of time into all categories.

The need to have flexibility/adaptability in the process itself.
Term
Open Source Software
Definition
Develop initial version, then maintain.
Users become co-developers.
Term
Extreme Programming
Definition
Collective code ownership
just enough feedback to know where you are
Pair programming
simple practice
Term
Techniques to create requirements
Definition
Interviews, use case/scenarios, prototype solutions, observe customers, identify important object/roles/functions, perform research, glossaries, question yourself.
Term
Requirements Doc
Definition
Intro
executive summary
application context
Functional requirements
Environmental requirements
Software qualities
Other requirements
Time schedule
Potential risks
Future changes
Glossary
References
Term
Software Qualities
Definition
Cretim Purifs
Correctness, reliability, efficiency, testability, integrity, maintainability, portability, usability, reusability, interoperability, flexibility, simplicity
Term
Users of Requirements Doc
Definition
System Customers
Managers
System Engineers
System Test engineers
System maintenance engineers
Term
V-Model of Dev & Test
Definition
Develop -> Dev ~~~ Tests -> Execute
1.Req. 1.Acceptance 1. System
2.Design 2.Integration->
3.Code 3.Unit ->
Term
Purpose of design notations
Definition
Talk
Think
Prescribe
Term
8 different Design Notations
Definition
CUSS PEAS Class diagram User interface storyboard sequence diagrams Pseudo Code Entity relationship diagrams Architectural diagrams State-transition diagrams
Term
UML
Definition
Help designers with understand the execution of class diagrams with the classes, their inter-relationships and the operations/attributes of the class.
Term
Verification
Definition
Ensure software meets specification
internal consistency
"Are we building the product right?"
Term
Validation
Definition
Ensure software meets customers intent
External consistency
"are we building the right product?"
Term
Point of QA?
Definition
Assure software qualities are met
reveal and location F/F/E
show system correctness
improve the confidence that the system performs as specified and desired
Term
Failure
Definition
Incorrect output or crash
Term
Fault
Definition
Invalid execution state, may or may not produce a failure
Term
Error
Definition
Defect in source code, called a bug
Term
Different levels of testing
Definition
Unit
Integration
Acceptance
Term
What are the tests tasks?
Definition
Devise Test Cases
Choose Test Cases
Run Test Cases
Term
What is scaffolding?
Definition
Additional code brought to support dev
Test Driver (Main)
Test stub: Replacement of real code
Test Harness: replacement of other parts
Term
What is Test Oracle?
Definition
Mechanism to decide whether test case succeeds or fails
Term
What is White Box Testing?
Definition
Structural
tests the nitty gritty
need access to source code
*Choose test cases that cover all
Term
What is black box testing?
Definition
Specification-based testing
System behavior
Less systematic
*Test w/ req, design, function sig
Term
What are some different test cases?
Definition
Nodes
edges
loops
conditions
paths
Term
Challenges of QA
Definition
Not all faults are obvious
nodes, edges, or loop combos infeasible
"thoroughness"
Term
What different subdomains can you make from a basis?
Definition
Size
order
structure
correctness
Term
How to avoid problems of structural testing
Definition
LICE SMCG
Listeners
interactive programs
concurrent programs
exceptions
self-modifying programs
mobie code
constructors/destructors
garbage collection
Term
4 Complications of QA
Definition
1. Real Needs vs Actual spec & correct
2. Complexity of everything
3. Management, QA, and dev working together.
4. QA is considered cumbersom
Supporting users have an ad free experience!