We may earn an affiliate commission when you visit our partners.
Course image
Kenneth W T Leung

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.

Enroll now

Share

Help others find Specialization from Coursera by sharing it with your friends and followers:

What's inside

Three courses

Software Engineering: Modeling Software Systems using UML

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.

Software Engineering: Implementation and Testing

Software Development Life Cycle (SDLC) focuses on the implementation and testing phases. You will examine different software development processes for large software systems development, and understand the strengths and weaknesses 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.

Software Engineering: Software Design and Project Management

Software Development Life Cycle (SDLC) involves planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the project planning and analysis/design phases of SDLC. 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.

Learning objective

The principal tasks of software project managers.software engineering skill and techniques being used in software development life cycle (sdlc).

Save this collection

Save Software Engineering to your list so you can find it easily later:
Save
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser