My opinions on Software Engineering Skills
After two weeks of study on Software Engineering, the following is my understanding on what basic skills do software engineer need.
We need to know what activities involved in the software engineering development process before we point out what basic skills do software engineers need.
By starting a project, requirement elicitation is the first stage that a software engineer has to face. In order get the job well done, this person needs:
1. Good communication/presentation skill – He need to know the problem of the current system of the client. After analysis, he needs to present a series of use case, use case diagrams and system model to illustrate his findings and application domain to the client. Also, he needs to present his idea to his colleagues.
2. Open mind and efficient learner – The project may involve knowledge that the software engineer had never learn before so that he may need to get the idea of the client’s routine job.
After requirement elicitation, the person in charge of the project needs to analyse the information that he acquired in order to produce a system model. In order to do so, this person needs:
3. Good analytical skill – He need to transform the information acquired into a easy-to-read model in order to present to the client.
When the system model is accepted by the client, it is necessary to define the design goals of the project and the solution domain as well. In this stage he needs:
4. Familiar with software development tools – When allocating resources to the project, he needs to estimate how much recourses are required. This requires certain level of skill on software development tools involved.
During the implementation stage of software engineering, the project leader needs:
5. Certain knowledge of programming language – Since this would help him to communicate better with those programmer and able to set a reasonable milestone for them.
Overall, the software engineer need:
6. Background knowledge of legal document – Since environment is changing, the project leader need to compose legal document, like contract or agreements, in order to protect any parties in the project.
7. Good at time management – Every project has a deadline to meet. The ultimate goal of a software engineer is to submit a high quality system in limited time and resource.
I am looking forward to acquiring knowledge as much as possible from Steven but it is more realistic to set handling UML and Patterns as the first step.

0 Comments:
Post a Comment
<< Home