COSC-1436 Programming Fundamentals I


Manuel Duran

Credit Fall 2025


Section(s)

COSC-1436-001 (20351)
LEC TuTh 9:00am - 10:45am HLC HLC4 1130.01

COSC-1436-002 (20352)
LEC TuTh 12:00pm - 1:50pm HLC HLC4 1130.01

COSC-1436-003 (28415)
LEC MW 11:00am - 12:45pm HLC HLC4 1130.01

Course Description and Rationale

Course Information

  • Credit Hours: 4
  • Classroom Contact Hours per week: 2hrs 40mins
  • Laboratory Contact Hours per week: 50 minutes

Course Description

Introduces the fundamental concepts of structured programming and provides a comprehensive introduction to programming for computer science and technology majors. Topics include software development methodology, data types, control structures, functions, arrays, and the mechanics of running, testing, and debugging. This course assumes computer literacy.

Skills:  G Course Type: T.

Course Rationale

This is an entry-level programming course designed to teach students the basic concepts of computer programming. The course will include designing, coding, debugging, testing, and documenting programs using a high-level programming language. The course is intended to prepare students for a programming-oriented academic path. This course is included in the Field of Study Curriculum for Computer Science.


Course Disclaimers and Copyright Notice

The materials in the Blackboard course site are only for the use of students enrolled in this course for purposes associated with this course and may not be retained or further disseminated.

The content in the Blackboard course site is derivative work from this class textbook publisher publisher-provided instructional resources, and the instructor's notes. This content is distributed under the fair use provisions of the U.S. Copyright Law or the TEACH Act, and further copying and redistributing of this material is a violation of the copyright law.


Student Learning Outcomes/Learning Objectives

1. Demonstrate an understanding of the fundamentals of Swift, building modern mobile apps, iOS, Xcode, and other tools in the Xcode development environment.

2. Demonstrate an understanding of how to handle and store data using clearly defined types.

3. Demonstrate problem-solving skills by developing and implementing algorithms to solve problems using operators.

4. Write code that makes decisions about what lines of code should be executed.

5. Create a basic iOS app to get familiar with using Xcode.

6. Test and debug apps on a Mac, using the Simulator from Xcode.

7. Create visual interfaces using the Interface Builder from Xcode.

8. Demonstrate an understanding of strings, functions, structures, collections, loops, and different ways to work with the information that makes up an app.

9. Design and implement simple classes.

10. Demonstrate an understanding of structure design by implementing programs with functions, including parameter passing and value returning.

11. Create multiple scenes, views, and controls to build simple workflows.

12. Demonstrate understanding using Interface Builder and storyboards to build the user interface for apps with multiple views.

13. Create programs that contain clear and concise program documentation.

Texas Core Objectives (TOC)

The following objectives will allow the students to gain the foundation of the necessary knowledge and skills to be successful in college, in a career, in their communities, and life. The students will gain a foundation of personal and social responsibility for living in a diverse world and advance intellectual and practical skills that are essential for all learning.

  • Critical Thinking Skills (CT) - creative thinking, innovation, inquiry, analysis, evaluation, and synthesis of information.
  • Teamwork (TW) - ability to consider different points of view and to work effectively with others to support a shared purpose or goal.
  • Personal Responsibility (PR) - ability to connect choices, actions, and consequences to ethical decision-making.

SCANS (Secretary’s Commission on Achieving Necessary Skills):

The following list summarizes the SCANS competencies addressed in this particular course:

RESOURCES

1.1 Manages Time

INTERPERSONAL

2.1 Participates as a member of a team

2.6 Works with Cultural Diversity

INFORMATION

3.1 Acquires and Evaluates Information

3.2 Organizes and Maintains Information

3.3 Uses Computers to Process Information

SYSTEMS

4.1 Understands Systems

4.2 Monitor and Correct Performance

4.3 Improve and Design Systems

TECHNOLOGY

5.1 Selects Technology

5.2 Applies Technology to Task

5.3 Maintains and Troubleshoots Technology

BASIC SKILLS

6.1 Reading

6.2 Writing

6.3 Arithmetic

6.4 Mathematics

6.5 Listening

THINKING SKILLS

7.2 Decision Making

7.3 Problem Solving

7.4 Mental Visualization

7.5 Knowing How to Learn

7.6 Reasoning

PERSONAL SKILLS

8.1 Responsibility

8.2 Self-Esteem

8.3 Sociability

8.4 Self-Management

8.5 Integrity/Honesty

 


Readings

Textbook

Develop in Swift: Fundamentals Textbook face

Develop in Swift:

Fundamentals

Xcode 15 Edition

Publisher: Apple

Free from iBooks

Software

This course will focus on IOS development tools with Swift using XCode.

To complete this course, you will need:

  • A Mac running macOS Sonoma
  • Xcode 15. Download it from the Mac App Store if you need it.
  • Project files for the course.

Course Requirements

Orientation Exam (2%)

  1. Orientation Exam is available on the first day of the course.
  2. You may take the orientation exam as many times as necessary until you get 100.
  3. After you get 100, you will be able to start working in your class.

Labs/Assignments (30%)

