Course Syllabus
Welcome to CS302: Software Engineering. General information on the course and its requirements can be found below.
Course Description: Detailed introduction to the application of engineering approach to computer software design and development. Topics include: life cycle models, software requirements, specification, conceptual model design, detailed design, validation and verification, design quality assurance, software design/development environments and project management.
Getting Started
After familiarizing yourself with the following course syllabus, enroll in this course using the "Enroll me in this course" button located on the left hand toolbar. Once enrolled, navigate to Unit 1 of the course to read the Unit Introduction and Unit 1 Learning Outcomes. Links and instructions for all unit specific course resources will follow the introductory materials.
Earning College Credit
This course provides students the opportunity to earn actual college credit. It has been reviewed and recommended for 3 credit hours by The American Council on Education's College Credit Recommendation Service (ACE CREDIT®). While credit is not guaranteed at all schools, we have partnered with a number of schools who have expressed their willingness to accept transfer of credits earned through Saylor. You can read more about our Saylor Direct Credit program here.
Evaluation and Minimum Passing Scores
In order to pass this course, you will need to earn a 70% or higher on the final exam. Your score on the exam will be tabulated as soon as you complete it.
If you do not pass the exam on your first attempt, you may take it again as many times as needed, following a 7-day waiting period between each attempt.
If you are seeking to earn college credit, you must take and pass the Saylor Direct Credit Final Exam. That exam will be password protected, will have a 14-day waiting period between each attempt, and can only be attempted a maximum number of 3 times.
You will only receive an official grade on your final exam. However, in order to adequately prepare for this exam, we recommend that you work through the materials in each unit. Throughout the course you may find practice quizzes or other assignments that will help you master material and gauge your learning. Scores on these assignments are informational only and do not contribute to your overall course grade.
Technical Requirements
This course is delivered fully online. You will be required to have access to a computer or web-capable mobile device and have consistent access to the internet to either view or download the necessary course resources and to attempt any auto-graded course assessments and the final exam.
To access the full course including assessments and the final exam, you will need to be logged into your Saylor Academy account and enrolled in the course. If you do not already have an account, you may create one, free of charge, here. Although you can access some course resources without being logged into your account, it is advised that you login to maximize your course experience. For example, some of the accessibility and progress tracking features are only available when you are logged in.
If you plan to attempt the optional credit recommended final exam that accompanies this course, then you will also need access to a webcam enabled computer. A webcam is needed so that our remote proctoring service can verify your identity, which will allow Saylor Academy to issue a verified certificate or an official transcript. Full details about remote proctoring for credit recommended exams can be found here.
For additional technical guidance, check out Saylor's tech-FAQ and the Moodle LMS tutorial.
Fees
There is no cost to access and enroll in this course. All required course resources linked throughout the course, including textbooks, videos, webpages, activities, etc are accessible for no charge. This course also contains a free final exam and course completion certificate.
This courses also contains an optional proctored final exam that will provide students an opportunity to earn college credit. Access to the exam itself is free, though it does require the use of a proctoring service for identity verification purposes. The cost for proctoring is $25 per session.
Time Commitment
While learning styles can vary considerably and any particular student will take more or less time to learn or read, we estimate that the "average" student will take 135 hours to complete this course. Each overall unit, resource, and activity within the course is similarly tagged with an estimated time advisory. We recommend that you work through the course at a pace that is comfortable for you and allows you to make regular (daily, or at least weekly) progress. It's a good idea to also schedule your study time in advance and try as best as you can to stick to that schedule.
It may be useful to take a look at these time advisories, to determine how much time you have over the next few weeks to complete each unit, and then to set goals for yourself. Perhaps you can sit down with your calendar and decide to complete subunit 1.1.1 (a total of 1.5 hours) on Monday night; subunit 1.1.1.1 (3 hours) on Tuesday night; subunit 1.1.1.2 (2.5 hours) on Wednesday night; and so on.
Tips/Suggestions
Learning new material can be challenging, so below we've compiled a few suggested study strategies to help you succeed.
Take notes on the various terms, practices, and theories as you read. This can help you differentiate and contextualize concepts and later provide you with a refresher as you study.
As you progress through the materials, take time to test yourself on what you have retained and how well you understand the concepts. The process of reflection is important for creating a memory of the materials you learn; it will increase the probability that you ultimately retain the information.
Although you may work through this course completely independently, you may find it helpful to connect with other Saylor students through the discussion forums or study groups. You may access the discussion forums at https://discourse.saylor.org.
This course is based on Sue Conger's text The New Software Engineering. Except for Units 3 and 10, you will benefit from going through the course in sequence, as the concepts build on each other throughout the text. If you are already familiar with object-oriented analysis and design (OOAD), you may skip Unit 3 or use it as a review. Unit 10 represents a summative review of OOAD, using a case study approach. This course gives special emphasis to OO, as the OO perspective is compliant with ACM/IEEE's software engineering curriculum.
Learning Outcomes
Upon successful completion of this course, you will be able to:
- Demonstrate mastery of software engineering knowledge, skills, and professional issues necessary to practice software engineering;
- Use software engineering principles;
- Compare and contrast software development models;
- Create major activities and key deliverables in a software development life cycle during software requirements and analysis, software design, and software testing;
- Apply the object-oriented methodology in software engineering to create UML artifacts for software analysis and requirements, software design, and software testing;
- Apply project management concepts in a software engineering environment to manage projects, people, and products; and
- Participate as an individual to deliver quality software systems.
Suggested Prerequisites
In order to take this course, you should: