Course Title: IT System Development
Course Description:
This course introduces students to the principles, methodologies, and
techniques involved in IT system development. Topics include software
development life cycle, requirements analysis, system design, programming
fundamentals, testing, and project management.
Learning Objectives:
Understand the software development life cycle and its phases.
Analyze system requirements and develop functional specifications.
Design and implement software solutions using appropriate programming
languages and tools.
Apply testing methodologies to ensure software quality and reliability.
Manage software development projects effectively.
Course Outline:
Introduction to IT System Development
Overview of IT system development process
Importance of software development methodologies
Introduction to Agile, Waterfall, and Hybrid methodologies
Software Development Life Cycle (SDLC)
Phases of SDLC: Planning, Analysis, Design, Implementation, Testing,
Deployment, Maintenance
Role of stakeholders in each phase
Deliverables and milestones in each phase
Requirements Analysis and Specification
Gathering and eliciting requirements
Types of requirements (functional, non-functional)
Documenting requirements using use cases, user stories, and
requirements specification documents
EXTENDED DIPLOMA IN COMPUTING –LEVEL 4 1
System Design
Architectural design principles
Design patterns and best practices
User interface design considerations
Programming Fundamentals
Introduction to programming languages (e.g., Java, Python, C#)
Variables, data types, control structures
Functions, methods, classes, objects
Database Fundamentals
Relational database concepts
Structured Query Language (SQL) basics
Database design and normalization
Software Testing
Importance of testing in software development
Types of testing: Unit testing, Integration testing, System testing,
Acceptance testing
Test planning, test cases, and test execution
Version Control and Collaboration
Introduction to version control systems (e.g., Git)
Branching, merging, and resolving conflicts
Collaboration tools and best practices
Project Management for Software Development
Project planning and estimation techniques
Agile project management practices (e.g., Scrum, Kanban)
Tracking progress, managing risks, and adapting to change
Ethical and Legal Considerations
Intellectual property rights
Ethical issues in software development
Compliance with regulations (e.g., GDPR, HIPAA)
EXTENDED DIPLOMA IN COMPUTING –LEVEL 4 2
Recommended Text Books
1. "Software Engineering: A Practitioner's Approach" by Roger S.
Pressman:
2. "Database Systems: Design, Implementation, and Management" by
Carlos Coronel, Steven Morris, and Peter Rob:
3. "Systems Analysis and Design" by Alan Dennis, Barbara Haley Wixom,
and Roberta M. Roth:
EXTENDED DIPLOMA IN COMPUTING –LEVEL 4 3