1.      All the labs/assignments must be submitted in Blackboard by the due date at 11:59 PM according to the schedule of the class.

2.      If the labs/assignment has more than one (1) file, put all of them in one (1) folder with the assignment name and compress the folder (in Windows File Manager | R-click | Send to | Compressed (.zipped) folder), then upload that .zip file to Blackboard.

3.      From your textbook:

          a.       Your labs/assignments from your textbook will be to follow and complete every step from every lesson. Use the files provided in the link at the end of page 5 in your textbook. This will guarantee that you are getting familiar with and understanding the concepts taught in class.

4.      It is recommended that you review the Related Resources at the beginning of every lesson. This will complement and help you to understand better the content for every lesson.

5.      Note: Assignment links are automatically/programmatically removed from Blackboard at 11:59 PM of the due date.  Therefore, assignments cannot be submitted after the due date. Make sure that you submit it with enough time before the deadline.

6.      Again, assignments cannot be submitted after the due date since the submission links are automatically/programmatically removed from Blackboard.

7.      To receive credit, assignments must completely meet requirements exactly as specified.

8.      Partial credit is not awarded for assignments that do not meet requirements.

9.      To receive credit for the labs/assignments, you must be present in class.

Guided Projects (15%)

1.      You will complete three (3) projects during the semester.

2.      All the projects must be submitted in Blackboard by the due date at 11:59 PM according to the schedule of the class.

3.      If the project has more than one (1) file, put all of them in one (1) folder with the assignment name and compress the folder (in Windows File Manager | R-click | Send to | Compressed (.zipped) folder), then upload that .zip file to Blackboard.

4.      From your textbook:

a.       Your guided projects from your textbook will be to follow and complete every step. Use the files provided in the link at the end of page 5 in your textbook.

5.    Each guided project includes a description of user-centered features, a project plan, and step-by-step instructions that lead to a fully functioning app.

6.    Through these guided projects, you will be able to customize features according to your interests, and you will be performing the kind of work you can expect in an app development workplace.

7.    The first project is Light, a simple flashlight app. You will learn the basics of data, operators, and control flow in the Swift programming language. You will also learn about Xcode. Interface Builder, building and running an app, debugging, and documentation.

8.    The second project is Apple Pie, a word-guessing game. You will learn about Swift strings, functions, structures, collections, and loops. You will also learn about UIKit, the system views and controls that make up a user interface, and how to display data using Auto Layout and stack views.

9.    The third project is Personality Quiz, a personalized survey that reveals a fun response to the user. You will learn how to build simple workflows and navigation hierarchies using navigation controllers, tab bar controllers, and segues. You will also learn about options and enumerations, two powerful tools in Swift.

10.  After you build the guided projects, you will have part of the tools to design, prototype, and architect an app of your own.

11.  To receive credit for the guided projects, you must be present in class.

Quizzes

1.    Quizzes are at the end of every lesson, and you should take them to prepare for your Exam at the end of every Unit.

Exams (36%)

  1. All exams are administered in class and will have a 75-minute time frame.
  2. Exams are electronically administered via Blackboard. Paper versions are not supplied.
  3. Links to the Exams appear in the Assessments section on Blackboard. The Orientation Exam is available on the first day of the course.
  4. Exam procedures must be followed step-by-step to access the exams.
  5. The student CANNOT use notes, papers, or other help during the exams.
  6. Exams will present one question at a time and Prohibit Backtracking. It will prevent changing the answer to a question that has already been submitted.

Attendance and Participation (2%)

1.      Regular and punctual class and laboratory attendance are expected of all students.

2.      If you are present in the class, you will have 100% for that day.

3.      If you are late to class, you will have a 90% for that day.

4.      If you are more than 30 minutes late, you will be counted absent for that day.

Problem Solving with AI microcredential (15%)

  1. This microcredential should be completed during the semester, and you will be allowed time for it.

 

Grade Policy

The final course grade will be assigned based on both concepts and practical application. Exams, assignments, quizzes, and final projects will be a part of the grade. To get a passing grade, you must submit at least 80% of the labs/assignments (21 labs/assignments).  An overall grade will be assigned on the following grading scale:

90% - 100%

A

80% - 89%

B

70% - 79%

C

60% - 69%

D

0% - 59%

F

 

In Classroom

1 – Orientation Exam

100 points

2%

3 – Concepts Exams

100 points

36%

20 – Labs/Assignments

100 points

30%

3 – Guided Projects

100 points

15%

Problem Solving with AI microcredential 100 points 15%

Attendance

100 points

2%

Total

 

100%

 


Course Subjects

COURSE SUBJECTS

Development in Swift: Fundamentals textbook (Competency / Unit)

Competency 1 – Getting Started with App Development

1.1 Introduction to Swift and Playgrounds

1.2 Constants, Variables, and Data Types

1.3 Operators

1.4 Control Flow

1.5 Xcode

1.6 Building, Running, Debugging an App

1.7 Documentation

1.8 Interface Builder Basics

Guided Project – Light

Competency 2 – Introduction to UIKit

2.1 Strings

2.2 Functions

2.3 Structures

2.4 Classes and Inheritance

