Академический Документы
Профессиональный Документы
Культура Документы
Textbooks:
• Bass, L, Clements, P., and Kazman, R. Software Architecture in Practice, 2nd Ed. SEI
Series in Software Engineering, Pearson Education, Inc., Addison-Wesley, 2003.
(ISBN: 0-321-15495-9)
• Shaw, Mary and Garlan, David. Software Architecture: Perspectives on an Emerging
Discipline, Prentice Hall, 1996. (ISBN: 0-13-182957-2)
References:
• Booch, G., J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User
Guide, Addison-Wesley, (1999).
• Bosch, J. Design and Use of Software Architectures: Adopting and Evolving a
Product-Line Approach, Addison-Wesley, 2000. (ISBN 0-201-67494-7)
• Budgen, David. Software Design, 2nd Ed., Pearson Education Limited,
Addison-Wesley, 2003. (ISBN 0-201-72219-4)
• Clements, P. and Northrop, L. Software Product Lines: Practices and Patterns,
Addison-Wesley, 2002. (ISBN 0-201-70332-7)
• Clements, P., Kazman, R., and Klein, M. Evaluating Software Architecture: Methods
and Case Studies, SEI Series in Software Engineering, Addison-Wesley, 2002.
(ISBN 0-201-70482-X)
• Clements, R., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., and
Stafford, J. Documenting Software Architectures: Views and Beyond, SEI Series in
Software Engineering, Pearson Education, Inc., Addison-Wesley, 2003. (ISBN
0-201-70372-6)
• CMU-SEI, “Software Architecture”, http://www.sei.cmu.edu/architecture/, 2006.
• Endres, A. and Rombach, D. A Handbook of Software and System Engineering:
Empirical Observations, Laws and Theories, Pearson Education Limited,
Addison-Wesley, 2003. (ISBN 0-321-15420-7)
• Garlan, D. and Perry, D. E. Introduction to the special issue on software architecture,
IEEE Trans. On SE, 21(4), 269-274, 1995.
• Hohmann, Luck. Beyond Software Architecture: Creating and Sustaining Winning
Solutions, Pearson Education, Inc., Addison-Wesley, 2003. (ISBN 0-201-77594-8)
• Jacobson, G. Booch, and J. Rumbaugh, The Unified Software Development Process,
Addison-Wesley, (1999).
1
• Larman, Craig. Applying UML and Patterns; An Introduction to Object-Oriented
Analysis and Design and The Unified Process, 2nd Ed., Prentice-Hall, 2002. (ISBN
0-13-092569-1)
• Larman, Craig. Applying UML and Patterns; An Introduction to Object-Oriented
Analysis and Design and Iterative Development, 3rd Ed., Prentice-Hall, 2005. (ISBN
0-13-148906-2)
• McConnell, S. Professional Software Development, Addison Wesley, 2004. (ISBN
0-321-19367-9)
• Perry, D. E. and Wolf, A. L. Foundations for the study of software architecture,
ACM SE Notices, 17(4), 40-52, 1992.
• Quatrani, T. Visual Modeling with Rational Rose 2000 and UML, Addison-Wesley,
2000. (ISBN 0-201-69961-3)
• Rational Rose Evaluation,
http://www14.software.ibm.com/webapp/download/search.jsp?S_TACT=104AH+
W42&S_CMP=&s=&status=Active&sr=1&cat=&k=ALL&dt=&q=Rational+Rose
&pf=&sb=n&sr=1&S_TACT=104AH+W42&S_CMP=&s=, 2006.
• Rational Software, Rational Software, http://www-306.ibm.com/software/rational/,
2006.
• Rational Unified Process Win Evaluation,
http://www14.software.ibm.com/webapp/download/home.jsp?s=p, 2006.
Prerequisites:
CPSC 461 or equivalent work experience
The student grade will be based on a total of 100 points (weight distribution):
Homework Assignments: 20 points (HW#1, HW#2, 10 point each)
Midterm Exam: 30 points (Textbook covered, HW#1)
Final Exam: 30 points (Textbook covered, HW#2)
Participation: 10% (Class Attendance/Discussion Participation)
Performance: 10% (Self-Evaluation by Team Members)
2
Grading Scale:
Grades will be given based on the accumulated scores (100% total):
90% and above A- (3.7), A (4.0), A+ (4.0)
80% - 89% B- (2.7), B (3.0), B+ (3.3)
70% - 79% C- (1.7), C (2.0), C+ (2.3)
60% - 69% D- (0.7), D (1.0), D+ (1.3)
0% - 59% F (0.0)
Makeup Policy:
There will be no makeup (exam) except the case of medical emergency, natural disasters
(such as earthquake, flooding, fire, etc.), or emergent dispatches by your duty. In any
emergent case, to have any makeup, you need to submit a formal evidence document from a
legal agency (hospital, police, executive officer, etc.). A makeup may be held in a different
format, style or level. Your makeup may not make higher scores than the class average.
Drop Deadline: Please see the Schedule of Classes for the deadlines to drop the class.
3
Course outlines:
Weeks Dates Contents
1 Jan 22 Lectures:
Introduction to the class: Schedule, Homework, Exams
Software Tools and Labs (references, supplement)
Suggested Reading:
A Case Study – A-7E Avionics System (Bass 03)
2 29 Lectures:
Module 03 – Quality Attributes (Bass 04)
Suggested Reading:
Shaw 04 Shared Information Systems
Shared Information Systems
Database Integration
Integration in Software Development Environments
Integration in the Design of Buildings
Architectural Structures for Shared Information Systems
Homework:
Due: Picking Groups and Planning (Team member list)
3 Feb 5 Lectures:
Module 04 – Achieving Qualities (Bass 05)
Suggested Reading:
A Case Study – Air Traffic Control (Bass 06)
4 12 Lectures:
Module 05 – Designing the Architecture (Bass 07)
Suggested Reading:
Shaw 05 The Quantified Design Space
Architectural Design Guidance
Guidance for User-Interface Architectures
4
5 Feb 19 Presidents’ Day
Suggested Reading:
A Case Study – Flight Simulation (Bass 08)
6 26 Lectures:
Module 06 – Documenting SW Architecture (Bass 09)
Suggested Reading:
Shaw 06 Formal Models and Specifications
The Value of Architectural Formalism
Formalizing the Architecture of a Specification System
Formalizing an Architectural Style
Formalizing an Architectural Design Space
Toward a Theory of Software Architecture
What Next?
Z Notation
7 Mar 5 Lectures:
Module 07 – Reconstructing SW Architecture (Bass 10)
Suggested Reading:
Shaw 07 Linguistic Issues
Requirements for Architecture-Description Languages
First-Class Connectors
Adding Implicit Invocation to Traditional Programming L/G
Suggested Reading:
Shaw 08 Tools for Design
UniCon: A Universal Connector Language
Exploiting Style in Architectural Design Environments
Beyond Definition/Use: Architectural Interconnection
11 Apr 1 (*Daylight savings time starts: at 2am on the 1st Sun. of April)
2 Lectures:
Module 08 – Evaluating SW Architecture (ATAM) (Bass 11)
Homework:
• Due: HW#1
• Presentation
5
12 Apr 9 Lectures:
Module 09 – Quantitative Approaches to Architectural Design (Bass
12)
Suggested Reading:
A Case Study – WWW (Interoperability) (Bass 13)
13 16 Lectures:
Module 10 – SW Product Lines (Bass 14)
Suggested Reading:
A Case Study – CelsiusTech (Bass 15)
14 23 Lectures:
Module 11 – Building Systems from Off-the-Shelf Components (Bass
18)
Suggested Reading:
A Case Study – J2EE/EJB (Industry Standard Computing
Infrastructure) (Bass 16)
15 30 Lectures:
Module 13 – SW Architecture: Principles, Practices, and Research
(Invited Lecture)
Suggested Reading:
A Case Study – The Luther Architecture (Mobile Application using
J2EE) (Bass 17)
16 May 7 Homework:
• Due: HW#2
• Due: Team-Evaluation
• Presentation
∗ Disclaimer: This syllabus is intended to suggest the outline of the course; it is not absolute.
6
(For the Online Course)
Distance Learning:
The MSE course will be offered via distance learning using CSUF on-line system
called “blackboard” available at: http://blackboard.fullerton.edu. The students
are required to create blackboard accounts and enroll in the on-line CPSC 544
course. All course materials including audio lectures, lecture notes, reading
materials, assignments and homework will be posted on-line and available
on-line ONLY.
Online Participation:
Student online participation will be graded based on the number and content of
postings in discussion sessions. Additionally, the frequency of accessing
assigned Web pages will be taken into account.
7
Appropriate Online Behavior (“Netiquette”)
The following Netiquette rules quote has been taken form
http://www.albion.com/netiquette/book/index.html.
Technical Support
In case of technical problems contact Help Desk at (714) 278-7777.
8
Alternative Options for Submitting Homework
In the event of technical problems, immediately contact the instructor to find an
alternative way to submit homework.
ACADEMIC DISHONESTY
The following is taken from the University Rules (UPS 300.021):
"Academic dishonesty includes such things as cheating, inventing false information
or citation, plagiarism, and helping someone to commit an act of academic
dishonesty. It usually involves an attempt by a student to show possession of a level
of knowledge or skill, which he/she in fact does not possess.
Cheating is defined as the act of obtaining or attempting to obtain credit for
work by the use of any dishonest, deceptive, fraudulent, or unauthorized means.
Examples of cheating include, but are not limited to, the following: using notes or
aids or help of other students on tests and examinations in ways other than those
expressly permitted by the instructor, plagiarism as defined below, tampering with
grading procedures, and collaborating with other on any assignment where such
collaboration is expressly forbidden by an instructor. Violation of this prohibition of
collaboration shall be deemed on offense for the person or persons collaborating on
the work, in addition to the person submitting the work.
Plagiarism is defined as the act of taking the work of another and offering it
as one's own without giving credit to that source. When sources are used in a paper,
acknowledgment of the original author or source must be made through appropriate
references and, if directly quoted, quotation marks or indentations must be used"