Graduate
Institute of Graduate Studies
Computer Engineering
Anlık RSS Bilgilendirmesi İçin Tıklayınız.Düzenli bilgilendirme E-Postaları almak için listemize kaydolabilirsiniz.

Computer Engineering Main Page / Program Curriculum / Software Architecture and Integration (Not offered.)

Software Architecture and Integration (Not offered.)

Course CodeSemester Course Name LE/RC/LA Course Type Language of Instruction ECTS
CSE0559 Software Architecture and Integration (Not offered.) 3/0/0 DE Turkish 9
Course Goals
The course provides attendees with a thorough overview of software architectures. After completing this course in entirety, learners will have a better understanding of

- the relationships between system qualities and software architectures

- software architectural patterns and their relationship to system qualities

- software architecture evaluation

- attribute-driven design

- software architecture documentation

- architectural reuse

Prerequisite(s) An Undergraduate Level Software Engineering Class
Corequisite(s) UML and High Level Programming Skills
Special Requisite(s) The minimum qualifications that are expected from the students who want to attend the course.(Examples: Foreign language level, attendance, known theoretical pre-qualifications, etc.)
Instructor(s) Assoc. Prof. Akhan AKBULUT
Course Assistant(s) TBA
Schedule TBA
Office Hour(s) TBA
Teaching Methods and Techniques -Lectures

 -Readings

-Discussions

-Demonstrations

-Presentations
Principle Sources Software Architect, is being written by Nigel Leeming. For now, it is published on the web at www.ivencia.com/softwarearchitect

- Software Architecture Handbook, by Grady Booch, online (you have to register to get access). There is an extensive classification of patterns, though the systems architecture case study section is still ostensibly in the writing and permissions pipe. Excellent piece on forces in software architecture. Seehttp://www.booch.com/architecture/index.jsp.

- Ruth Malan and Dana Bredemeyer, "The Art of Change: Fractal and Emergent," Cutter Consortium Enterprise Architecture Executive Report, Vol. 13, No. 5, 2010. You can download a complimentary copy athttp://www.cutter.com/offers/artofchange.html.

- Architecting process (innovation and agile architecting): Ruth Malan and Dana Bredemeyer. “Getting Past ‘But’: Finding Opportunity and Making It Happen.” Cutter Consortium Enterprise ArchitectureExecutive Report, Vol. 11, No. 8, 2008http://www.cutter.com/offers/findopportunity.html

