I have been a software and web developer for decades and have always wanted to know how to design software and websites using engineering models. How do you design software with the same sort of precision used to build skyscrapers, bridges, aircraft, and submarines?
This desire to learn more about engineering and engineering models was one of the main drives I had to achieve CISSP and CEH certification, which are some of the top computer security certifications available. For security, the best type of model to use is a mathematical model of application logic and functionality. This type of model is called a formal model, and despite the strict-sounding name, formal models can be very lightweight and easy to use.
This class is the first class in a series that is meant to teach software and web developers of all skill levels and abilities everything I wish I knew about modeling software 20 years ago when I was making my first websites. This class is a very broad introduction, covering engineering and engineering models, as well as all the types of engineering models software and web developers can use for back-end and front-end development, databases, and project management. Engineering as a discipline is compared to architecture, design, art, and craftsmanship. Topics include structural models, behavioral models, managerial models, graphical models, simulations, prototypes, mock-ups, scale models, formal mathematical models, and more.
Although this is a class for introductory students as well as advanced practitioners, this class is very complex. This is NOT a class where I will read the slides to you -- I don't like that style of class myself. I have tried to layer as much information as possible into the videos to make a class that students can watch and re-watch and find new bits of information each time.
This class contains lots of new information you will not find other places. Believe me, I tried for many years to find this information before realizing it just wasn't out there and that I needed to create it myself.
This class may prompt lots of questions for you and I will be there to answer them. I think that is what learning is about -- asking questions and questioning the answers. This class may contradict a lot of what you've been taught in the past about software and website development however as someone who holds most of the top computer security certifications out there, I don't think the approach we've taken in the past as an industry has worked if you look at the long history of software security vulnerabilities and the data breaches they have allowed. The engineering models presented in this class can help you design better software in less time and with fewer flaws and security vulnerabilities.
These techniques are how you build security into software from the very beginning, rather than trying to tack on "security" at the end.
Engineering is compared to art, design, craftsmanship, and architecture.
What is an engineering model? The concept of engineering models are presented and the categories and types of engineering models are described.
A look at how and why engineers and architects use models.
An introduction to engineering models of structure and form. This category includes a look at two dimensional and three dimensional models as well as models of code and data structure.
An introduction to engineering models of behavior. This category includes logic, behavior, functionality, interaction, sequencing, simulations, and predictive models.
An introduction to models of management and process. This category includes modeling the production process, project management, requirements, and testing verification.
Nearly 20 years experience working with large-scale projects and enterprise technologies. Certifications include CISSP, CEH, CISA, CHFI, CIW Security Analyst, Security+, Project+, Network+, A+, MySQL Developer, and more. Background includes software systems engineering, cybersecurity, web applications, big data, networking, design, analysis, and management as well as a technical author and researcher.