category 'lecture'

Testing Strategies and Types

Testing Strategies and Types

So you want to test your system effectively, where do you start? How many tests is enough? What kinds of testing should you do?

Prof. McBurney Prof. McBurney
Verification and Validation

Verification and Validation

What is the different between verification and validation, and how do they relate to insuring our software works correctly? And who does it work correctly for.

Prof. McBurney Prof. McBurney
Justice, Equity, Diversity, and Inclusion in SE

Justice, Equity, Diversity, and Inclusion in SE

Cultural competence is incredibly important for software engineers.

Prof. Sherriff Prof. Sherriff
SE Code of Ethics

SE Code of Ethics

We have a responsibility as software engineers to put good out into the world. The software that we build helps solve problems and improve the lives of our users in...

Prof. Sherriff Prof. Sherriff
Risk Management

Risk Management

Software development inherently carries with it a number of risk. Can you figure out the technology in time? Will the customer change the requirements? Will a competitor release a new...

Prof. Sherriff Prof. Sherriff
Requirements Specification

Requirements Specification

After you have worked with the customer to gather their requirements, what are some ways you can communicate those requirements to the development team?

Prof. Sherriff Prof. Sherriff
Requirements Elicitation

Requirements Elicitation

The requirements engineering process is effectively spit into two stages:

Prof. Sherriff Prof. Sherriff
Requirements Engineering

Requirements Engineering

We are now moving into the second unit of the course, focused around the first (and, arguably, one of the most important) phases of development - requirements.

Prof. Sherriff Prof. Sherriff
Plan-Driven Methodologies

Plan-Driven Methodologies

A hallmark of whether to use a more plan-driven methodology versus an agile methodology is the potential for requirements change. If you have a project in which the requirements are...

Prof. Sherriff Prof. Sherriff
Agile Methodologies

Agile Methodologies

The Agile Manifesto states that in agile development you value:

Prof. Sherriff Prof. Sherriff
Software Process

Software Process

One of the main differences in “writing code” and “engineering software” is following a specified process. By process, we mean a series of steps or phases that a team goes...

Prof. Sherriff Prof. Sherriff
Software Construction

Software Construction

The field of software engineering encompasses a whole lot - requirements, design, implemenation, testing, maintenance, etc. Today, we focus in specifically on the implementation part just for a moment.

Prof. Sherriff Prof. Sherriff
What is Software Engineering?

What is Software Engineering?

Coming into a class like 3240, it’s really easy to get caught in the mindset of “this is the class that I make a big project thing with other people...

Prof. Sherriff Prof. Sherriff