Intro to Programming Database Internet of Things IT Project Management Networking Web Development Security For Research Students


Project management as a discipline arose principally from the physical engineering disciplines. Many of the early concepts arose from large projects like the Neptune submarine and the Polaris missile. Over the years, it has become recognized that IT projects have many distinctions from traditional engineering projects. This series of lectures explores some of those distinctions. The current contents are:

Any questions or comments should be directed to: The creator's email

What Is Software Engineering

The video here introduces students to the idea of software engineering- the development of IT systems based on science and discipline rather than craft.

The slides for this lecture are here.

The Waterfall Model

The Waterfall aka Software Development Life Cycle Model is the oldest model of how IT projects should be run. Many people in industry decry it as outmoded. The irony is that in secret, most of industry still uses it. Everyone says they're doing agile or DevOps or (insert flavor of the month). However, none of the claimed new models of software development actually scale. The strategic vision by which software is developed still very much follows the Waterfall model.

After making this lecture, I will have students watch:

this so they can get a sense of how test scripts are created.

What Is Data Migration

There's a lot of stuff about IT practice that is largely ignored in the traditional IT project management course. One thing that happens in most IT implementation projects that we don't talk about is data migration, i.e., getting the data into the new IT system so it can actually run. We don't talk about this because it really isn't very technical, there isn't a strong skill requirement, and it is really boring. But it is important and there are management issues specific to data migration. Here, I give an overview of the data migration problem.

How Real Testing is Done

Another IT practice that we routinely ignore is testing. This is often because in IT courses we deal mainly with toy problems and it is difficult to have a situation where we can expose students to software in the large. Nevertheless, students need to know about how testing really works.

After making this lecture, I will often have students watch this so they can get a sense of how test scripts are created.

What Is Change Management

Change management in universities is largely theoretical. We tend to talk about organizational change rather than the nitty gritty of what an employee tasked to do change management actually does. This video briefly explains what work is involved as a change manager.

The Development, Test, Stage and Production Environments

Here, we talk about how development and live work by the users are separated. We discuss the development environment where users write code, the test environment where testers do testing, the stage environment where users evaluate the product, and finally the production environment where work is actually done.

After making this lecture, I will often have students watch this so they can get a sense of how software versioning systems work.