Architects (this report is useful for solution, platform and software architects as well as Enterprise Architects: Dana Bredemeyer and Ruth Malan. “What It Takes to Be a Great Enterprise Architect.” Cutter Consortium Enterprise Architecture Executive Report, Vol. 7, No. 8, 2004. You can download a complimentary copy from http://www.cutter.com/offers/greatarchitect.html

-Enterprise Architecture: Malan, Ruth, and Dana Bredemeyer. “Enterprise Architecture as Strategic Differentiator.” Cutter Consortium Enterprise Architecture Executive Report, Vol. 8, No. 6, 2005. Cutter is running a promotion, and you can download this issue free at  http://www.cutter.com/offers/strategic.html.  

 
Other Sources D. Garlan, M. Shaw, "An Introduction to Software Architecture", Advances in Software Engineering and Knowledge Engineering", Volume I, World Scientific, 1993.

D. Perry, A. Wolf, Foundations for the Study of Software Architecture", Proceedings of ACM SIGSOFT, October 1992, 40-52.

D. Parnas, "On the Criteria To Be Used in Decomposing Systems into Modules", Communications of the ACM, 15(12), 1972, 1053-1058.

W. Waite, A. Sloane, Software Synthesis via Domain-Specific Software Architectures, University of Colorado Technical Report CU-CS-611-92, 1992.

R. Kazman, A Challenge for Software Architecture: Distributed Flight Simulation, in Parallel and Distributed Computing Handbook, A. Zomaya (ed.), McGraw-Hill, 1995, to appear.

R. Kazman, L. Bass, G. Abowd, M. Webb, SAAM: A Method for Analyzing the Properties Software Architectures, Proceedings of ICSE 16, May 1994, 81-90.

R. Kazman, G. Abowd, L. Bass, P. Clements, Scenario-Based Analysis of Software Architecture, IEEE Software, to appear, 1996. (Also available as Department of Computer Science Technical Report CS-95-45.)

AT&T, "Best Current Practices: Software Architecture Validation".

T. R. Dean, J. R. Cordy, "A Syntactic Theory of Software Architecture", IEEE Transactions on Software Engineering, April 1995, 302-313.

M. Shaw, R. DeLine, D. Klein, T. Ross, D. Young, G. Zelesnik, "Abstractions for Software Architecture and Tools to Support Them", IEEE Transactions on Software Engineering, April, 1995, 314-335.

R. Kazman, L. Bass, Toward Deriving Software Architectures from Quality Attributes, Software Engineering Institute Technical Report CMU/SEI-94-TR-10.

Chung-Horng Lung, Sonia Bot, Jay Godse presenting: On the Definition of Software System Architecture," by Cristina Gacek, Ahmed Abd-Allah, Bradford Clark and Barry Boehm - ICSE 17 Software Architecture Workshop, April, 1995

Michael Thompson, Bruce Barkhouse, Richard Muise presenting: Object Oriented Software Technologies Applied to Switching System Architectures and Software Development Processes. Arnold et.al. ISS'90

Mahboob Ashraf, Larry Brunet, Georgi Kouzev presenting: Luckham, et al, "Specification and Analysis of System Architecture Using Rapide", IEEE Trans. Software Engineering, vol. 21, no. 4, pp. 336-355, 1995.

Francois Moore and Tony Wacheski presenting Distributed Software Engineering by Jeff Kramer. Proceedings of ICSE 16, May 1994, 253-263.

Chung-Horng Lung: Domain Analysis presentation.

Ed Chow, James Chen, Peter Fu:presenting: Mediators in the Architecture of Future Information Systems," by Gio Wiederhold, IEEE Computer, 25(3), 38-49.

The Semantic Foundations of Software Architecture

M. Jazayeri, Component Programming--a fresh look at software components, Technical University of Vienna Technical Report TUV-1841-95-01.
Course Schedules
Week Contents Learning Methods
1. Week Introduction to Software Architecture
2. Week Relationships to Other Disciplines
3. Week Multi-Disciplinary Overview
4. Week Foundations of Software Architecture
5. Week Case Studies: KWIC, Compiler, Blackboard
6. Week SAAM: A Software Architecture Analysis Methodology
7. Week Scenario-Based Evaluation of Software Architecture
8. Week Domain-Specific Software Architecture
9. Week A DSSA for Flight Simulation
10. Week AT&T Software Architecture Validation
11. Week The Unit Operations of Software Architecture
12. Week UniCon
13. Week Component Programming
14. Week Revisiting the Foundations for a Theory of Software Architecture
15. Week
16. Week
17. Week
Assessments
Evaluation tools Quantity Weight(%)
Midterm(s) 1 20
Homework / Term Projects / Presentations 1 10
Project(s) 1 50
Final Exam 1 20


Program Outcomes
PO-1an ability to apply knowledge from undergraduate and graduate engineering and other disciplines to identify, formulate, and solve novel and complex electrical/computer engineering problems that require advanced knowledge within the field
PO-2knowledge of advanced topics within at least two subdisciplines of computer engineering
PO-3the ability to understand and integrate new knowledge within the field;
PO-4the ability to apply advanced technical knowledge in multiple contexts
PO-5a recognition of the need for, and an ability to engage in, life-long learning
PO-6the ability to plan and conduct an organized and systematic study on a significant topic within the field
PO-7an ability to convey technical material through formal written reports which satisfy accepted standards for writing style
PO-8the ability to analyze and use existing literature
PO-9the ability to demonstrate effective oral communication skills
PO-10the ability to stay abreast of advancements in the area of computer engineering
Learning Outcomes
LO-1help reduce maintenance costs and amortize development costs
LO-2assist in workforce organization and with project oversight and control
LO-3establish a common corporate vocabulary
LO-4shorten learning time
LO-5provide flexibility and adaptability in changing markets
LO-6allow for interoperability with other players in the marketplace
LO-7provide leverage of control in a marketplace
LO-8help developers focus on a niche in the marketplace
LO-9be used as a sales and marketing tool
Course Assessment Matrix:
Program Outcomes - Learning Outcomes Matrix
 PO 1PO 2PO 3PO 4PO 5PO 6PO 7PO 8PO 9PO 10
LO 1
LO 2
LO 3
LO 4
LO 5
LO 6
LO 7
LO 8
LO 9