Professional Documents
Culture Documents
Learning Objectives For A Course On Software Architecture: September 2015
Learning Objectives For A Course On Software Architecture: September 2015
Learning Objectives For A Course On Software Architecture: September 2015
net/publication/281723347
CITATIONS READS
2 452
2 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Arvind Kiwelekar on 22 July 2016.
Outline
Introduction
Course Design
Learning Objectives
Conclusion
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Our Approach
Course Design
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Learning Levels
Applications
• To write and revise learning objectives
• To plan curriculum
• To identify simple to most difficult
skills
• To effectively align objectives to
assessment techniques and standards
• To formulate appropriate questions
1 Remember Choose, Define, Find, How, Label, List, Match, Name, Omit, Recall, Relate, Se-
lect, Show, Spell, Tell, What, When, Where, Which, Who, Why
2 Understand Classify, Compare, Contrast, Demonstrate, Explain, Extend, Illustrate, Infer, Inter-
pret, Outline, Relate, Rephrase, Show, Summarize, Translate
3. Apply Apply, Build, Choose, Construct, Develop, Experiment with, Identify, Interview,
Make use of, Model, Organize, Plan, Select, Solve, Utilize
4 Analyze Analyze, Assume, Categorize, Classify, Compare, Conclusion, Contrast, Discover,
Dissect, Distinguish, Divide, Examine, Function, Inference, Inspect, List, Motive,
Relationships, Simplify, Survey, Take part in, Test for, Theme
5 Evaluate Agree, Appraise, Assess, Award, Choose, Compare, Conclude, Criteria, Criticize,
Decide, Deduct, Defend, Determine, Disprove, Estimate, Evaluate, Explain, Im-
portance, Influence, Interpret, Judge, Justify, Mark, Measure, Opinion, Perceive,
Prioritize, Prove, Rate, Recommend, Rule on, Select, Support, Value
6 Create Adapt, Build, Change, Choose, Combine, Compile, Compose, Construct, Create,
Delete, Design, Develop, Discuss, Elaborate, Estimate, Formulate, Happen, Imag-
ine, Improve, Invent, Make up, Maximize, Minimize, Modify, Original, Originate,
Plan, Predict, Propose, Solution, Solve, Suppose, Test, Theory
Source: http://www.apu.edu/live data/files/333/blooms taxonomy action verbs.pdf
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Requirements Analysis
Course Content
• Requirements Analysis
• Architectural Design and Requirements Allocation
Learning Objectives
Identifier Learning Objectives Cognitive Knowledge
Category Category
LO1 To detect and resolve conflicts between requirements. Analyze Conceptual
LO2 To discover the bounds of the software in terms of organizational and Analyze Conceptual
operational environment.
LO3 To describe software requirements through conceptual models. Create Conceptual
LO4 To classify requirements into functional and non-functional requirements Understand Conceptual
LO5 To classify requirements into product requirements and Understand Conceptual
process requirements
LO6 To classify requirements into volatile and stable requirements Understand Conceptual
LO7 To define the scope of requirements i.e. global versus component specific Understand Conceptual
requirements.
LO8 To prioritize requirements. Understand Conceptual
LO9 To allocate requirements to architectural components. Create Conceptual
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Course Content
Key issues in Software Design: Concurrency, Control and Handling of events, data
persistence, distribution of components, error and exception handling, interaction and
presentation, Security.
Identifier Learning Objectives Cognitive Knowledge
Category Category
LO10 To decompose a software system in terms of processes, tasks, and threads Create Conceptual
which will meet the design requirements of efficient, synchronization, schedul-
ing and atomicity.
LO11 To differentiate between information presentation and processing concerns for Analyze Conceptual
the given application.
LO12 To specify data and control flow through various mechanisms such as implicit Apply Conceptual
invocations and call backs.
LO13 To specify a scheme of allocation of software components across various hard- Create Conceptual
ware platforms handling issues of fault tolerance, heterogeneity and depend-
ability.
LO14 To recognize application domain data elements. Understand Conceptual
LO15 To specify interactions between information processing and presentation con- Analyze Conceptual
cerns.
LO16 To specify the mechanisms to be used for ensuring security of application Apply Conceptual
specific information such as access controls, and authorization.
LO17 To apply a design methodologies specific to architecture design such as Apply Procedural
Attribute-Driven design(ADD), pattern-oriented software architecture, model-
driven architecture, and DRAMA.
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Course Content
Software Structure and Architecture Architectural Structures and Viewpoints,
Architectural Styles, design patterns, architecture design decisions, families of
programs and frameworks
Identifier Learning Objectives Cognitive Knowledge
Category Category
LO18 To differentiate between high-level architectural design vs detailed design. Analyze Conceptual
LO19 To create architectural description in multiple viewpoints. Create Conceptual
LO20 To apply techniques of recovering design information from low-level system Apply Procedural
implementation.
LO21 To acquire the knowledge of various architectural styles. Understand Conceptual
LO22 To apply the knowledge of various architectural tactics and styles in given Apply Procedural
scenario.
LO23 To comprehend an architectural style described in a pattern language. Understand Conceptual
LO24 To apply architectural styles for designing software systems. Apply Conceptual
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Course Content
Software Design Notations Structural and behavioral descriptions.
Learning Objectives
Identifier Learning Objectives Cognitive Knowledge
Category Category
LO25 To differentiate between structural and behavioral aspects of a software Analyze Conceptual
system.
LO26 To create structural and behavioral models in design notations such as ADL Create Conceptual
and UML.
LO27 To interpret structural and behavioral models of a software system. Analyze Conceptual
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Course Content
Quality Analysis and Evaluation Techniques Quality Attributes, Quality Analysis and
Evaluation Techniques, Measures.
Learning Objectives
Identifier Learning Objectives Cognitive Knowledge
Category Category
LO28 To provide the definitions of various quality attributes such as modifiability, Understand Factual
dependability, portability etc.
LO29 To classify quality attributes as run-time, non-run-time and intrinsic quality Analyze Factual
attributes.
LO30 To apply evaluation techniques such as static analysis, simulation and pro- Apply Procedural
totyping and design reviews to ascertain design quality.
LO 31 To remember and recognize architectural elements in a reference architec- Remember Factual
ture such as CORBA.
LO32 To check the compliance of a given software system such as a light-weight Evaluate Conceptual
implementation of an Object Request Broker (ORB) (eg., Mico) against its
reference architecture CORBA.
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Course Content
Software Engineering Management Initiation and Scope definition Determination and
negotiation of requirements, feasibility analysis Software Project Planning Risk and
Quality Management
Learning Objectives
Identifier Learning Objectives Cognitive Knowledge
Category Category
LO33 To build an architectural prototype for requirements negotiation and feasi- Create Conceptual
bility analysis.
LO34 To perform risk management activities (e.g.,Identifications and prioritize of Apply Procedural
risk factors and risk mitigation strategies.) using architectural models.
Introduction Course Design Bloom’s Taxonomy: Background Learning Objectives Conclusion
Open Questions
Conclusion
Future Work