|
|
Descriptions: As the size and complexity of
software systems increase, the design and specification of overall
system structure or Software Architecture become more significant
issues than the choice of algorithms and data structures of
computation. Well defined software architecture
can be used as a blueprint for composition and integration of
reusable
components. Formal models that precisely document these
blueprints
(i.e., software and system architecture) should provide the starting
point
from which nonfunctional features of a system can be evaluated.
Prerequisites: Students should have exposure
to basic software engineering concepts and practice as taught in
Csci463.
Course Objectives:
(3-0) Cr. Prereq: Csci463. The objective of this course is to mange
the complexity associated with today complex software and system
products.
More specifically, software architecture and modelling attempt to
simplify the development of new and inherently complex software
products used in Health Care, Aerospace and manufacturing
industries.
The course, among other things, will cover
the
following areas:
- Modeling and design of software at the architectural
level.
- Architectural styles, patterns, and abstractions.
- Methods and techniques to evalute and select
software architecture.
- Architectural description languages (ADLs).
- Advanced topics may include:
- Model-based software Engineering.
- An Architectural Analysis and Description Language
(AADL)
used in avionic systems together with its companion tool and
environmental support, known as OSATE (Open Source Architectural
Tool Environment) developed by SEI-CMU.
Required Textbook:
- Len Base, Paul Clements, Rick
Kazman. Software Architecture in Practice. Second Edition, Addison
Wesley, 2003 .
References :
- Mary Shaw and David Garlan.
Software Architecture: Perspective on an Emerging Discipline, Prentice
-Hall,
1996;
- Paul
Clements, Rick Kazman, and Mark Klein. Evaluating Software
Architecture Methods and Case Studies. Addison Wesley, 2002
;
- The Archiecture Analysis
& Design Language (AADL): An Introduction, by Peter H. Feiler, et
al. CMU/SEI-2006-TN-011;
Supplemental
Readings:
IEEE/ACM Journals and Conference proceeding articles
related to the above subjects will be provided to the students. To
assist
students, the lecture slides will be available on-line.
Assessment Criteria:
A variety of methods will be utilized to assist and evaluate progress
in the course. The assessment criteria include (at least) the following
elements:
- Assignments (10%)
- Quizzes (5%)
- Exams (50%)
- Research paper and
Presentations (35%)
1. Assignments: There will be an assignment
due each (or every other week) week. An assignment can be homework or a
project. Homework are paper and pencil exercises. A project gives a
student
a chance to study an aspect of architecture in more depth.
2. Quizzes: Each
class ends with a short quiz. Each quiz covers material from the
current and/or previous session(s). The goal of the quizzes is to keep
students abreast of the material covered in class. In recognition of
the fact that some students have occasional but unavoidable work and
family commitments that preclude attendance at every class, each
student may drop three quizzes prior to final grade calculations.
3. Exams: Two open book exams are conducted
to assess student understanding of the fundamental in software
architecture theme and concepts:
- Mid-term (25%) on October 17, 2008
- Final (25%) at 3:15 pm on
December 17, 2008
4. Research Paper and
Presentations: Topics will be assigned randomly. The research paper
is an individual work. Each student is free to
pick a research topic from topics related to software architecture
and/or model-based software
engineering. She (he) will research her (his) topic, write a high
quality
paper on it and give a quality presentation on it.
5. Participation & Class Attendance:
Regular classroom attendance is required, but does not count as
participation. Active participation in class involves preparing ahead
of time, asking intelligent questions that the book does not answer,
answering questions in class,
and participating in classroom discussions. If you know you will miss a
class ahead of time, email the instructor. Make friends with your
classmates
so they will be willing to share notes, which problems were assigned,
etc., for when emergencies arise and you do miss class.
6. Civility in the Classroom:
Students are expected to assist in maintaining a classroom environment,
which is conducive to learning. Please do not bring food
to the
classroom and always turn your cell phone (ringer) off if you have to
have it with you.
7. Disability Conditions:
If you have emergency medical information to share with me, if you
need special arrangements in case the building must be evacuated, or if
you need accommodations in this course because of a disability, please
make an appointment with me. My office location and hours are at the
top
of this syllabus. If you plan to request disability accommodations, you
are expected to register with the Disability Support Services (DSS)
office
(190 McCannel Hall, 777-3425 v/tty).
8. Drops & Withdrawals:
Students should not assume that the instructor will administratively
drop the student for non-attendance. Withdrawal from the course is the
responsibility of the student. Should a student decide to withdraw from
the course, simply not attending class sessions, rather than formally
withdrawing
from the course, may result in an 'F' on the student's transcript.
PLAGIARISM, PROFESSIONAL ETHICS & PERSONAL
INTEGRITY
The UND academic policy clearly states an expectation that
each student submit his/her own work do otherwise, that is, to submit
anther's efforts as one's own, is at its least plagiarism, and at its
most unethical and without integrity. Indeed, it is a matter of
professional ethics and personal integrity to graciously accept
accolades for a job well done, as well as to publicly acknowledge those
to whom partial credit is owed.
Those found to be cheating on exams, assignments, and Project
will receive an "F" for the COURSE, and the
matter
will be discussed with the appropriate Dean and/or Chair. I do not‚ anticipate
any problem here.
Disclaimer:
This syllabus is intended to suggest the outline of the course; it
is not absolute. Changes to the syllabus, should they occur, will be
announced in class.
|