2.5 Collections

2.6 Loops

2.7 Introduction to UIKit

2.8 Display Data

2.9 Controls in Action

2.10 Auto Layout and Stack Views

Guided Project – Apple Pie

Competency 3 – Navigation and Workflow

3.1 Optionals

3.3 Guard

3.4 Scope

3.5 Enumerations

3.6 Segues and Navigation Controllers

3.7 Tab Bar Controllers

3.8 View Controllers Life Cycle

3.8 View Controllers Life Cycle

3.9 Building a Simple Workflow

Guided Project – Personality Quiz

 

Problem Solving with AI microcredential (ProSol / AI)

Competency 1 – Introduction to AI.

Competency 2 – Understanding Machine Learning and AI models.

Competency 3 – AI in Real World Problem Solving.

Competency 4 – Ethics and the Future of AI.

Capstone Project


Course Schedule - 16 weeks

COURSE SCHEDULE – COSC 1436 16 Weeks in Classroom Section

The week starts on Mondays at 12:00 AM until Sundays at 11:59 PM

Week

Material

Textbook/ProSol AI

Lab (#)

1

Course Orientation

Competency 1.1 – 1.2

Orientation Exam

Lab 1.2 – Constants & Variables

2

Competency 1.3 – 1.4

ProSol / AI Comp 1

Lab 1.3 – Operators

Lab 1.4 – Control Flow

3

Competency 1.5 – 1.8

Lab 1.6 – Debug your First App

Lab 1.8 – Use Interface Builder

4

Competency 1

Guided Project - Light

Exam 1

5

Competency 2.1 – 2.2

ProSol / AI Comp 2.1-2.2

Lab 2.1 – Strings

Lab 2.2 – Functions

6

Competency 2.3

Lab 2.3 – Structures

7

Competency 2.4

ProSol / AI Comp 2.3

Lab 2.4 – Classes

8

Competency 2.5 – 2.6

Lab 2.5 – Collections

Lab 2.6 – Loops

9

Competency 2.7 – 2.9

ProSol / AI Comp 3

Lab 2.8 – Hobbies App

Lab 2.9 – Basic Interactions

10

Competency 2.10

Lab 2.10 – Calculator

11

Competency 2

Guided Project – Apple Pie

Exam 2

12

Competency 3.1 & 3.3

 

Lab 3.1 – Optionals

Lab 3.3 – Guard

13

Competency 3.4 – 3.5

ProSol / AI Comp 4

Lab 3.4 – Scope

Lab 3.5 – Enumerations

14

Competency 3.6

Lab 3.6 – Login

15

Competency 3.7 – 3.8

ProSol / AI Capstone Project

Lab 3.7 – About Me

16

Competency 3

Guided Project – Personality Quiz

Exam 3

(*) This syllabus is intended to give the student guidance on what may be covered during the
semester and will be followed as closely as possible. However, the professor reserves the
right to modify, supplement, and make changes as the course needs arise.



Generative AI (GAI) Policy

Computer Science and Information Technology (CSIT) Generative AI (GAI) Policy

 

AI Use and Academic Integrity

In this course, the use of artificial intelligence (AI) tools (such as ChatGPT, Grammarly, DALL-E, and other generative AI platforms) is permitted and encouraged as a learning aid when used responsibly and transparently. AI can be a powerful support for your learning, but you remain accountable for the originality, accuracy, and integrity of your work.

Permissible Use of AI Tools:

  • Learning Aid: You may use AI tools to help you understand concepts, generate study notes, brainstorm ideas, and practice skills.
  • Content Creation: You may use AI to assist with drafting, proofreading, coding, or creating visual elements, provided you disclose this use.
  • Critical Thinking and Analysis: While AI can help generate ideas or content, you are responsible for verifying accuracy, refining outputs, and ensuring your work aligns with course requirements.

Prohibited Use of AI Tools:

  • Unauthorized Assistance: Using AI to complete assignments, quizzes, exams, or assessments without following the disclosure guidelines is a violation of academic integrity.
  • Plagiarism: Submitting AI-generated content as your own without attribution or disclosure is considered plagiarism. This applies to text, images, code, or any other material.
  • Misrepresentation: Providing false or misleading information about how AI was used in your work is prohibited.

Disclosure Requirement:

Whenever you use AI tools in an assignment, include a brief statement that specifies:

  • Which AI tool(s) did you use?
  • What part of the assignment was created, edited, or enhanced with AI?

Academic Integrity Violations:

All work must reflect your own understanding and effort. AI should support—not replace—your learning. Misuse of AI will be treated as an academic integrity violation under the Institution’s policies, which may include penalties ranging from grade reduction to course failure or further disciplinary action.

If you have questions about how to appropriately use AI tools for a specific assignment, please reach out to your instructor.

 


Office Hours

M T W Th 8:00 AM - 9:00 AM Online Via Zoom

NOTE Online Via Zoom, I will be holding office hours electronically. This means that you can contact me via email to set an appointment. I will also respond to any email within 24 hours (excluding weekends). If you wish to meet with me in person, please notify me in advance, and I will set an appointment.

Published: 08/24/2025 09:15:41