MODULE 6 Basics of Computer Programming
MODULE 6 Basics of Computer Programming
Introduction
Computer programming is the process of designing, writing, testing, and maintaining code
that a computer can understand and execute.
Programming is at the heart of software development, enabling us to create a wide range of
applications, from simple scripts to complex software systems.
A computer program is a set of instructions written in a specific programming language that
tells a computer what to do.
Programs are executed by a computer's CPU (Central Processing Unit) and can perform a
wide variety of tasks, from calculations to data processing and user interface interactions.
Planning:
Objectives: Define the project's scope, objectives, goals, and constraints.
Activities: Conduct feasibility studies, assess resource requirements, establish a project team,
and develop a project plan.
Deliverables: Project charter, feasibility report, project plan, and initial cost estimates.
Analysis:
Objectives: Understand the current system (if applicable) and gather detailed requirements for
the new system.
Activities: Conduct interviews, surveys, and workshops with stakeholders, analyze existing
documents, and document functional and non-functional requirements.
Deliverables: Requirements document, use cases, data models, and system specifications.
Design:
Objectives: Create a detailed design for the new system based on the requirements gathered.
Activities: Develop system architecture, design data structures, user interfaces, and databases.
Create technical specifications and detailed system diagrams.
Deliverables: System design documents, database schemas, user interface prototypes, and
detailed technical specifications.
Implementation (Coding):
Objectives: Develop the actual system based on the design specifications.
Activities: Write, compile, and test the code. Develop modules and components, perform unit
testing, and integrate them into the complete system.
Deliverables: Executable code, software modules, and unit test reports.
Testing:
Objectives: Verify and validate that the system functions correctly and meets the specified
requirements.
Activities: Plan and execute various testing phases, including unit testing, integration testing,
system testing, and user acceptance testing (UAT).
Deliverables: Test plans, test cases, test results, and defect reports.
Deployment (or Implementation):
Objectives: Prepare for and deploy the system into the production environment.
Activities: Install hardware and software, configure the system, migrate data, train users, and
create user documentation.
Deliverables: Deployed and operational system, user manuals, and training materials.
Evaluation (Optional):
Objectives: Assess the system's performance and effectiveness after it has been in use.
Activities: Collect feedback from users, measure system performance against objectives, and
identify areas for improvement.
Deliverables: Evaluation reports and recommendations for enhancements.
The Systems Development Life Cycle is not always linear and may involve iterative
processes, especially in Agile methodologies, where development occurs in short cycles or
sprints. The choice of SDLC model depends on the project's complexity, requirements, and
organizational preferences. Properly following the SDLC helps ensure that technology
projects are completed on time, within budget, and meet the needs of stakeholders.
Projects in SDLC
These projects can range from small-scale initiatives to large, complex endeavors. Here are
some basic project types within the SDLC:
Integration Projects:
Objective: To integrate multiple systems or applications to work together seamlessly.
Activities: Integration design, development, testing, and deployment.
Example: Integrating a company's ERP system with its supply chain management software.