CH15 Flashcards
Which of the following programming languages requires a compiler?
A. Assembly
B. Linux Bash
C. Microsoft PowerShell
D. C
D. C
Which SDLC phase involves the use of flow charts?
A. Deployment
B. Maintenance
C. Coding
D. Design
D. Design
You are creating a function that must return either a True or False. Which data type should the function return?
A. Boolean
B. Integer
C. Character
D. String
A. Boolean
Which term describes running an action against an object variable?
A. Property
B. Method
C. Debugging
D. Boolean
B. Method
You are working with a file system objects in your code. You need to determine the modification timestamp for a file. What should you reference?
A. Property
B. Method
C. Constant
D. Variable
A. Property
You are using the C programming language to create a software solution. A single variable must be tested for multiple possible values. Which programming construct should you use to achieve this?
A. IF
B. Select Case
C. While
D. Switch
D. Switch
In the C Programming Language, the Switch statement is best suited for testing a single variable for multiple values.
Your code needs to execute the same code for each month of the year, so 12 times. Which type of loop is best suited for this?
A. Switch
B. IF
C. FOR
D. Assembly
C. FOR
When you know how many times a loop should execute, use a FOR loop.
Which of the SDLC phases is the shortest in duration?
Deployment
Which SDLC phase is the Longest in duration?
Coding
Which type of coding practice uses smaller code modules working together to support an application?
Microservices
Software Development Life Cycle (SDLC)?
6 Steps used by Software Developers to create and maintain software solutions. SDLC is also referred to as the Systems Development Life Cycle. One Factor that is CONSISTENT throughout ALL of the SDLC phases is SECURITY.
- Requirement Analysis & Planning
- Design
- Coding
- Testing
- Deployment
- Maintenance
Requirement Analysis and Planning?
Users of the Solution
Overall Purpose of the Solution
Data Inputs and Outputs
Legal and Regulatory Compliance
Encryption of Data at Rest and In Transit
Allocation of human and financial resources
Project Scheduling
Design?
Using the Requirement Specification Document from the first phase as a Guideline, software developers can MAP how inputs and outputs will be consumed and generated by the solution, this is often done using a series of Flowcharts.
Hardware Requirements - Designers must take into account which type of device the software solution will run on, and be accessible from. The amount of CPU power, RAM, disk space, and even graphics capabilities must be considered.
Software Requirements - There could be external dependencies on the other software. This holds true even when creating software that will be embedded within a chip; there might be additional external software components that must also be embedded within the chip for proper functionality.
Coding?
Project Planners allocate code development tasks to developers and development teams, and in turn, software developers write code using a programming language.
A modular or Microservices approach is often employed where code chunks, or modules, are created, each with their own specific functionality. The old method of creating a single large program is called Monolithic application.
The Coding phase is the Longest of all SDLC phases because it’s where the core of the solution is built.
Testing?
During initial software development and then as updates are created over time, code needs to be thoroughly tested to ensure its Stable, it is Secure, and it performs the required functions. Texting can be manual, automated, or a hybrid of both.
Many software developers will deploy a Test Sandbox environment consisting of Virtual Machines hosting web services, authentication servers, and database servers, mobile device simulators, and so on in a cloud environment because of the speed of deployment and low cost compared to acquiring physical hardware on-premises.
Unit Testing - Applied not to the entire software solution but to modules or chunks of code to test.
Regression Testing - is used to make sure new code changes haven’t broken code that worked previously.
Acceptance Testing - ensures that users of the system are satisfied with the solution and that it solves problems outlined in the Requirements Phase.