SRE Bootcamp Series — Importance Of Software Engineering
Hallo Geeks, I hope you feeling good and enjoy your entire life.
Now i’d like to convey to you what is software engineering (SE)? and why do we need it? I will get the answer from both academia and industry point of view. All of these knowledge is come from Udacity. I found this link from my bootcamp’s learning syllabus arranged by AccelByte Inc. Happy Reading guys!
SE is the discipline that investigates program development how can it be done more efficiently — Teufik Bultan
Teufik Bultan from University of California
Start with base question, what is a computer? It’s a programmable device. So, the essence of computing is programming.
Program development is the most essential use of the computer. So, SE is the discipline that investigates program development how can it be done more efficiently, what is the best way of doing program development? and how u can develop reliable program?
SE is not only technically building the system but also understanding the requirements — Jane Clelanol
Jane Clelanol from Depaul University.
SE is something that involves not only kind of technically building the system but also understanding the requirements, working with stakeholders, find a solutions that balances all of the stakeholder needs to deliver the software thats tested.
why SE is important? Because In the U.S we’ve all seen an unfortunate example that went badly wrong in healthcare.gov and that system wasn’t engineered correctly. So that, I think there must have intersection between requirements, architecture, politics and project management. And all of these things are important concept that have to go into the Software engineering mix.
How is SE different from programming
Margaret m. Burnett from Oregon State University.
Programming is about create part of software. and SE is about the entire life cycle. Anad also SE is the largest economic piece of Software development.
SE is improving SE process
Tao Xie from University of Illnois at Urbana-Champaign.
SE is improving SE process for better Software quality and productivity.
why SE is important? Because we use software in everyday life. And also the goals is apply high quality software with fastest and proper way.
SE is activity when building system
Wolfgang Emmerich is CEO at Zuhlke Engineering Ltd.
SE is the set of activities when building system or software. It’s fundamentally activity which involves social processes.
SE is a complex system which build of many smart people
Andreas Zeller from Saarlanol University.
SE is about many people working together and putting together many large and complex systems. and our world dependes on software.
SE is valuable new functions and critical quality attributes for the system to be a success
Kevin Sullivan from University of Virginia
SE is not only doing Software components of engineering system but also reliant on it’s underlying software technologies.
SE is engineer’s abilites to understand, construct, maintain high quality systems overtime
Nenad Medvidovic from University of Southern California
SE in a nutshell are methods, principles and techniques what we have developed to enable us to build large software systems that outstrip or outpace one engineer’s or even a small team of engineer’s abilites to understand, construct, maintain systems overtime.
It requires a lot of people, long term investment by an organization. it intended for one purpose and end up getting used for many additional purpose, in addition to the original one.
SE is discipline of developing Software-based systems which composed of hardware, humans and business processes
Lionel Briand from University of Luxembourg
Why is that important? Because, software is pervasive in all industry sectors. Therefore systems must be reliable, safe and secure.
Now, Software development is distributed involves people who located in various rooms with different backgrounds. So, Engineer and customers (client or users) have to communicate with each other.
SE is how you’re building the system and how you trading off different aspects
John Penix from Google.
SE is how you’re building the system and how you trading off different aspects like scalablility, reliability and performance.
It’s going to end up breaking or not lasting very long or not. Not doing everything you want it to do or being really expensive.