Course Outline CPSC1517 - 2022
Course Outline CPSC1517 - 2022
Course Outline CPSC1517 - 2022
2022/2023
COURSE DESCRIPTION
This course provides an introduction to computer programming using Client-Server concepts and architecture. It focuses on
implementing workable and maintainable software to meet common business needs. Students are expected to have successfully
completed appropriate course(s) covering programming fundamentals in modern programming languages prior to beginning this
course. Concepts and implementations will incorporate modern industry tools, techniques and practices as they apply to software
design, development and quality assurance.
LEARNING OUTCOMES
The following concepts, skills, and issues are used to support this Outcome:
• How and When to use Inheritance and Composition
• Using Classes, Structs, Records, Enums, Interfaces, and Delegates
• Language Specific Constructs (Generics, Extension Methods, Lambda Syntax)
• Runtime Debugging
The following concepts, skills, and issues are used to support this Outcome:
• This outcome will be achieved by building a multitier data-driven HTML5 web applications using
Visual Studio and ASP.NET
• Implement the presentation layer for a multitier web application
• Implement the business logic layer for a multitier web application
• Implement the data access logic layer for a multitier web application
• Implement the custom business objects for a multitier web application
The following concepts, skills, and issues are used to support this Outcome:
• This outcome will be achieved by creating a web application that utilizes server-side processing
and ASP.NET
• Develop server-side form for viewing and editing data
• Plan and implement website navigation
The following concepts, skills, and issues are used to support this Outcome:
• This outcome will be achieved by adding data input validation features to an existing web
application
• Client-side validation
• Server-side validation
The following concepts, skills, and issues are used to support this Outcome:
• This outcome will be achieved by creating a database-driven web application
• RDBMS
• Document Database (JSON)
• Object Relational Mapping (ORM) Packages
The following concepts, skills, and issues are used to support this Outcome:
• This outcome will be achieved by implementing a web application to solve a business problem
• OOP Design Principles
1, 2, 3, 4, 5 and
Exercises 20%
6
1, 2, 3, 4, 5 and
In-Class #4 - CRUD and Client-Server 10%
6
1, 2, 3, 4, 5 and
Project(s) - Deliverable B - Project Setup 5%
6
1, 2, 3, 4, 5 and
Project(s) - Deliverable D - CRUD Maintenance 15%
6
TOTAL 100%
DELIVERY METHOD
This course will be taught using a variety of delivery methods which may include face-to-face, online, or blended teaching
platforms. Collaborative exercises/assignments, seminars, labs, discussion, audio/visual presentations, case studies, and other
such activities may be used to support learning.
TERRITORIAL ACKNOWLEDGEMENT
At NAIT, we honour and acknowledge that the land on which we learn, work and live is Treaty Six territory. We seek to learn from
history and the lessons that have come before us, and to draw on the wisdom of the First Peoples in Canada. Only through
learning can we move forward in truth and reconciliation, and to a better future together.
Changes to This Course Outline: Every effort has been made to ensure that information in this course outline is accurate at the time of publication. The Institute
reserves the right to change courses if it becomes necessary so that course content remains relevant. In such cases, the instructor will give the students clear and
timely notice of the changes.
All Rights Reserved: No part of this course outline may be reproduced in any form or resold without written permission from NAIT. Copyright 2022.