Software Development & Management Flashcards

1
Q

What are the software process activities ?

A

Evolution, Validation, specification, development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the advantages of the incremental delivery over waterfall methodologies ?

A

Faster delivery of products, cheaper to make changes, and better for business systems

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the best systems to use the waterfall method ?

A

Embedded systems and safety critical systems

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the most popular agile development methodology ?

A

SCRUM

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the stages of reuse oriented appoarch

A

Requirements specification, software discovery and evaluation, requirements refinement, application system configuration, component adaptation and configuration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What happens during the software discovery and evaluation process in the reuse oriented approach

A

A search for the software and components that provide the required functionality will be done they will be checked to see if they meet the requirements that were made prior.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What may happen if the modifications to the reused software or components is impossible

A

Alternative solutions will be looked for

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What happens during the application system configuraition ?

A

This is in the event that an off the shelf software that meets all the requirements is found this will be configured to become the entire solution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Why would we use use and system requirements ?

A

This is so that different people need different things

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are user requirements ?

A

Broad statements that will state the services that the system provides

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are system requirements

A

These are high level descriptions of the system that will state the functions and services that the system would do

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are functional requiments ?

A

These are statements of how a system would respond to input, this would contain explicitly what the system should do

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are lehmans laws of reasons to evolve a system

A

Changing environment of the system, wanting to satisfy users, feedback systems, system structure to be kept simple,

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the reasons to not CHANGE a legacy system

A

high business value high quality, expensive, integral part of the business model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is black box testing ?

A

Where the behaviour of the system is tested with test cases

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is white box testing ?

A

Where the code is tested against test cases

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is acceptance testing ?

A

A team of testers will test the system to see if it meets the requirements of the user, they will see whether the system is fit for purpose or requires more development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is release testing ?

A

This is when the system is tested prior to its release if the software is custom it will be tested by the customer against all requirements, if it is a general purpose software the public features will be tested before being realesed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What are the categories that a legacy system can fall into?

A

high business value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is grey box testing ?

A

Combination of black box and white box testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What are the reasons for testing a system ?

A

To make sure that the system is fit for purpose can be used in the environment that it was meant to be used in

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What is unit testing ?

A

Where classes and objects will be tested against a series of inputs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is component testing ?

A

This is where a combinaiton of individual units are combined to form components and are tested

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is system testing ?

A

This is where the system as a whole is tested against the requiirements

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What is defect testing ?

A

This is where the system will tested to find errors and defects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

What is SOA ?

A

service oriented architecture, is the way that the software will communicate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What is a product backlog ?

A

This is a list of things that will need to be accomplished in a sprint

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What is a scrum master ?

A

Someone who will interface with the organisation about the progress of the scrum and relay new information to the engineers, keep the developers on task and without distraction, they will manage the product backlog, and schedule daily meetings

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What are metrics in software quality

A

The degree of measurements that are within a piece of software such as the amount of errors that are experience by a user per hour

30
Q

What is a function point in software quality

A

This is a quantitive measurement of the amount of code that is written used to show developers the implementation size of their code

31
Q

What is the issue in using LOC to measure the quality of software ?

A

This is subjective because code that is long is said to be of lower quality rather than more compact code

32
Q

Why would someone want to use waterfall methodology over an agile development methodology ?w

A

Because they are developing large systems / critical systems that require a lot of planning documentation and rigid software structure

33
Q

What are the principles of agile development ?

A

PEOPLE NOT PROCESS, CUSTOMER INVOLVEMENT, INCREMENTAL DELIVERY,

34
Q

What is system validation and verification ?

A

validation is where a system will

35
Q

What are the reasons for system failures ?

A

poor requirements gathering and poor specification

36
Q

Describe a control flow graph and what it is used for

A

this is the flow of a program, this is used to identity faults within a component of a system

37
Q

How are requirements gathered in XP ?

A

story cards are developed with customers as they will be toghether developing scenarios on the situations that someone will use the system in

38
Q

What is UML used for ?

A

Unified modelling language,

39
Q

What is a use case ?

