Shared Flashcard Set

Details

Software
Software and SDLC
35
Software
Undergraduate 1
02/06/2014

Additional Software Flashcards

 


 

Cards

Term

 

What is software ?

Definition

Software is a set of sequential instructions written by programmers. created for a specific task and saved to a permanent storage device.

Term

 

Software will do our tasks..... (how)

Definition

 

Easily

Effortlessly

Accurately

quickly

Repeatedly

Term
How is software written?
Definition
By programmers
In a language computers can understand
In blocks called programs
Term
Define Software Life Cycle
Definition
Prescriptive and descriptive characterization of how software should be devloped.
Term
The steps of the Software Life cycle
Definition
Creation/development
Testing
Distribution to customers
Maintenance
Eventual retirement
Term
Who understands computer programs?
A. anyone who can read
B. Programmers
C. Network Administrators
D. Data entry operators
Definition
B. Programmers
Term
Define SDLC ( Software development Life Cycle)
Definition
Conceptual model used to describe the stages of software development. Engineering activities
Term
Phases of the SDLC
Definition
Requirement Gathering
Design and Analysis
Construction (Coding and Unit testing)
Integration and system testing
Implementation and deployment
Use/Maintenance
Term
In what phase is unit testing performed?
Definition
Construction
Term
Who provides the requirements and what type of function would they be classified as?
Definition
The customer & Buisness requiremnts
Term
Where are the requirements documented and what is the document define as?
Definition
SRS ( Software requirment specifications)
Term
Software Process Models: And types
Definition
Waterfall model - original model
o V Model - extended waterfall model
o Iterative model - repeated cycles
o Incremental model - smaller units
o Spiral model - risk based
o Prototyping model - sampling model
o RAD - Rapid Application Development
o Agile & Scrum - hybrid model
Term
How are SDLC models differentiated
Definition
SDLC models are differentiated by the feedback and control
methods employed and the timing of activities
Term
Advantages of the waterfall model
Definition
o Documentation and clearly defined phases.
o Maintenance easier (assuming up-to-date docs available).
Term
Disadvantages of the waterfall model
Definition
Complete and frozen specification document up-front often
not feasible in practice.
o Customer involvement in the first phase only.
o Sequential and complete execution of phases often not
desirable.
o Process difficult to control.
o The product becomes available very late in the process
(significant risk of building the “wrong” system).
Term
What is the Agile Methodologies
Definition
Agile models – Popular ones
• Scrum
• Feature Driven Development
• Agile Unified Process - Simplified RUP
• Dynamic Systems Development Method
• Essential Unified Process – Improvised RUP
• Agile Modeling
• Extreme Programming
Term
What is the definition of the Agile Methodologies?
Definition
a flexible approach to project management,
typically used in software development.
Term
What is Agility?
Definition
the ability to react to changing situations quickly,
appropriately and effectively
o Notice Changes early
o Initiate action promptly
Term
Is the agility method structured based ore people-based?
Definition
People-based
Term
What is the Agile Manifesto?
Definition
A Statement of Values:
• Individuals and interactions are given importance over processes
and tools.
• Working software is given precedence over comprehensive
documentation.
• Customer collaboration or communication is given importance
over contract negotiations.
• Responding to change over following a documented plan
Term
What is a sprint?
Definition
A sprint is the work done by a sprint team for a specific duration. usually 1 month
Term
Which software process does the agile methodology rely heaviliy on?
Definition
prototyping technique
Term
Advantages of the Agile development methodology
Definition
Agile
o Adaptive. It is flexible and adapts to changing situations.
o People-Oriented. The model focuses on customer & self
organizing teams
Term
steps followed in Agile are:
Definition
1. Planning - Where the requirements are listed & prioritized.
2. Feedback - An iterative step in the cycle where customer reviews
the work packets and gives feedback.
3. Implementation -The phase where development is done.
4. Testing - The phase where the work packets are tested.
Term
Scrum Characteristics are
Definition
*Iterative incremental framework
*Developed in short cycles of work called Sprints
Term
True or False
Scrum is an agile process that focuses on delivering the highest business
value in the shortest time.
Definition
True
Term
Where are the Requirements captured in the Scrum process first then second?
Definition
Product Backlog & Sprint backlogs
Term
What is Requirement Engineering (RE)?
Definition
the science and discipline
concerned with analyzing and documenting requirements
Term
What is a Requirement?
Definition
o A capability needed by a user to solve a problem
Term
Results of poor RE
Definition
Scope creep
poor software estimation
project delay
Term
Difference between User, functional, and non functional requirements
Definition
Users retreive something based on their actions, functional are the functions that the system must perform in order to fulfill the Business Requirements. , and non-functional
Term
Characteristics of Good Requirements
Definition
Complete – fully stated /no
missing information.
• Correct – meets all business requirements
• Consistent – not contradict any other
requirement and is consistent • Unambiguous – only one interpretation.
• Necessary – A needed requirement
• Verifiable – There should be an feasible way to
check that product meets the requirement.
Term
Requirements Engineering framework has the following steps:
Definition
1. Elicitation
2. Analysis
3. Specification
4. Validation
Term
What is Elicitation?
Definition
Ask questions, Listen to customers, Watch what
customers do.
Term
How are requirments traced?
Definition
Requirements Traceability Matrix (RTM) is a tool to document
requirements changes through the life cycle.
Supporting users have an ad free experience!