ЁЯПе GCE A/L ICT – роЕро▓роХு 14: рооெрой்рокொро░ுро│் роЪெропро▒்ро▒ிроЯ்роЯроо்
0.1 SDLC роОрой்ро▒ாро▓் роОрой்рой? рокроЯிроиிро▓ைроХро│்
SDLC (Software Development Life Cycle) = рооெрой்рокொро░ுро│ை родிроЯ்роЯрооிроЯро▓் рооுродро▓் рокро░ாрооро░ிрок்рокு ро╡ро░ை роЙро░ுро╡ாроХ்роХுроо் роТро┤ுроЩ்роХுрокроЯுрод்родрок்рокроЯ்роЯ рокроЯிроиிро▓ைроХро│்.
| рокроЯி | HMS роОроЯுрод்родுроХ்роХாроЯ்роЯு | Unit 14 родொроЯро░்рокு |
|---|---|---|
| 1. Planning / Feasibility | рооро░ுрод்родுро╡рооройைроХ்роХு роПрой் HMS родேро╡ை? | Proposal |
| 2. Analysis | родேро╡ைроХро│் роЪேроХро░ிрок்рокு, DFD | System Analysis |
| 3. Design | ERD, Tables, Screens | System Design |
| 4. Implementation (Coding) | PHP/MySQL роиிро░ро▓் | Implementation |
| 5. Testing | Test cases | Verification & Testing |
| 6. Deployment | рооро░ுрод்родுро╡рооройைропிро▓் роиிро▒ுро╡ுродро▓், рокропிро▒்роЪி | – |
| 7. Maintenance | рокிро┤ை родிро░ுрод்родроо், рокுродிроп ро╡роЪродி | – |
0.2 Waterfall Model
Requirements ▶ Design ▶ Coding ▶ Testing ▶ Deployment ▶ Maintenance
роТро░ு рокроЯி рооுроЯிрои்род рокிрой்рокே роЕроЯுрод்родродு; рокிрой்ройோроХ்роХிроЪ் роЪெро▓்ро▓ роЗропро▓ாродு.
роирой்рооை: роОро│ிродு, роЖро╡рогрок்рокроЯுрод்родро▓் роиро▓்ро▓родு. родீрооை: рооாро▒்ро▒роЩ்роХро│ுроХ்роХு роЗроЯрооிро▓்ро▓ை; роЪோродройை родாроородроо்; рокропройро░் роЗро▒ுродிропிро▓்родாрой் рокாро░்рок்рокாро░்.
HMS: родேро╡ைроХро│் родெро│ிро╡ாроХ, роиிро▓ைропாроХ роЗро░ுрои்родாро▓் (роО.роХா. рокிро▓்ро▓ிроЩ் ро╡ிродிроХро│்) рокொро░ுрои்родுроо்.
0.3 Prototype Model
родேро╡ைроХро│் ▶ ро╡ிро░ைро╡ு Prototype ▶ рокропройро░் роородிрок்рокீроЯு ▶ родிро░ுрод்родроо் ▶ (рооீрог்роЯுроо்) ▶ роЗро▒ுродி рооுро▒ைрооை
рооாродிро░ி родிро░ைроХро│ை (screens) роЙро░ுро╡ாроХ்роХி рокропройро░் роХро░ுрод்родிрой்рокроЯி рооாро▒்ро▒ுродро▓்.
роирой்рооை: родேро╡ைроХро│் родெро│ிро╡ாроХுроо்; рокропройро░் родிро░ுрок்родி. родீрооை: роХாро▓/роЪெро▓ро╡ு роЕродிроХро░ிроХ்роХро▓ாроо்; рооாродிро░ிропைропே роЗро▒ுродிропாроХ்роХுроо் роЖрокрод்родு.
HMS: ро╡ро░ро╡ேро▒்рокாро│ро░் рокропрой்рокроЯுрод்родுроо் роиோропாро│ро░் рокродிро╡ுрод் родிро░ை роОрок்рокроЯி роЗро░ுроХ்роХ ро╡ேрог்роЯுроо் роОрой்рокродை рооுродро▓ிро▓் роХாроЯ்роЯி роЙро▒ுродி роЪெроп்родро▓்.
0.4 Incremental & Iterative Model
Increment 1: рокродிро╡ு ▶ Increment 2: роиிропрооройроо் ▶ Increment 3: рооро░ுрои்родроХроо் ▶ Increment 4: рокிро▓்ро▓ிроЩ்
рооுро▒ைрооைропை роЪிро▒ு рокроХுродிроХро│ாроХрок் рокிро░ிрод்родு, роТро╡்ро╡ொрой்ро▒ைропுроо் родройிрод்родройிропாроХ ро╡роЯிро╡рооைрод்родு, роЪோродிрод்родு ро╡ெро│ிропிроЯுродро▓்.
роирой்рооை: рооுродро▓் рокроХுродி ро╡ிро░ைро╡ிро▓் рокропрой்рокாроЯ்роЯுроХ்роХு; роЖрокрод்родு роХுро▒ைро╡ு. родீрооை: родொроЯроХ்роХрод்родிро▓ேропே рооுро┤ு ро╡роЯிро╡рооைрок்рокுрод் родிроЯ்роЯроо் родேро╡ை.
0.5 Spiral Model
роЪுро┤ро▒்роЪி: 1.роиோроХ்роХроо் ▶ 2.Risk Analysis ▶ 3.роЙро░ுро╡ாроХ்роХроо்+роЪோродройை ▶ 4.роородிрок்рокீроЯு/родிроЯ்роЯрооிроЯро▓் ▶ (роЕроЯுрод்род роЪுро┤ро▓்)
Waterfall + Prototype роХро▓ро╡ை; роТро╡்ро╡ொро░ு роЪுро┤ро▓ிро▓ுроо் роЗроЯро░் рокроХுрок்рокாроп்ро╡ு (Risk Analysis) рооுроХ்роХிропроо்.
роирой்рооை: роЗроЯро░் рооுроХாрооைрод்родுро╡роо் роЪிро▒рок்рокு; рокெро░ிроп родிроЯ்роЯроЩ்роХро│். родீрооை: роЪெро▓ро╡ு роЕродிроХроо்; роЗроЯро░் роородிрок்рокீроЯ்роЯிро▓் роиிрокுрогрод்родுро╡роо் родேро╡ை.
HMS: роиோропாро│ро░் родро░ро╡ுрок் рокாродுроХாрок்рокு рокோрой்ро▒ роЙропро░் роЗроЯро░் родிроЯ்роЯроЩ்роХро│ுроХ்роХு.
0.6 Agile (Scrum) Model
Product Backlog ▶ Sprint Planning ▶ Sprint (1–4 ро╡ாро░роо்) ▶ Review ▶ Retrospective ▶ роЕроЯுрод்род Sprint
роХுро▒ுроХிроп Sprints, родொроЯро░்роЪ்роЪிропாрой рокропройро░் рокроЩ்роХро│ிрок்рокு, рооாро▒்ро▒род்родை ро╡ро░ро╡ேро▒்роХுроо் рооுро▒ை.
роирой்рооை: роиெроХிро┤்ро╡ு; роЕроЯிроХ்роХроЯி ро╡ெро│ிропீроЯு. родீрооை: роЖро╡рогроо் роХுро▒ைро╡ு; рокропройро░் родொроЯро░்рои்родு роИроЯுрокроЯро╡ேрог்роЯுроо்.
HMS: Sprint 1 – роиோропாро│ро░் рокродிро╡ு; Sprint 2 – роиிропрооройроо்; Sprint 3 – рокிро▓்ро▓ிроЩ்.
0.7 V-Model & RAD Model
V-Model: роТро╡்ро╡ொро░ு ро╡ро│ро░்роЪ்роЪிрок் рокроЯிроХ்роХுроо் роОродிро░்рок்рокроХ்роХроо் роТро░ு роЪோродройை рокроЯி: Requirements ↔ Acceptance Test, System Design ↔ System Test, Detailed Design ↔ Unit Test. роЪோродройைрод் родிроЯ்роЯроо் роЖро░роо்рокрод்родிро▓ேропே родропாро░்.
RAD (Rapid Application Development): роХுро▒ுроХிроп роХாро▓род்родிро▓் рооро▒ுрокропрой்рокாроЯ்роЯு роХூро▒ுроХро│் + Prototype рооூро▓роо் ро╡ேроХрооாроХ роЙро░ுро╡ாроХ்роХро▓். роЪிро▒ிроп, роХுро▒ுроХிроп роХாро▓ родிроЯ்роЯроЩ்роХро│ுроХ்роХு.
0.8 рооாродிро░ிроХро│ிрой் роТрок்рокீроЯு & HMS роХ்роХாрой родெро░ிро╡ு
| рооாродிро░ி | родேро╡ை рооாро▒்ро▒роо் | роЗроЯро░் | рокропройро░் роИроЯுрокாроЯு | рокொро░ுрод்родроо் |
|---|---|---|---|---|
| Waterfall | роХுро▒ைро╡ு | роЕродிроХроо் | роХுро▒ைро╡ு | родெро│ிро╡ாрой родேро╡ை |
| Prototype | роЕродிроХроо் | роироЯுрод்родро░роо் | роЕродிроХроо் | UI родெро│ிро╡ிро▓்ро▓ாрод рокோродு |
| Incremental | роироЯுрод்родро░роо் | роХுро▒ைро╡ு | роироЯுрод்родро░роо் | Module ро╡ாро░ிропாроХ |
| Spiral | роЕродிроХроо் | рооிроХроХ் роХுро▒ைро╡ு | роироЯுрод்родро░роо் | рокெро░ிроп, роЗроЯро░் рооிроХ்роХродு |
| Agile | рооிроХ роЕродிроХроо் | роХுро▒ைро╡ு | рооிроХ роЕродிроХроо் | рооாро▒ுроо் родேро╡ை |
рокாроЯрод்родிроЯ்роЯ роЪெропро▒்ро▒ிроЯ்роЯрод்родுроХ்роХு: Incremental + Prototype (module ро╡ாро░ிропாроХ роЙро░ுро╡ாроХ்роХி, родிро░ை рооாродிро░ிропை роЖроЪிро░ிропро░்/рокропройро░ுроЯрой் роЙро▒ுродிроЪெроп்родро▓்) рокொро░ுрои்родுроо்; родெро░ிро╡ுроХ்роХாрой роХாро░рогрод்родை роЕро▒ிроХ்роХைропிро▓் роОро┤ுродுроХ.
1.1 роироЯைрооுро▒ைрок் рокிро░роЪ்роЪிройைропை роЕроЯைропாро│роо் роХாрогро▓்
роОрой்рой роЪெроп்ро╡родு: роТро░ு роЙрог்рооைропாрой рокிро░роЪ்роЪிройைропைрод் родெро░ிро╡ு роЪெроп்родு, рокாродிроХ்роХрок்рокроЯுро╡ோро░், родро▒்рокோродைроп рооுро▒ை, роХுро▒ைрокாроЯுроХро│ை роОро┤ுродுроХ.
роОрок்рокроЯி: роЕро╡родாройிрок்рокு, роиேро░்роХாрогро▓், роХேро│்ро╡ிрод்родாро│், роЖро╡рог роЖроп்ро╡ு рооூро▓роо் родроХро╡ро▓் родிро░роЯ்роЯுроХ.
роО.роХா (HMS):
- роиோропாро│ро░் рокродிро╡ுроХро│் роХாроХிрод роХோрок்рокுроХро│ிро▓் – родொро▓ைродро▓், родேроЯுро╡родிро▓் родாроородроо்.
- роиீрог்роЯ ро╡ро░ிроЪை; роТро░ே роиேро░род்родிро▓் роЗро░ு роиிропрооройроЩ்роХро│் (double booking).
- рооро░ுрои்родு роЗро░ுрок்рокு родро╡ро▒ாрой роХрогிрок்рокு; рокிро▓் роХрогிродрок் рокிро┤ைроХро│்.
1.2 роиோроХ்роХроЩ்роХро│் (Objectives)
рокிро░роЪ்роЪிройைроХ்роХு роиேро░роЯிропாроХрод் родீро░்ро╡ு родро░ுроо் роЕро│ро╡ிроЯроХ்роХூроЯிроп роиோроХ்роХроЩ்роХро│ை роОро┤ுродுроХ.
- роиோропாро│ро░் рокродிро╡ை 2 роиிрооிроЯрод்родுроХ்роХுро│் рооுроЯிрод்родро▓்.
- роиிропроорой рооோродро▓்роХро│ை роЗро▓்ро▓ாродொро┤ிрод்родро▓்.
- родாройிропроЩ்роХி рокிро▓் рооро▒்ро▒ுроо் рооро░ுрои்родு роЗро░ுрок்рокு роЕро▒ிроХ்роХை.
1.3 рооுро▒ைрооைропிрой் ро╡ро░роо்рокு & роОро▓்ро▓ைроХро│் (Scope & Boundaries)
Scope роЙро│்ро│ро╡ை: роиோропாро│ро░் рокродிро╡ு, роиிропрооройроо், рооро░ுрод்родுро╡ роЪிроХிроЪ்роЪைрок் рокродிро╡ு, рооро░ுрои்родроХроо், рокிро▓்ро▓ிроЩ்.
Scope роЗро▓்ро▓ாродро╡ை (Boundaries): роЖроп்ро╡ுроХூроЯ роЙрокроХро░рогроХ் роХроЯ்роЯுрок்рокாроЯு, роЪроо்рокро│рок்рокроЯ்роЯிропро▓், роЖроо்рокுро▓рой்ро╕் GPS, роТрой்ро▓ைрой் роХроЯ்роЯрогроо்.
роХுро▒ிрок்рокு: роОро▓்ро▓ை родெро│ிро╡ாроХ роЗро▓்ро▓ாро╡ிроЯிро▓் родிроЯ்роЯроо் рооுроЯிро╡ிрой்ро▒ி роиீро│ுроо் (scope creep).
1.4 рокропройро░்роХро│் & родேро╡ைроХро│் (Requirements)
| рокропройро░் | роЪெропро▓் |
|---|---|
| ро╡ро░ро╡ேро▒்рокாро│ро░் | роиோропாро│ро░் рокродிро╡ு, роиிропрооройроо் |
| ро╡ைрод்родிропро░் | роиோроп் роХрог்роЯро▒ிродро▓், рооро░ுрои்родுроЪ்роЪீроЯ்роЯு |
| рооро░ுрои்родாро│ро░் | рооро░ுрои்родு ро╡ро┤роЩ்роХро▓் |
| роиிро░்ро╡ாроХி | рокропройро░் & роЕро▒ிроХ்роХை |
Functional: рокродிро╡ு, родேроЯро▓், рокிро▓் роЙро░ுро╡ாроХ்роХро▓். Non-functional: рокாродுроХாрок்рокு (login), ро╡ேроХроо், рокропрой்рокроЯுрод்род роОро│ிрооை.
1.5 роЪாрод்родிропроХ்роХூро▒்ро▒ு роЖроп்ро╡ு (Feasibility)
- родொро┤ிро▓்роиுроЯ்рокроо்: PHP+MySQL, PC роХிроЯைроХ்роХுрооா?
- рокொро░ுро│ாродாро░роо்: роЪெро▓ро╡ு vs роирой்рооை.
- роЪெропро▓்рокாроЯ்роЯு: роКро┤ிропро░் рокропрой்рокроЯுрод்род роЗропро▓ுрооா?
- роХாро▓роо்: роЕроЯ்роЯро╡рогைроХ்роХுро│் рооுроЯிропுрооா?
2.1 DFD роЕроЯிрок்рокроЯைроХро│்
| роХுро▒ிропீроЯு | рокொро░ுро│் |
|---|---|
| роЪெро╡்ро╡роХроо் | ро╡ெро│ி роЙро▒ுрок்рокு (External Entity) |
| ро╡роЯ்роЯроо் | роЪெропро▓்рооுро▒ை (Process) |
| родிро▒рои்род роЗро░ு роХோроЯு | родро░ро╡ு роЪேрооிрок்рокு (Data Store) |
| роЕроо்рокு | родро░ро╡ு роУроЯ்роЯроо் (Data Flow) |
ро╡ிродிроХро│்: роЙро▒ுрок்рокுроХро│் роиேро░роЯிропாроХ store роЙроЯрой் роЗрогைропாродு; роТро╡்ро╡ொро░ு роУроЯ்роЯрод்родுроХ்роХுроо் рокெропро░்; Context роЗро▓் роТро░ே process.
2.2 Context Diagram (HMS)
роОрок்рокроЯி: рооுро┤ு рооுро▒ைрооைропை роТро░ே process (0) роЖроХ ро╡ро░ைрои்родு, роЪுро▒்ро▒ிро▓ுроо் ро╡ெро│ி роЙро▒ுрок்рокுроХро│ைропுроо் роЙро│்ро│ீроЯு/ро╡ெро│ிропீроЯுроХро│ைропுроо் роЗрогைроХ்роХுроХ.
Patient ──роиோропாро│ро░் ро╡ிро╡ро░роо், роиிропрооройроХ் роХோро░ிроХ்роХை──▶ ┌───────────────┐ Patient ◀──роиிропроорой роЙро▒ுродி, рокிро▓்─────────────────── │ 0 Hospital │ Doctor ──роЪிроХிроЪ்роЪை, рооро░ுрои்родுроЪ்роЪீроЯ்роЯு──────────▶ │ Management │ Doctor ◀──роиோропாро│ро░் ро╡ро░ро▓ாро▒ு───────────────────── │ System │ Pharmacist ◀──рооро░ுрои்родுроЪ்роЪீроЯ்роЯு─────────────────── │ │ Pharmacist ──рооро░ுрои்родு ро╡ро┤роЩ்роХро▓் ро╡ிро╡ро░роо்──────────▶ │ │ Admin ◀──роЕро▒ிроХ்роХைроХро│்───────────────────────── └───────────────┘ Admin ──рокропройро░் ро╡ிро╡ро░роо்──────────────────────▶
2.3 Level 0 DFD (HMS)
роОрок்рокроЯி: Context process роР 4–6 рооுроХ்роХிроп роЪெропро▓்рооுро▒ைроХро│ாроХрок் рокிро░ிрод்родு, stores роЪேро░்род்родு, Context роЗрой் роЙро│்ро│ீроЯு/ро╡ெро│ிропீроЯு рокொро░ுрои்родுрооாро▒ு рокாро░்роХ்роХுроХ (balancing).
Patient ─▶ 1.0 рокродிро╡ு ───────▶ D1 Patient Patient ─▶ 2.0 роиிропрооройроо் ◀──▶ D2 Appointment Doctor ─▶ 3.0 роЪிроХிроЪ்роЪை ───▶ D3 Treatment/Prescription Pharmacist ◀▶ 4.0 рооро░ுрои்родроХроо் ◀▶ D4 Medicine 3.0/4.0 ─▶ 5.0 рокிро▓்ро▓ிроЩ் ───▶ D5 Bill ─▶ Patient Admin ◀─ 5.0 роЕро▒ிроХ்роХை
родро╡ро▒ுроХро│்: роЪроороиிро▓ைропро▒்ро▒ роУроЯ்роЯроо், рокெропро░ிро▓்ро▓ா роЕроо்рокு, process роЗро▓்ро▓ாрооро▓் store–store роЗрогைрок்рокு.
3.1 ER Diagram
рокроЯிроХро│்: (1) Entities роЕроЯைропாро│роо் (2) Attributes & Primary Key (3) Relationships (4) Cardinality (1:1, 1:M, M:N).
DOCTOR 1──────M APPOINTMENT M──────1 PATIENT APPOINTMENT 1──────1 TREATMENT TREATMENT 1──────M PRESCRIPTION M──────1 MEDICINE TREATMENT 1──────1 BILL DEPARTMENT 1──────M DOCTOR
M:N (Patient–Doctor) роР роЗроЯை entity (Appointment) рооூро▓роо் роЗро░ு 1:M роЖроХ рооாро▒்ро▒ுроХ.
3.2 Relational Tables (Mapping)
ро╡ிродி: Entity → Table; 1:M роЗро▓் "M" рокроХ்роХ table роЗро▓் FK роЪேро░்роХ்роХுроХ.
| Table | Attributes (PK_, FK*) |
|---|---|
| Patient | PatientID, Name, NIC, DOB, Phone, Address |
| Department | DeptID, DeptName |
| Doctor | DoctorID, Name, Speciality, DeptID* |
| Appointment | ApptID, PatientID*, DoctorID*, ApptDate, ApptTime, Status |
| Treatment | TreatID, ApptID*, Diagnosis, Notes |
| Medicine | MedID, MedName, UnitPrice, Stock |
| Prescription | PresID, TreatID*, MedID*, Qty, Dosage |
| Bill | BillID, TreatID*, Total, PayDate, Status |
3.3 Normalization (1NF → 3NF)
рокிро░роЪ்роЪிройை роЕроЯ்роЯро╡рогை:
VISIT(VisitID, PatientName, Phone, DoctorName, Speciality, Meds, Price)
1NF: роТро░ு роХро▓род்родிро▓் роТро░ு роородிрок்рокு; repeating group роиீроХ்роХு. "Meds" рокро▓ роородிрок்рокு → родройி ро╡ро░ிроЪைроХро│் (VisitID, MedID).
2NF: 1NF + рокроХுродி роЪாро░்рокு роиீроХ்роХு. Composite key (VisitID, MedID) роЗро▓் Price → MedID роороЯ்роЯுроо் роЪாро░்рои்родாро▓் Medicine table роЖроХ்роХுроХ.
3NF: 2NF + transitive роЪாро░்рокு роиீроХ்роХு. DoctorID → Speciality роОройிро▓் Doctor table родройிропாроХ்роХுроХ; PatientName, Phone → Patient table.
роЪுро░ுроХ்роХроо்: "роТро╡்ро╡ொро░ு non-key рокрог்рокுроо் key, рооுро┤ு key, key роороЯ்роЯுрооே роЪாро░்рои்родிро░ுроХ்роХ ро╡ேрог்роЯுроо்."
3.4 UI & Data Dictionary ро╡роЯிро╡рооைрок்рокு
Input/Output screens (рокроЯிро╡роо்/роЕро▒ிроХ்роХை) ро╡ро░ைрои்родு, роТро╡்ро╡ொро░ு field роЗро▒்роХுроо் Data type, Size, Validation роОро┤ுродுроХ.
| Field | Type | Rule |
|---|---|---|
| NIC | VARCHAR(12) | Unique, Not Null |
| Phone | CHAR(10) | роЗро▓роХ்роХроЩ்роХро│் роороЯ்роЯுроо் |
| ApptDate | DATE | роЗрой்ро▒ோ рокிрой்ройро░ோ |
4.1 роЪூро┤ро▓் & роХோрок்рокு роЕрооைрок்рокு
роХро░ுро╡ிроХро│்: XAMPP (Apache + MySQL + PHP), VS Code, phpMyAdmin.
hms/ ├ db.php (роЗрогைрок்рокு) ├ register.php (рокроЯிро╡роо் + роЪேрооிрок்рокு) ├ appointments.php └ style.css
4.2 MySQL родро░ро╡ுрод்родро│роо் роЙро░ுро╡ாроХ்роХро▓்
CREATE DATABASE hms; USE hms; CREATE TABLE Patient( PatientID INT AUTO_INCREMENT PRIMARY KEY, Name VARCHAR(80) NOT NULL, NIC VARCHAR(12) UNIQUE NOT NULL, Phone CHAR(10)); CREATE TABLE Doctor( DoctorID INT AUTO_INCREMENT PRIMARY KEY, Name VARCHAR(80), Speciality VARCHAR(50)); CREATE TABLE Appointment( ApptID INT AUTO_INCREMENT PRIMARY KEY, PatientID INT, DoctorID INT, ApptDate DATE, ApptTime TIME, FOREIGN KEY(PatientID) REFERENCES Patient(PatientID), FOREIGN KEY(DoctorID) REFERENCES Doctor(DoctorID), UNIQUE(DoctorID,ApptDate,ApptTime));
UNIQUE(DoctorID, ApptDate, ApptTime) – double booking родроЯுроХ்роХுроо்.
4.3 HTML/CSS рокропройро░் роЗроЯைрооுроХроо்
<form action="register.php" method="post">
<label>рокெропро░்</label><input name="name" required>
<label>NIC</label><input name="nic" required maxlength="12">
<label>родொро▓ைрокேроЪி</label><input name="phone" pattern="[0-9]{10}">
<button type="submit">рокродிро╡ு роЪெроп்</button>
</form>
/* style.css */
form{max-width:380px;margin:auto;padding:20px;border-radius:12px;background:#f1f6ff}
input{width:100%;padding:8px;margin:6px 0}
button{background:#0a66c2;color:#fff;padding:10px 18px;border:0;border-radius:8px}4.4 PHP рокிрой்ройрогி родро░்роХ்роХроо் (Backend)
<?php // db.php
$conn = new mysqli("localhost","root","","hms");
if($conn->connect_error){ die("Connection failed"); }
// register.php
include 'db.php';
if($_SERVER['REQUEST_METHOD']=='POST'){
$stmt=$conn->prepare("INSERT INTO Patient(Name,NIC,Phone) VALUES(?,?,?)");
$stmt->bind_param("sss",$_POST['name'],$_POST['nic'],$_POST['phone']);
echo $stmt->execute() ? "рокродிро╡ு ро╡ெро▒்ро▒ி" : "рокிро┤ை / NIC роПро▒்роХройро╡ே роЙро│்ро│родு";
}
// appointments.php (JOIN)
$r=$conn->query("SELECT p.Name,d.Name AS Doctor,a.ApptDate,a.ApptTime
FROM Appointment a JOIN Patient p USING(PatientID)
JOIN Doctor d USING(DoctorID) ORDER BY a.ApptDate");
while($row=$r->fetch_assoc()){ echo $row['Name']." – ".$row['Doctor']."<br>"; }
?>
рокாродுроХாрок்рокு: Prepared statements (SQL Injection родроЯுрок்рокு), роЙро│்ро│ீроЯு validation, password hash, session login.
5.1 роЪோродройை ро╡роХைроХро│்
- Unit: родройி module (рокродிро╡ு рокроЯிро╡роо்).
- Integration: роиிропрооройроо் + рооро░ுрод்родுро╡ро░் роЗрогைрок்рокு.
- System: рооுро┤ு рооுро▒ைрооை.
- User Acceptance: рокропройро░் роПро▒்рокு.
Verification = роЪро░ிропாрой рооுро▒ைрооைропை роЙро░ுро╡ாроХ்роХுроХிро▒ோрооா (родேро╡ைроХро│ுроЯрой் роТрок்рокீроЯு); Validation = рокропройро░் родேро╡ைропை роиிро▒ைро╡ேро▒்ро▒ுроХிро▒родா.
5.2 Test Case роЖро╡рогроо் (Expected vs Actual)
роОрок்рокроЯி: роЙро│்ро│ீроЯுроХро│ைрод் родிроЯ்роЯрооிроЯ்роЯு роОродிро░்рокாро░்роХ்роХுроо் рооுроЯிро╡ை рооுрой்роХூроЯ்роЯிропே роОро┤ுродி, роУроЯ்роЯிроп рокிрой் роЙрог்рооை рооுроЯிро╡ை роОро┤ுродி Pass/Fail роЗроЯுроХ.
| ID | роЪோродройை | роЙро│்ро│ீроЯு | Expected | Actual | рооுроЯிро╡ு |
|---|---|---|---|---|---|
| T01 | роЪро░ிропாрой рокродிро╡ு | Kamal, 901234567V, 0771234567 | "рокродிро╡ு ро╡ெро▒்ро▒ி" | "рокродிро╡ு ро╡ெро▒்ро▒ி" | Pass |
| T02 | NIC ро╡ெро▒்ро▒ு | NIC = "" | рокிро┤ைроЪ் роЪெроп்родி | рокிро┤ைроЪ் роЪெроп்родி | Pass |
| T03 | роЗро░роЯ்роЯை NIC | роПро▒்роХройро╡ே роЙро│்ро│ NIC | роиிро░ாроХро░ிрок்рокு | роиிро░ாроХро░ிрок்рокு | Pass |
| T04 | Double booking | роЕродே рооро░ுрод்родுро╡ро░்/роиேро░роо் | роиிро░ாроХро░ிрок்рокு | роЪேрооிроХ்роХрок்рокроЯ்роЯродு | Fail |
| T05 | родро╡ро▒ாрой родொро▓ைрокேроЪி | 077abc | роиிро░ாроХро░ிрок்рокு | роиிро░ாроХро░ிрок்рокு | Pass |
5.3 родро╡ро▒ு родிро░ுрод்родроо் & роЗро▒ுродி роЕро▒ிроХ்роХை
T04 Fail: роХாро░рогроо் – UNIQUE constraint роЗро▓்ро▓ை. родீро░்ро╡ு – ALTER TABLE Appointment ADD UNIQUE(DoctorID,ApptDate,ApptTime); рокிрой் рооீро│்роЪோродройை (Retest) → Pass.
роЪோродройைрод் родро░ро╡ு: роЪாродாро░рог, роОро▓்ро▓ை (boundary), родро╡ро▒ாрой (invalid) рооூрой்ро▒ுроо் рокропрой்рокроЯுрод்родுроХ.
Project роЕро▒ிроХ்роХை ро╡ро░ிроЪை: Proposal → DFD → ERD/Tables/3NF → Screens & Code → Test Cases → рооுроЯிро╡ுро░ை.
Online ICT Classes in Sri Lanka – O/L, A/L, Cambridge, Edexcel, Python, Web Development & Digital Marketing
Island-wide online classes and home-visit classes in English, Sinhala (р╖Гිංр╖Др╢╜) and Tamil (родрооிро┤்) – for school students, university students, BIT / BSc / IT final-year project students, beginners and business owners.
ЁЯТм WhatsApp Us Now ▶ Watch Free TutorialsWhat is ITClassSL? ITClassSL is a Sri Lankan ICT training service offering online and home-visit classes for G.C.E. O/L ICT, G.C.E. A/L ICT, Cambridge IGCSE / A Level, Pearson Edexcel, Python, Java, PHP & MySQL, web design, Microsoft Office, university and BIT final-year project guidance, and digital marketing. Classes run in English, Sinhala and Tamil, as individual or group sessions, anywhere in Sri Lanka. Contact: WhatsApp +94 72 962 2034 · itclasssl@gmail.com.
ЁЯЪА Learn Today. Build Tomorrow.
Looking for ICT classes in Sri Lanka, online ICT tuition, A/L ICT online class, computer classes near me or BIT project help? We provide practical, exam-focused and career-focused IT training with past papers, model papers, step-by-step coding and one-to-one support.
ЁЯТб Our ICT Training & Services in Sri Lanka
ЁЯПл School ICT Classes (Grade 1 – 13)
Online and home-visit ICT lessons for Sri Lankan school students.
- G.C.E. O/L ICT (р╖Гාр╢╕ාр╢▒්р╢║ р╢┤ෙр╖Е ICT / роЪாродாро░рог родро░ ICT)
- G.C.E. A/L ICT (р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT / роЙропро░்родро░ ICT)
- GIT (General Information Technology)
- Term test papers, past papers & revision
ЁЯдЦ Programming & AI
Learn to code from zero to project level.
- Python, C, Java, PHP, JavaScript
- HTML, CSS, jQuery & AJAX
- AI & machine-learning basics
- Problem solving & algorithms
ЁЯОУ University & Final-Year Project Guidance
Technical guidance for BIT, BSc, IT and ICT students.
- BIT / UCSC / UoM final-year projects
- PHP & MySQL, Python, Java projects
- Project ideas, proposal & documentation
- System design & database design
ЁЯМР Web Design & Development
Websites and database-driven applications for individuals and businesses.
- Website design & development
- WordPress & Blogger
- PHP & MySQL web applications
- Website SEO & maintenance
ЁЯУв Digital Marketing
Grow your brand online in the Sri Lankan market.
- Facebook page & Facebook Ads
- Instagram, Reels, TikTok & YouTube
- SEO & content creation
- LinkedIn branding & campaign planning
ЁЯТ╗ Computer & IT Skills
Essential computer skills from beginner to advanced.
- Computer fundamentals
- MS Word, Excel & PowerPoint
- Excel formulas & macros
- Oracle / MySQL / MS SQL, AWS, Linux
ЁЯЧг️ English · р╖Гිංр╖Др╢╜ · родрооிро┤் – Classes in Your Language
English
Online ICT classes in Sri Lanka, A/L ICT online class, O/L ICT tuition, computer classes, Python classes, web design course, BIT project guidance, digital marketing course Sri Lanka, home visit ICT teacher, Cambridge & Edexcel ICT / Computer Science.
р╖Гිංр╖Др╢╜
р╖Б්р╢╗ී р╢╜ංр╢Ъාр╖Аේ р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි, р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT р╢Фр╢▒්р╢╜р╢║ිр╢▒් р╢┤р╢▒්р╢нි, р╖Гාр╢╕ාр╢▒්р╢║ р╢┤ෙр╖Е ICT р╢┤р╢▒්р╢нි, р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි, р╢┤р╢║ිр╢нр╢▒් (Python) р╢┤්р╢╗ෝр╢Ь්р╢╗ැр╢╕ිр╢▒් р╢┤р╢▒්р╢нි, р╖Аෙр╢╢් р╢Ер╢йр╖Аි р╢▒ිр╢╗්р╢╕ාр╢лр╢║, р╖Аිр╖Б්р╖Ар╖Аිр╢п්р╢║ාр╢╜ р╢Ер╖Ар╖Гр╢▒් р╖Ар╖Гр╢╗ р╖А්р╢║ාр╢┤ෘр╢нි р╢╕ාр╢╗්р╢Ьෝр╢┤р╢пේр╖Бр╢▒р╢║, р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒් р╢┤ාр╢ир╢╕ාр╢╜ාр╖А, р╢▒ිр╖Ар╖Гр╢з р╢┤ැр╢╕ිр╢л р╢Лр╢Ьр╢▒්р╖Ар╢▒ ICT р╢Ьුр╢╗ුр╖Ар╢╗р╢║ා.
родрооிро┤்
роЗро▓роЩ்роХைропிро▓் роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│், роЙропро░்родро░ ICT роЖрой்ро▓ைрой் ро╡роХுрок்рокு, роЪாродாро░рог родро░ ICT ро╡роХுрок்рокு, роХрогிройி ро╡роХுрок்рокுроХро│், рокைродாрой் (Python) роиிро░ро▓ாроХ்роХ ро╡роХுрок்рокு, роЗрогைропродро│ ро╡роЯிро╡рооைрок்рокு, рокро▓்роХро▓ைроХ்роХро┤роХ роЗро▒ுродிропாрог்роЯு родிроЯ்роЯ ро╡ро┤ிроХாроЯ்роЯро▓், роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ் рокропிро▒்роЪி, ро╡ீроЯ்роЯிро▒்роХு ро╡рои்родு роХро▒்рокிроХ்роХுроо் ICT роЖроЪிро░ிропро░்.
ЁЯУЪ Learn With Your Curriculum
Sri Lankan local syllabus, Pearson Edexcel and Cambridge programmes – ICT and Computer Science.
ЁЯЗ▒ЁЯЗ░ Sri Lankan Local Curriculum
- Grade 1 – Grade 11 ICT
- G.C.E. O/L ICT · р╖Гා/р╢┤ෙр╖Е ICT · роЪா/род ICT
- G.C.E. A/L ICT · р╢Л/р╢┤ෙр╖Е ICT · роЙ/род ICT
- GIT classes
- Term test preparation, model papers & notes
- English / Sinhala / Tamil medium
ЁЯУШ Pearson Edexcel
- iPrimary Computing
- iLowerSecondary Computing
- International GCSE ICT
- International GCSE Computer Science
- International A Level IT
- International A Level Computer Science
ЁЯУЧ Cambridge
- Cambridge Primary & Lower Secondary Computing
- Cambridge IGCSE ICT
- Cambridge IGCSE Computer Science
- Cambridge O Level Computer Science
- AS & A Level IT
- AS & A Level Computer Science
ЁЯТ╗ Programming & Software Development Classes
ЁЯОУ BIT, BSc & University Final-Year IT Project Guidance
ЁЯзСЁЯТ╗ Project Development
- BIT / BSc / IT / ICT projects
- PHP & MySQL projects
- Python & Java projects
- Web application & database projects
ЁЯУД Documentation & Practical
- Project ideas & proposals
- System architecture & database design
- Assignment guidance
- Technical documentation & viva preparation
ЁЯза AI & Smart Applications
- AI application concepts
- Machine-learning modules
- Automation applications
- Step-by-step coding support
ЁЯУК Database, Cloud & IT Professional Training
ЁЯУ▒ Digital Marketing & Social Media Training (р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒් · роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ்)
ЁЯЦе️ Microsoft Office & Digital Skills (р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි · роХрогிройி ро╡роХுрок்рокுроХро│்)
ЁЯзн How to Join – 4 Simple Steps
- Message us on WhatsApp – tell us your grade / course, medium (English, Sinhala or Tamil) and your goal.
- Choose your format – online class (island-wide), home-visit class, individual or small group.
- Get your plan – schedule, syllabus coverage, notes, past papers or project roadmap.
- Start learning – live practical sessions with support between classes.
⭐ Why Join Our ICT Classes?
Study from anywhere in Sri Lanka or at home.
One-to-one or small group classes.
Learn in the medium you are comfortable with.
O/L, A/L, Cambridge, Edexcel, BIT, BSc.
Exam-focused practice and revision.
Build real programs, websites and projects.
❓ Frequently Asked Questions – ICT Classes in Sri Lanka
Do you conduct online ICT classes for O/L and A/L students in Sri Lanka?
Yes. We conduct online ICT classes for G.C.E. O/L and A/L students island-wide, and also offer home-visit individual classes. Classes cover the syllabus, past papers, model papers and revision.
Which languages are the classes taught in? (р╖Гිංр╖Др╢╜ / родрооிро┤் / English)
Classes are available in English, Sinhala and Tamil medium. / р╢┤р╢▒්р╢нි р╢Йංр╢Ь්р╢╗ීр╖Гි, р╖Гිංр╖Др╢╜ р╖Гр╖Д р╢пෙр╢╕р╖Е р╢╕ාр╢░්р╢║р╢║ෙр╢▒් р╢┤р╖Ар╢нී. / ро╡роХுрок்рокுроХро│் роЖроЩ்роХிро▓роо், роЪிроЩ்роХро│роо் рооро▒்ро▒ுроо் родрооிро┤் рооொро┤ிроХро│ிро▓் роироЯைрокெро▒ுроо்.
Do you teach Cambridge and Pearson Edexcel ICT and Computer Science?
Yes. We support Cambridge Primary to A Level and Pearson Edexcel iPrimary to International A Level, including IGCSE ICT, IGCSE Computer Science and O Level Computer Science.
Can you help with BIT, BSc or IT final-year projects?
Yes. We give technical guidance on project ideas, system design, database design, PHP & MySQL, Python and Java development, and documentation for BIT, BSc, IT and ICT students.
Can I learn Python, PHP, web design or digital marketing as a complete beginner?
Yes. Courses start from absolute beginner level and move step by step to practical projects. No previous experience is needed.
What are the class fees and schedules?
Fees and timetables depend on the subject, grade and whether you choose individual or group classes. Message us on WhatsApp (+94 72 962 2034) for current details.
How can I contact ITClassSL?
WhatsApp or call +94 72 962 2034, email itclasssl@gmail.com, or message us on Facebook and the other platforms listed below.
ЁЯУЮ Ready to Start Learning?
Book your online ICT class or ask about programming courses, university project guidance and digital marketing training.
ЁЯУ▒ Call / WhatsApp: +94 72 962 2034
ЁЯУз Email: itclasssl@gmail.com
ЁЯТ╗ Skype: ITClassSL
ЁЯТм Contact Us on WhatsAppЁЯМР Our Online Learning Platforms
Tutorials, notes, project guides and learning resources.
ICT & programming videos ЁЯТм WhatsApp Community
Join our learning community ✍️ ICT Blog
Computer classes and tutorials ЁЯУ░ WordPress
Notes and learning resources ЁЯУШ Facebook
Follow our official page ЁЯМР Wix Website
Our training services ЁЯТ╗ eTeacher Website
Online learning platform ЁЯУЭ Medium
Technology articles ❓ Quora
Project guidance and Q&A ЁЯОУ Strikingly Portfolio
University project resources ЁЯЧг️ ElaKiri Forum
Project discussion ЁЯО╡ TikTok
Short learning videos ЁЯЫТ Payhip
Digital resources ЁЯМР Weebly
Project and IT resources