(1.2.3) Software Development

Pataasin ang iyong marka sa homework at exams ngayon gamit ang Quizwiz!

What's the disadvantages of the spiral model?

- Can be very costly - Requires high level of expertise for risk analysis - Success is dependent on risk analysis - Not suitable for smaller projects.

What is the advantages of XP?

- Cost-effective - Robust solutions - Efficient code/ less bugs - More easily meet user requirements - Less dependent on individual

What is the advantages of RAD?

- End user feels more involved - Product is more likely to match users' requirements - Prototypes provides tangible product early on - Shortened development cycle (compared to Waterfall) - End user involvement allows flexibility

What's the advantages of the spiral model?

- Focuses on risks such as financial risk (budget) - Suitable for large/critical projects - Good documentation control - Additional functionality can be added at a later stage - S/W is produced early in lifecycle

What is the disadvantages of RAD?

- Inefficient for large scale projects - Regular contact needed with end user - Not suitable if efficiency of the solution is a priority. - User requirements may change often

What is the disadvantages of the waterfall model?

- Lack of flexibility - High risk factor, if the stakeholder changes their mind it will be difficult to change - No working software is produced until late during life cycle. - Not suitable for projects where requirements are at a risk of changing.

What is the disadvantages of XP?

- Requires constant end-user involvement - No quality assurance of coding - Often poorly documented

What is the advantages of the waterfall model?

- Simple - Easy to manage - Each stage has clear deliverables - Each stage has well defined boundaries - Easy to spot timescale slips

What is Acceptance Testing

Acceptance testing is where the program is complete and is demonstrated to the end user. This is to show that it works and that all desired features are implemented. It is tested against the requirements which were agreed between the end user and the programmers.

What are Agile Methologies?

Agile Methodologies is a collection of software development methods. It is where the stages of software development are not completed in a linear sequence like the other methods. It might be that some parts of the systems are designed and implemented whilst other parts are still being analysed. This is an iterative process during which changes are incremented. This allows the solution to be flexible, have shortened development time and exactly in line with user requirements.

What is Alpha Testing?

Alpha testing is carried out during development by a restricted group within the company acting as though they were potential users. Any bugs found are reported and fixed quickly.

What is Beta Testing?

Beta testing is carried out when the program is nearly complete. It is where the program is released to potential users outside the company to test it in normal operating conditions. If there are still any bugs which the programmers had not anticipated, these are reported to the company.

What is Black Box Testing?

Black box testing is carried out independently of the code used in the program. It tests a set of input data to see if they produce the expected output. We are not concerned with what's happening within the code. Sets of test data are carefully chosen to represent all possible scenarios

What is Borderline/Extreme Test Data?

Data that lies at the boundaries between different cases.

What is Invalid/Erroneous Test Data?

Data which should generate an error message if it was inputted. For example, incorrect data type.

What is Normal/Valid Test Data?

Data which you would normally expect the user to input

What is Extreme Programming (XP)

Extreme programming (XP) is a type of agile development in which frequent prototypes of the software are made in short development cycles. This allows user requirements to be "drip-fed". It's a flexible process that focusses on programming, improving productivity. Pair programming is often used in XP where a pair of programmers work together on the same computer with one writing the code and the other reviewing and directing the code.

What is the Rapid Application Development (RAD)?

Rapid Application Development uses successive prototypes versions to refine and add features to the program. This is also an iterative process and fits closely with Spiral model. Several increasingly refined prototypes are made with reduced functionality, these are designed, coded, tested and evaluated by the client. The client decides if they're happy with the system or wants further improvements. There's no formal analysis and design stages which helps it be a faster development methodology.

What is the spiral model?

The spiral model introduces the idea of developing the software in iterative steps and is a risk driven approach to development. It is designed to identify risks that arise in the project and deal with them before they become a problem. The model has four stages each taking up one quadrant of the spiral. In quadrant 1, objectives and requirements are determined. In quadrant2, risks are identified and resolved. A prototype is then developed which is tested in the third quadrant. After this the project is either complete, or if the user wants more the final quadrant works on planning the next iteration

What is the waterfall model?

The waterfall model is the software methodology in which each step is completed one at a time from start to end. It's possible to return to previous stages however you'll need to work back down the stages. It has formal and well documented stages.

What is a Syntax error?

When the compiler or interpreter doesn't understand something you've typed because it doesn't follow the rules or grammar of the programming language.

What is a Logic error?

When the compiler or interpreter is able to run the program, but the program does something unexpected due to a flaw in the programs logic.

What is a Runtime Error?

When the compiler or interpreter is understands what to do however it cannot execute it as it's impossible

What is White Box Testing?

White box testing is where the code logic is tested. The program code is studied and every possible path of execution through the program is identified and tested.


Kaugnay na mga set ng pag-aaral

Chapter27- Growth and Development of the Preschooler

View Set

ARTH103 Chapter 17 QUIZ: Japan before 1333

View Set

Basic Insurance concepts and principles

View Set

Chapter 48: Musculoskeletal or Articular Dysfunction NCLEX

View Set

Political Science: India and Japan (Exam 2)

View Set

Intro to Nursing FINAL EXAM (Nur 103)

View Set