- PLO 3.2: Design partial or complete software systems, choosing appropriate tradeoffs, and with an awareness of theoretical, practical, and social implications.
- PLO 4.1: Communicate effectively with all stakeholders, team members, the profession, and the public.
- PLO 6.1: Function effectively individually and in teams, applying appropriate ethical standards, while addressing their own educational needs to maintain professional competence.
- design architectures based on natural language requirements (PLO 3.2)
- recognize and describe the various architecture styles and design patterns
- work effectively in a group setting (PLO 6.1)
- communicate effectively verbally and in writing (PLO 4.1)
Reading assignments have deadlines by which you must answer a series of simple questions about the reading and propose topics for further discussion. Some material is covered only in the readings; basic information is not covered in the lectures. Some lectures (typically scheduled 1-2 days after the deadline) will be based on your answers and suggested topics, and may answer a subset of the detailed questions you ask on the questionnaires.
In-class exercises involve working on a problem individually for a part of the class period, followed by group discussion, creation, and presentation of a joint solution, facilitated by the instructor. Some individual assignments and test questions will be similar to those of the group exercises.
Traditional lectures will present topics not covered in suitable readings. This means that if you do not attend these lectures, you won't be able to make it up, since there are no readings, the class slides don't spell out in detail everything I say in class, and there is no guarantee when, if ever, I will be able to record the lectures.
If you continue on to a job in the Computing industry you will almost always be working in a group, and experience with group work is an advantage when applying for jobs.
Questions? Contact the instructor.
This page last modified