My Understanding of Software Engineering

17 Dec 2020



My Understanding of Software Engineering

Software engineering was very helpful to me during this semester because it focused on computer science. I found that software engineering consists of more than just web application development. In this 314 class, I experienced basic software engineering concepts such as Agile Project Management, an iterative approach to planning and guiding project processes, and User Interface Framework, a framework created for user-interface applications. Also, I was able to learn how to work in an efficient and practical way with group members by setting milestones, assigning problems, and using branches at Github. I believe this will help me work in the software engineering industry in the future.

Agile Project Management

Agile project management is the idea of dividing projects into smaller, more manageable stages so that teams can work more efficiently and adapt to all the changes they need. This type of structure helps you collaborate with your team members. For the ICS 314 final project, the job was divided into three milestones using the GitHub project board. Each milestone has a specific purpose that is set. Each milestone has a specific purpose to set up a previous milestone, and within each milestone, we were able to see what each team member had to do, in progress, or complete. Github is available to anyone and easy to use, so it’s convenient to use it when you’re working on a team project. Therefore, since this is a good management style, I will use it for the next group project if I have a chance.

Ethics in Software Engineering

The idea of ethics in software engineering is one of the hot topics. Software engineers design software that directly affects end-users. In addition to knowing how to develop software, engineers must be able to make ethical decisions about the software they have created. Individual engineers can be ethical. However, a situation that violates ethics can allow companies to violate their information without the permission of users. For example, Facebook caused controversy a few years ago by using 680,000 user data for psychological research without prior consent. This has become an ethical issue of manipulating user emotions and collecting data and has become a serious privacy issue due to personal information leakage.

As the development of artificial intelligence technology accelerates, ethical issues will become more prominent. Therefore, I think ethics can be a compulsory subject for computer programmers in the near future. Because if engineers involved in the development of artificial intelligence have no ethical obligations and responsibilities, the technology will be disastrous.