Ram,
Thanks for a great class!
Systems today are becoming more complex and almost all contain at least some software. As systems engineers, we need to understand how to manage this software development process. Software systems engineering (SYS 579) gives a good introduction to these concepts. The class covers software development process models, software inspections and walkthroughs, requirements definition, SysML, and Orthogonal Defect Classification. Combined, these tools are a great addition to any systems engineer’s toolbox.
WPI SYS579 Student Opinions
I would challenge anyone to find a complex system being developed these days that does not include a software component. Even civil engineering projects often include sensors, cameras, maintenance tracking, etc. The value of a Software Systems Engineering class is that it exposes the student to the different aspects of requirements, modeling, development processes, and validation of software systems. What I personally took away from the class was the generation of use cases, and how they translated to specific examples of the different types of UML constructs.
As a systems engineer you must be aware that the software development process is its own monster. While software engineers will write the code itself, the act of writing the code itself should only be about 30% of the software engineering effort. The other 70% will be spent handling requirements, preliminary design, modeling, prototyping, critical design, design reviews, data analysis, integration and testing. These are all areas that the systems engineer should have some part in.
Systems Engineering for Software Engineers brought theory into application since software implementation and development are directly relevant to my work. The case studies and stories from the field were engaging and applicable. Starting the course by reading some of the foundational papers on software development methodology helped contextualize later readings and discussions. I appreciated Ram taking the time to lay that foundation.
Good Morning Professor Chillarege. The SYS579 Software Systems Engineering course was a pleasantly unexpected view on software systems engineering. I signed up for the course thinking that the majority of the class was going to talk about software design cycles and methods. While we did touch on those during the first couple weeks of the course, the course took a dive deeper into UML and design analysis. These were concepts that I had not been exposed to before and will bring value to me in my systems engineering career.
If you are looking for a course that gives you a leg up in the software systems world, look no further than Dr. Ram Chillarege’s Software Systems Engineering course. Knowing methods used in software engineering is key to becoming the best, well-rounded systems engineer that you can be. We began our studies by taking a look at several different types of software development models including agile, spiral, and waterfall methodologies.