Deck 38: Emerging Trends in Software Engineering
Question
Question
Question
Question
Unlock Deck
Sign up to unlock the cards in this deck!
Unlock Deck
Unlock Deck
1/4
Play
Full screen (f)
Deck 38: Emerging Trends in Software Engineering
1
Explain the differences between model-driven and test-driven software development?
Model-Drive Software Development
-Couples domain-specific modeling languages with transformation engines and generators in a way that facilitates the representation at a high level and transforms it to lower levels
-Domain-specific languages (DSML)represent application structure,behavior,and requirements within particular application domains and are described with meta models that define key semantics and constraints associated with domain concepts
Test Driven Development
-Requirements for a software component serve as the basis for the creation of a series of test cases that exercise the interface and attempt to find errors
-Test cases are created before source code
-Code is developed in very small increments (one sub-function at a time)
-Each new increment requires its own set of test case that must be passed and regression is performed as well
-Couples domain-specific modeling languages with transformation engines and generators in a way that facilitates the representation at a high level and transforms it to lower levels
-Domain-specific languages (DSML)represent application structure,behavior,and requirements within particular application domains and are described with meta models that define key semantics and constraints associated with domain concepts
Test Driven Development
-Requirements for a software component serve as the basis for the creation of a series of test cases that exercise the interface and attempt to find errors
-Test cases are created before source code
-Code is developed in very small increments (one sub-function at a time)
-Each new increment requires its own set of test case that must be passed and regression is performed as well
2
What are the phases of the technology evolution cycle?
-Breakthrough phase - problem recognized and viable solutions attempted
-Replicator phase - initial work is reproduced
-Empiricism - creation of rules to govern the technology
-Theory - follows repeated success
-Automation - creation of automated tools
-Maturity - technology widely used (may never reach this stage)
-Replicator phase - initial work is reproduced
-Empiricism - creation of rules to govern the technology
-Theory - follows repeated success
-Automation - creation of automated tools
-Maturity - technology widely used (may never reach this stage)
3
List soft trends that may impact technologies related to software engineering?
-Connectivity and collaboration has already led to a software teams that do not occupy the same physical space (telecommuting and part-time employment).
-Globalization leads to a diverse workforce (in terms of language,culture,problem resolution,management philosophy,communication priorities,and person-to-person interaction).
-The population is aging,this implies that many experienced software engineers and managers will be leaving the field over the coming decade.
-Globalization leads to a diverse workforce (in terms of language,culture,problem resolution,management philosophy,communication priorities,and person-to-person interaction).
-The population is aging,this implies that many experienced software engineers and managers will be leaving the field over the coming decade.
4
What factors can lead to successful collaborative software efforts?
Unlock Deck
Unlock for access to all 4 flashcards in this deck.
Unlock Deck
k this deck