This course begins with web design techniques and implementation. Students are responsible for designing, developing, and maintaining their own personal and professional electronic portfolio in the form of a website. The fundamental concepts of object-oriented programming and methodologies are explored. Students develop computational thinking and problem-solving skills through programming practices and learn how to write and analyze software programs. Mobile application technologies are encountered. Students apply the software engineering lifecycle model to help develop applications that benefit the community.