SYLLABUS CSCI 477b

Design and Construction of Large Software Systems

The Senior Capstone Design Course

 

Instructor:       Prof. David Wilczynski

Office No.:       SAL 340

Office Ph.:       (213)740-4507

 

Prerequisites:  csci477a

 

Course Objectives:

To do a real-world project so that the student gains practical experience in the software engineering process. In csci477a, you have designed a system for real-world clients. In csci477b you will prototype it.

                                                                                                                                                               

  1. [Weeks 1-2] Prototype Design
  2. [Weeks 3-5] Release 1
  3. [Weeks 6-10] Release 2
  4. [Weeks 11-15] Release 3

 

Grading Policy:  

Each of segments 2-4 is worth 1/3 of overall score. In general, the grading criteria per segment are:

Each is worth 1/4 of the grade for the segment.

 

Team vs. Individual Performance

Each team member is expected to carry their own weight. If they do, all team members will get the same grade. However, I will be looking “into” the teams to see if some students are underperforming; if so, they will get lower scores than their teammates. Similarly, excellent work can be rewarded by providing higher grades.

Course Outcomes

Below are the course outcomes we expect you to have at the end of the course.

i.   The ability to understand the software engineering process in terms of requirements, design, and implementation.

ii.   The ability to do requirements engineering by interacting with industry clients, innovating where appropriate.

iii.   The ability to produce a software design based on requirements.

iv.   The ability to produce a software prototype to explore a particular design.

v.   The ability to produce a business argument for a project including a feasibility study.

vi.   The ability to communicate via presentations  such as powerpoint, posters, etc.

vii.   The ability to produce a coherent document describing a solution to a large software engineering project.

viii.   The ability to apply a software engineering process to a large software project

ix.   The ability to work effectively on a team.

x.    An understanding of the ethical issues in working within a group and one's responsibilities to teammates.

ABET Program Outcomes

These are the outcomes you are expected to have when you have finished your degree:

 

a)      An ability to apply knowledge of computing and mathematics appropriate to the discipline;

b)      An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

c)      An ability to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs;

d)     An ability to function effectively on teams to accomplish a common goal;

e)  An understanding of professional, ethical, legal, security, and social issues and responsibilities;

f)       An ability to communicate effectively with a range of audiences;

g)        An ability to analyze the local and global impact of computing on individuals, organizations and society;

h)      Recognition of the need for, and an ability to engage in, continuing professional development;

i)        An ability to use current techniques, skills, and tools necessary for computing practices.

j)        An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices;

k)      An ability to apply design and development principles in the construction of software systems of varying complexity.

 

These outcomes are also posted at on the CSCI website. http://www.cs.usc.edu/current/undergrad/ProgramOutcomes.pdf

 

 

 

The University of Southern California does not screen or control the content on this website and thus does not guarantee the accuracy, integrity, or quality of such content. All content on this website is provided by and is the sole responsibility of the person from which such content originated, and such content does not necessarily reflect the opinions of the University administration or the Board of Trustees