cs2043 Ch. 3-5

Ace your homework & exams now with Quizwiz!

What is the goal of a software process model?

Goal of software process model is to provide guidance for a systematic way to coordinate and control the tasks that must be performed in order to achieve the end software product and the associated software project objectives.

Explain the differences between CMM and CMMI?

In CMM, to achieve a higher level, more (matured) processes need to be added. CMMI-staged is similar to CMM. In CMMI, a company can achieve maturity of individual selected processes, instead of all required processes as in CMM. Also, for each process or process area that a company chooses to implement, it can be implemented gradually in different levels by achieving a higher level's specific goals for that process (area) and the generic goals for that level.

What is test-driven programming/development? How test-driven programming is used in agile based development?

Write test cases before code is developed. Write code to satisfy its test case. Testing is done continuously and automated as much as possible. Programmers write unit tests for all their code.. Keep running the tests all the time. Test-driven programming is advocated in the XP (extreme programming) methodology. Pre-written test cases can be considered as development requirements in agile development.

List 4 or more major differences between agile methodologies and traditional development process models? Explain your answer.

-assumes requirements will change -user involvement is frequent -minimal documentation -low process complexity -informal communication

Compare Scrum and RUP. What are they in common or difference?

In common: incremental and iterative Differences: · In Scrum, each iteration implements several sprints (required user stories), and the result of the iteration produce and release a usable system which supports the implemented user functions or stories. The length of each iteration must be 2 or 4 weeks. Also, there is required daily build. In Scrum, development (implementation) efforts are relatively equal among iterations. · In RUP, although each iteration also produces an executable system, but such systems in early iterations are intended neither to be released to users nor support (full) user functions. Lengths of iterations may not be fixed. No requirements for daily build. Development (implementation) efforts may not be evenly distributed among iterations, as different iterations have different focuses, hence efforts, in requirements, design, coding, and test.

Rational Unified Process (RUP) is a two dimensional development process. In the horizontal dimension, there are Inception, Elaboration, Construction, and Transition. In the vertical dimension, there are Requirements, Analysis and Design, Implementation, and Test. Describe the relationships between these two dimensions and their elements.

The horizontal dimension indicates the progress or stages of a software project development, from inception of requirements to elaboration of requirements and design to implementation of the design to deployment of the developed software system. The vertical dimension indicates the development activities or phases in each iteration of the development which leads to an executable (partial) system which is to be incrementally completed.

What motivated the software engineers to move from the waterfall model to incremental or spiral model?

The need to deal with changes, develop multiple components, to overlap the development activities, and to be more evolutionary lead to incremental process and spiral process.


Related study sets

LearningCurve 7a: What Is Learning; Classical Conditioning (LO 7.1-7.4)

View Set

Bible - The Universe Next Door : Ch.4-5

View Set

assessment exam 2 practice questions

View Set

Nutrition - Food Insecurity and Public Health (Week 15)

View Set

BIOL 1322 Chapter 2 Practice Test

View Set

Illinois laws and rules pertinent to insurance

View Set