Why the Videos?
I’m a college student studying the art of computer science, since this semester
I’m taking Software Engineering 1 I decided to create videos as i learn
new information about software engineering. All this sounds good but what is it in it for me? I’m glad you asked well you can learn right along side with me, want to video chat ping me on Google plus here or follow me on twitter here or stay updated on blog post and videos here
Requirements:
My target audience is someone that has been programming about 1 year knows the basic syntax of java, or your preferred programming language but if you want to code along java is a must and don’t forget you must be comfortable running java programs from the command line. Basic understanding of Object Oriented Programming is assumed.
Whats your reference and tools?
-College Class on Software Engineering
-UC Berkeley Course (Here)
-Software Engineering (9th Edition)here
-Code Complete here
-Head First Design Patters here
-Test Driven: TDD and Acceptance TDD for Java Developers here
-Netbeans Here
Overview on course
Welcome!! to software engineering 1. The purpose for this videos is to give an overview of what is software engineering and introduce software engineering principles. Some of this topics can be broken down into there own courses but the purpose of theses videos is to introduce them not to go in depth.
Course Layout
- Course Overview
- Introduction
- You are now a professional
- Software Ethics
- Software Product Example
- Software Processes
- Software processes models
- How to deal with change?
- Source Control
- Agile Software Development
- Whats the big deal on Agile Development
- Waterfall vs Agile Development
- Extreme Programming
- Agile Development & Project Management
- Scaling Agile Methods
- Engineering Requirements
- Functional vs non-functional
- Meeting those software Requirements
- Obtaining software specification
- What are the engineering processes
- Validating the requirements
- Requirements on management
- How to design an architectural design?
- What is architectural design
- views, architectures, patterns and design decisions
- Modeling the system
- What are modeling the system?
- Model-Driven engineering
- Context, Interaction, Structural, and Behavioral Models
- Implementation of Design
- OOP using UML
- Design Patterns
- Open Source Development
- Software Testing
- Testing & Developing
- TDD Test Driven Development
- Testing releases, and users tests
- Software Evolution
- How to deal with changes
- Software Maintenance
- Working with legacy systems
- Done!!
- Where to go from here
- Thanks for watching
Challenges
I always had a passion for the field of STEM (Science, Technology, Engineering, and Math) and I knew I wanted to do something to make a difference in the world. I just didn’t know where to start. I was an immigrant in a new country, grew up in a tough environment, and wasn’t sure how… Read More