1.1: Software Engineering Overview
Watch this video of the first day in a software engineering course at Harvard University. The instructor spends the first half of the video exploring a haphazard way to develop a system for putting the class syllabi online. He then discusses the systematic process to complete a course similar to this one, especially the SDLC projects (Unit 10). The video mentions a number of software tools for software development. Do not be overwhelmed, as this is not a programming course. You may find the 30-day free versions of software modeling useful if you have time to use them in Unit 3.
1.1.1: What Is Software Engineering?
Read the "Introduction" and "Software Engineering" sections in Chapter 1 (pages 1-4). You will use this text throughout the course, so you may want to save a copy of the PDF to easily access it as you move through each unit. This text positions software engineering as a multi-trillion dollar investment in typical Fortune 1000 companies. It discusses what software engineering is and defines basic software engineering terms. Take your time in reading and jot down any ideas or notes that stand out to you as particularly useful (or, conversely, confusing).
1.1.1.1: History of Software Engineering
As you read this article, pay attention to the trends section. As you proceed through this course, these items will appear as controversies and opportunities to evaluate other alternatives.
Read the article and take notes. Consider Table I in this paper. As you examine the timeline, compare the categories with your own life. In addition to the reading material, you may want to ask a parent or grandparent to tell you about their experiences with the earliest stages in the timeline.
1.1.1.2: Differences between Software Engineering and Computer Science
This reading separates computer science into five other categories, with software engineering being one of them. How is software engineering like computer science? How is is software engineering different?
1.1.2: Software Applications
Read the "Applications" section in Chapter 1 (pages 5-23). This reading assignment covers the topics of software characteristics, software responsiveness, types of applications, and applications in business. Take your time in reading and jot down any ideas or notes that stand out to you as particularly useful (or, conversely, confusing).
In the "Application Characteristics" section (pages 5-13), make sure to carefully review Figure 1-1 on page 6 for an overview of software characteristics.
In the "Application Responsiveness" section (pages 13-17), make sure to carefully review Figure 1-12 on page 14 for an overview of two types of software responsiveness.
In the "Applications in Business" section (pages 22-23), make sure to carefully review Figure 1-17 on page 22 for an overview of application in business.
1.1.3: Software Quality
Read the chapter (pages 5-22). In general, software quality is crucial in software engineering. In this article, Fitzpatrick explores the various definitions of quality and the quality models by McCall, Richards, and Walters in 1977 and Boehm in 1978. The article further prioritizes quality factors as well as mentions how to measure software quality.