What Is Social Capital?
October 4, 2024
Article
Getting Started as a Software Engineer. Master techniques and skills to plan, design, implement, test, and maintain software systems.
Instructor: Kenneth W T Leung
14,920 already enrolled
Included with
(277 reviews)
Recommended experience
Intermediate level
Basic Object-Oriented Programming (OOP) Concepts
(277 reviews)
Recommended experience
Intermediate level
Basic Object-Oriented Programming (OOP) Concepts
The principal tasks of software project managers.
Software Engineering skill and techniques being used in Software Development Life Cycle (SDLC).
Add to your LinkedIn profile
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
Software development is not just about coding, it also involves the application of scientific knowledge and well-defined engineering techniques to produce maintainable, scalable, cost-effective and on-schedule software products. This specialization covers software engineering methodologies, techniques, and tools for planning, capturing requirements, designing, implementing, testing, and maintaining large-scale software systems. It combines scientific and technological knowledge with many hands-on examples and real-life case studies for students to apply software engineering skills in a realistic development environment. This specialization is intented for programmers who want to deepen their understanding of the methodologies and techniques involved in software development. Basic object-oriented programming (OOP) concepts are required to attempt the series of courses. It is recommended to take the courses in the order they are listed, as they progressively develop teachniques and concepts about software engineering, it is not a hard requirement.
Applied Learning Project
Learners will apply different software engineering techniques for planning, capturing equirements, designing, implementing, testing, and maintaining large-scale software systems through many hands-on examples and real-life case studies in a realistic development environment.
Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the requirement analysis phase of SDLC, and you will learn how to use UML models to capture the system requirements and to facilitate communication between client/users and developers. UML is a general purpose visual modeling language for systems. It can be used to highlight different aspects of the system that are of interest to different stakeholders. Data requirements are captured in the domain model, which describes the important concepts of the application domain as classes, associations between them and constraints on them. Functional requirements are captured in the use-case model to describe the interactions between the system and its environment (users, other systems).
UML incorporates the current best practices in Object-Oriented modeling techniques. Basic object-oriented programming (OOP) concepts are required to attempt the course. It is recommended to take the courses in the order they are listed, as they progressively develop techniques and concepts about software engineering, but it is not a hard requirement.
Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the implementation and testing phases of SDLC, and you will examine different software development processes for large software systems development, and understand the strengths (pros) and weaknesses (cons) of different software development processes. You will also encounter defensive programming techniques to prevent software bugs during implementation, and learn how to test your system thoroughly using different types of test cases.
Basic object-oriented programming (OOP) concepts are required for topics covered in defensive programming and object-oriented testing. Implementation is driven by the UML models derived from requirement analysis. It is recommended to take the course "Software Engineering: Modeling Software Systems using UML" before attempting this course, but it is not a hard requirement.
Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the project planning and analysis/design phases of SDLC, and you will learn about different architectural patterns and design patterns to solve common problems in software design. It covers project planning, scheduling, and cost estimating, which are the principal tasks of software project managers.
Basic object-oriented programming (OOP) concepts are required to understand different design patterns covered in this course. System design is driven by the UML models derived from requirement analysis. It is recommended to take the course "Software Engineering: Modeling Software Systems using UML" before attempting this course, but it is not a hard requirement.
HKUST is a world-class research-intensive university that focuses on science, technology, and business as well as humanities and social science. HKUST offers an international campus, and a holistic and interdisciplinary pedagogy to nurture well-rounded graduates with a global vision, a strong entrepreneurial spirit, and innovative thinking.
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Earn a degree from world-class universities - 100% online
Upskill your employees to excel in the digital economy
In approximately 2-3 months, you will pick up all the necessary skills for software engineering.
Basic concepts about Object-Oriented Programming (OOP).
It is recommended to take the courses in the order they are listed, as they progressively develop teachniques and concepts about software engineering, it is not a hard requirement.
This course is completely online, so there’s no need to show up to a classroom in person. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Yes! To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate, or you can audit it to view the course materials for free. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. Visit your learner dashboard to track your progress.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. If you only want to read and view the course content, you can audit the course for free. If you cannot afford the fee, you can apply for financial aid.
This Specialization doesn't carry university credit, but some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.
These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site will not then work.
These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.
These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us to know which pages are the most and least popular and see how visitors move around the site. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.
These cookies enable the website to provide enhanced functionality and personalization. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.