Answers |Actual Complete Exam |Already Graded A+
Functional Requirements ✔Correct Answer-what a program needs to do
Nonfunctional requirements ✔Correct Answer-The manner in which the functional
requirements need to be achieved
- Real-time requirements (timing)
- Performance requirements (quality)
- Modifiability requirements
- Security requirements
- Usability requirements
Design constraints ✔Correct Answer-Statements that constrain the ways in which the
software can be designed
- User interface
- Platforms
- Schedule requirements
Design Decisions ✔Correct Answer-The steps and thoughts related to design decisions
- Programming language
- Algorithms
Implementations ✔Correct Answer-consistent names, capitalization, and programming
conventions; know thy standard library; test and review code
Acceptance testing ✔Correct Answer-done by clients, or somebody on their behalf, to make
sure the program runs as specified. If this testing fails, the client can reject the program
Verification & Validation test ✔Correct Answer-determine whether the developers are
building the correct system for the client, and verification tests determine if the system build is
correct
Black Box Testing ✔Correct Answer-testing a system with no prior knowledge of its internal
workings; identify how the system responds to expected and unexpected user actions, its
response time, usability issues and reliability issues
White box testing ✔Correct Answer-tests the internal logic of the software application. It uses
knowledge about how the application works and its programming code to test for any errors
Breadth of complexity ✔Correct Answer-more functionalities, features, interfaces and
linkages to other components, users, and data
, Depth of complexity ✔Correct Answer-more linkages and connections, data sharing among
functionalities and logic, control passing among functionalities, nest loops among logic, and
multiple hierarchical levels among functions
4 Activities for attacking complex problems ✔Correct Answer-1. Decomposition
2. Modularization
3. Separation of concerns
4. Incremental iterations
Decomposition ✔Correct Answer-process of breaking down complex problems into smaller,
more manageable parts
Modularization ✔Correct Answer-process of separating the functionality of a program into
independent, interchangeable modules, such that each contains everything necessary to
execute only one aspect of the desired functionality
Continuous Integration/Continuous Deployment or CI/CD ✔Correct Answer-1. continuously
integrating the completed functionality
2. delivering that feature to the users
3. having the users deploying that functionalities
Technology and Tool Considerations ✔Correct Answer-with multiple developers everyone has
different experience; a common programming language, development tools, database, network,
middleware, etc. need to be decided
Nontechnical Considerations of Development and Support ✔Correct Answer-1. Effort
Estimation and Schedule
- cannot be too optimistic or aggressive
2. Assignment of the most effective and properly skilled people for the right tasks
Number of communication Paths Formula ✔Correct Answer-[n*(n-1)]/2
Iron Triangle of Project Management ✔Correct Answer-scope (meet
requirements/specifications), schedule (delivered on time within budget), and quality
(meet/exceed set quality standards)
Four phases of project management (POMA) ✔Correct Answer-planning, organizing,
monitoring, and adjusting
Planning ✔Correct Answer-- understand the requirements of the project
- perform estimation of work effort, schedule and needed resources
- Establish measurable goals
- Identify and analyze project risks