Home
•
Sched
•
Courses
•
Submit
•
Wiki
•
Policies
•
Javadoc
•
Exams
•
SW
•
Faculty
•
Unix
•
Photos
|
SE1011
•
SnrDsgn
Sched
Outcomes
L1
L2
L3
L4
L5
L6
SE2030 -- Detailed Outcomes
[an error occurred while processing this directive]
At the time of the midterm exam a successful student should be able to:
describe the elements of UML class and sequence diagrams
use a revision control system to maintain versions of source code and related design documents
explain why revision control systems are critical to software development
describe the
lock-modify-unlock
approach for managing conflicts
describe the
copy-modify-merge
approach for managing conflicts
list advantages/disadvantages between the
lock-modify-unlock
and
copy-modify-merge
approaches for managing conflicts
use TortoiseSVN to manage version control for a multi-developer project
demonstrate how conflicts are resolved with TortoiseSVN
explain the role of
branching
a repository
create an installable software package using an automated build tool
use
java.exe
and
javaw.exe
to execute a Java program
create a desktop shortcut for executing a Java program
distinguish between the
java.exe
and
javaw.exe
use
jar.exe
tools to create a
.jar
file
explain the purpose of the manifest file used in a
.jar
file
write a manifest file to be used by a specified
.jar
file
explain the purpose for automated build tools
explain the purpose of the build script used by ANT
interpret the contents of an ANT build script
describe elements of multithreading
define the term
process
define the term
thread
explain how a class must be modified to allow it to run on a separate thread
A successful student should be able to:
understand basic concepts of software engineering practice
describe the various phases of the software lifecycle
describe the various roles software engineers may have
explain the purpose of requirements gathering and specification
distinguish between high-level and low-level designs
interpret requirements documented as use cases
demonstrate use case textual analysis for a given use case
effectively transform use cases into a high level design
distinguish between function and non-functional requirements
describe and demonstrate the use of a
scenario
describe and demonstrate the use of an
actor
describe and demonstrate the use of a
goal
describe and demonstrate the use of an
alternate flow
explain how pre-conditions and post-conditions are used in use cases
interpret UML interaction diagrams
define a
boundary object
and draw its symbol
define an
entity object
and draw its symbol
define a
control object
and draw its symbol
distinguish between
boundary
,
entity
and
control
objects
identify which objects may interact with an actor
identify which objects may interact with each other
transform requirements and use case diagrams into high-level object-oriented design models
define cohesion
define coupling
explain why cohesion and coupling are important design considerations
transform high-level object-oriented designs to detailed design models, including class, sequence, interaction and state diagrams
describe the elements of UML class and sequence diagrams
create UML class diagrams in Enterprise Architect
interpret and denote relationships between classes using standard UML notation
demonstrate proper use of
association
,
aggregation
and
composition
in UML class diagrams
distinguish between
association
,
aggregation
and
composition
in UML class diagrams
explain the differences between
association
,
aggregation
and
composition
demonstrate the use of
generalization
and
realization
distinguish between
generalization
and
realization
in UML class diagrams
explain the differences between
generalization
and
realization
create UML sequence diagrams in Enterprise Architect
demonstrate
iteration
in a sequence diagram
demonstrate
selection
in a sequence diagram
create UML interaction diagrams in Enterprise Architect
transform detailed designs to source code, both manually and by using automated tools
synchronize detailed object-oriented design models with changed source code
generate Java code from an Enterprise Architect model
generate an Enterprise Architect model from an existing Java project
update Java code from a modified Enterprise Architect model
update an Enterprise Architect model from a modified Java project
use a revision control system to maintain versions of source code and related design documents
explain why revision control systems are critical to software development
describe the
lock-modify-unlock
approach for managing conflicts
describe the
copy-modify-merge
approach for managing conflicts
list advantages/disadvantages between the
lock-modify-unlock
and
copy-modify-merge
approaches for managing conflicts
use TortoiseSVN to manage version control for a multi-developer project
demonstrate how conflicts are resolved with TortoiseSVN
explain the role of
branching
a repository
create an installable software package using an automated build tool
use
java.exe
and
javaw.exe
to execute a Java program
create a desktop shortcut for executing a Java program
distinguish between the
java.exe
and
javaw.exe
use
jar.exe
tools to create a
.jar
file
explain the purpose of the manifest file used in a
.jar
file
write a manifest file to be used by a specified
.jar
file
explain the purpose for automated build tools
explain the purpose of the build script used by ANT
interpret the contents of an ANT build script
describe elements of multithreading
define the term
process
define the term
thread
explain how a class must be modified to allow it to run on a separate thread
explain how the time out mechanism in the ATM Application works
© 2001-2015 Dr. Christopher C. Taylor •
Office: L-343 •
Phone: 277-7339 •
npǝ˙ǝosɯ@ɹolʎɐʇ