A

This will show how a user will use the system with a certain goal in mind

40
Q

What is bottom up estimation in software planning

A

This is where the effort cost be estimated by the development of each component of the system

41
Q

What are experience based techniques

A

Basing the effort cost in people months of how long it will take to develop the system, team of people will estimate the length of time to complete an activity, this will calculate the time taken

42
Q

What are the factors that impact productivity

A

The environment they work in, the support they get, the process quality and the project size

43
Q

What is avoid single point failure ?

A

This means that they cannot fail at one portion of security and be locked out of their account they have to fail multiple things to be locked of their account

44
Q

What is the difference between alpha and beta testing

A

Alpha is where users will come to the development site and work with the developers and test the software there. In beta the users will be given a release version of the software to use in their own environment

45
Q

What is top down estimation

A

This is where they asses the effort cost based on the sub systems being used

46
Q

What are examples of object oriented design processes

A

Atchitectural design, sequence modelling, use cases, design models, process stages, object class identification

47
Q

What are examples of object oriented design processes

A

Architectural design, sequence modelling, use cases, design models, process stages, object class identification

48
Q

What goes in a test case

A

Expected result, actual result, test case ID, test data, preconditions, summary of test, what will happen in the test

49
Q

What happens to a legacy system if the business value is low and the quality is low

A

GET RID OF IT REMODEL THE BUSINESS

50
Q

If quality is high low business value

A

CONTINUE, if it gets to expensive REMOVE IT

51
Q

If quality is high low business value

A

CONTINUE, if it gets to expensive REMOVE IT

52
Q

If quality is high HIGH business value

A

Maintain the system

53
Q

LOW QUALITY HIGH VALUE

A

Re engineer it and improve quality and improve maintainability

54
Q

LOW QUALITY HIGH VALUE for legacy systems

A

Re engineer it and improve quality and improve maintainability

55
Q

How do you measure the quality of software

A

The amount of errors, change requests and how complex the system is (cyclical complexity)

56
Q

What are the types of maintenance ?

A

FAULTY REPAIR, CHANGE FUNCTIONALITY on request, change for the environment that is already changing

57
Q

What are the factors that will impact the systems lifetime

A

Replacement cost, return of investment, investment cost,

58
Q

What are 8 software attributes 4 being the main ones ?

A

MAINTAINABILITY, DEPENDABILITY, USABILITY,EFFICIENCY, ROBUSTNESS, SECURE

59
Q

What is refactoring and why would it be done ?

A

Cleaning up and restructuring code, so that the system structure doesnt degrade

60
Q

What are the metric dos and donts ?

A

Dont ignore data, don’t use one metric, provide feedback, select and state clear goals, dont measure individuals

61
Q

What is refactoring and why would it be done ?

A

Cleaning up and restructuring code, so that the system structure doesn’t degrade

62
Q

What are the metric dos and donts ?

A

Don’t ignore data, don’t use one metric, provide feedback, select and state clear goals, don’t measure individuals

63
Q

What is the purpose of SOA ?

A

To provide programs with services such as specialised processing or access to data and information as well as storage resources

64
Q

What are the benefits of SOA

A

They are promoting loose coupling, many organisations services can communicate, promote reuse, as they are geared towards that

65
Q

What are the pitfalls of SOA

A

No transition plan, not standerdised

66
Q

What are the 3 layers of SOA and what languages are used in first gen ?

A

Application Business and orchestral, WSDL, XML, SOAP

67
Q

What is SOAP used for ?

A

Communication between the services

68
Q

What are the key properties of SOA ?

A

Autonomy as the serivces have control over the logic they have, loose coupling, resuability, composability, composite services are created with individual services included

69
Q

What is WSDL ?

A

The description of a service, creates the point o contact between the requester and service endpoint

70
Q

What are the factors that will impact a system lifetime

A

RETURN OF INVESTMENT, REPLACEMENT COST, INVESTMENT COST, DEPENDENCIES, BREAKAGE IN THE CASE OF REPLACEMENT ( RISK OF CHANGE)