โครงสร้างพื้นฐานข้อมูลระดับองค์กรและระบบเวิร์กโฟลว์ที่มีขั้นตรวจสอบ

Extranet เดียวสำหรับชุดข้อมูลด้านมนุษยธรรมและการพัฒนาที่ซับซ้อน

เยี่ยมชมเว็บไซต์

ลูกค้า

MIMU (สหประชาชาติ / เมียนมาร์)

ปี

2020–2021

ระยะเวลา

6 เดือน

ความเชี่ยวชาญ

Web applications

ลูกค้า

MIMU (สหประชาชาติ / เมียนมาร์)

MIMU — ระบบจัดการข้อมูลและเวิร์กโฟลว์ของสหประชาชาติ

Myanmar Information Management Unit (MIMU) ซึ่งบริหารโดยโครงการพัฒนา แห่งสหประชาชาติ เป็นแหล่งข้อมูลกลางสำหรับกิจกรรมด้านมนุษยธรรม การพัฒนา และสันติภาพในเมียนมาร์ หน่วยงานนี้รวบรวม จัดมาตรฐาน และจัดระเบียบข้อมูล ด้านการบริหาร องค์กร ภูมิศาสตร์ และเชิงพื้นที่ที่หน่วยงานสหประชาชาติ NGO และภาครัฐนำไปใช้

Outsourcify พัฒนา extranet แบบกำหนดเองที่ปลอดภัยเพื่อรวมชุดข้อมูลที่ กระจัดกระจายเหล่านี้ไว้หลังอินเทอร์เฟซแบบมีขั้นตอนเดียว เจ้าหน้าที่ที่ ไม่ใช่ผู้เชี่ยวชาญฐานข้อมูลสามารถค้นหา สร้าง ตรวจสอบ และดูแลข้อมูลที่มี ความสัมพันธ์หลายระดับได้โดยไม่ต้องทำงานกับ PostgreSQL โดยตรง ขณะเดียวกัน แอปพลิเคชันปกป้องความถูกต้อง สิทธิ์ และประวัติของ data model เบื้องหลัง

ผลลัพธ์

150+ตาราง PostgreSQL เชิงสัมพันธ์ที่จัดการผ่านแอปพลิเคชันเดียว
50+business object หลักที่แสดงเป็นเวิร์กโฟลว์แบบมีขั้นตอน
30+หน่วยข้อมูลจำแนกประเภทหลักที่รักษาความสอดคล้อง
25+ฟอร์มหลายมิติที่ซับซ้อนสำหรับผู้ปฏิบัติงานทั่วไป

ความท้าทาย

ระบบข้อมูลของ MIMU เติบโตเป็นสถาปัตยกรรมเชิงสัมพันธ์สูงที่กระจายอยู่ในชุดข้อมูลเฉพาะทาง การเปลี่ยนโครงสร้างนี้เป็นเครื่องมือปฏิบัติงานที่ปลอดภัยต้องแก้โจทย์หลายด้านร่วมกัน:

  • ความซับซ้อนเชิงสัมพันธ์: ตารางที่อ้างอิงกันมากกว่า 150 ตารางทำให้การจัดการโดยตรงช้าและเสี่ยงต่อ foreign-key หรือความไม่สอดคล้องของข้อมูล
  • ความยากในการป้อนข้อมูล: เจ้าหน้าที่ต้องสร้างข้อมูล one-to-many หลายระดับโดยไม่จำเป็นต้องเข้าใจ schema เบื้องหลัง
  • แรงกดดันด้านคุณภาพข้อมูล: ไฟล์จากหลายองค์กรต้องผ่านรูปแบบ กฎธุรกิจ และการตรวจสอบที่สม่ำเสมอก่อนเข้าสู่ข้อมูลใช้งานจริง
  • ความหลากหลายของงาน: ตัวชี้วัดพื้นฐาน GIS web services กิจกรรม และคำขอจากพันธมิตรต้องมีเวิร์กโฟลว์แยก แต่ใช้ฐานข้อมูลร่วมกัน
  • การตรวจสอบย้อนหลัง: ผู้ดูแลต้องทราบว่าใครแก้ข้อมูล แก้อะไร และแทนที่สถานะก่อนหน้าใด

ทางออก

Backend Symfony REST ครอบกฎความสัมพันธ์ สิทธิ์ การตรวจสอบ และประวัติ รายการข้อมูล ขณะที่ frontend Vue.js / Nuxt.js เปลี่ยน data model เป็น เวิร์กโฟลว์แบบมีขั้นตอน ฟอร์มซับซ้อนมากกว่า 25 ฟอร์มและหน้าจอ CRUD เฉพาะงานหลายร้อยหน้าช่วยให้ผู้ใช้เพิ่ม child record หลายระดับภายในบริบท เดิมได้โดยไม่ต้อง reload หรือเห็นโครงสร้างฐานข้อมูลดิบ กระบวนการนำเข้า ตรวจไฟล์ CSV และ Excel ตาม schema และกฎธุรกิจก่อนบันทึกลง PostgreSQL โมดูลเฉพาะแยกตัวชี้วัดพื้นฐาน ทรัพยากรเชิงพื้นที่ web services กิจกรรม และคำขอ พร้อม role ระดับแอปพลิเคชัน นโยบาย session และประวัติเวอร์ชัน

เครื่องมือ

Symfony, Vue.js / Nuxt.js, PostgreSQL, REST APIs, การตรวจสอบไฟล์ CSV และ Excel

ทีม

ผู้จัดการโครงการ 1 คน, ผู้ประสานงานโครงการ 1 คน, นักพัฒนา Front-End 1 คน, นักพัฒนา Symfony 1 คน

วิธีการ

Agile พร้อมการติดตาม requirement และ SOP ที่จัดทำเป็นเอกสาร

เครื่องมือ

Symfony, Vue.js / Nuxt.js, PostgreSQL, REST APIs, การตรวจสอบไฟล์ CSV และ Excel

ระยะเวลา

6 เดือน

เปลี่ยนความซับซ้อนเชิงสัมพันธ์เป็นการป้อนข้อมูลแบบมีขั้นตอน

อินเทอร์เฟซแทนที่การทำงานกับฐานข้อมูลโดยตรงด้วยฟอร์มตามงาน ผู้ปฏิบัติงานสามารถ:

  • ค้นหา สร้าง และแก้ไขข้อมูลด้วยคำศัพท์ที่ใช้ในงานจริง
  • เพิ่มข้อมูลลูกหลายระดับภายในเวิร์กโฟลว์ของข้อมูลหลัก
  • ใช้กฎธุรกิจที่กระทบวัตถุซึ่งเชื่อมโยงกันหลายรายการ
  • ตรวจสอบการนำเข้าและส่งออกก่อน commit ข้อมูล
  • ดูประวัติเวอร์ชันและส่งการแจ้งเตือนการปฏิบัติงาน
อินเทอร์เฟซป้อนข้อมูล focal person ของ MIMU

โมดูลเฉพาะงานบนฐานข้อมูลร่วมกัน

ข้อมูลและตัวชี้วัดพื้นฐาน

  • ตัวชี้วัดสถิติระดับประเทศ
  • การจำแนกประเภทด้านการบริหารและหน่วยงาน
  • ข้อมูลพันธมิตรและองค์กรแบบมีโครงสร้าง

GIS และการประสานงานเชิงพื้นที่

  • จัดหมวดหมู่ชุดข้อมูลภูมิสารสนเทศ
  • ติดตามชุดแผนที่และการเผยแพร่
  • คำขอทรัพยากรเชิงพื้นที่จากพันธมิตร

Web services และกิจกรรม

  • เวิร์กโฟลว์บริการภายในที่จำกัดสิทธิ์
  • ข้อมูลกิจกรรมและผู้เข้าร่วม
  • การแจ้งเตือนและประสานสถานะคำขอ

วิศวกรรมที่ขับเคลื่อนด้วย specification ช่วยลดความกำกวม

MIMU จัดเตรียม logical data model และ Standard Operating Procedures อย่างละเอียดก่อนเริ่มพัฒนา จึงสามารถติดตาม input เส้นทางตรวจสอบ สิทธิ์ และ error state ที่คาดไว้จาก requirement ไปยังฟอร์ม กฎ API และ acceptance check ได้ สำหรับระบบที่มีความสัมพันธ์หลายร้อยจุด เอกสารเหล่านี้ไม่ใช่งานบริหารเพิ่มเติม แต่เป็นส่วนหนึ่งของ สถาปัตยกรรมทางเทคนิค

ตรวจสอบก่อนข้อมูลเข้าสู่โมเดลใช้งานจริง

แพลตฟอร์มย้ายการควบคุมคุณภาพมาไว้ที่ขอบเขตการป้อนข้อมูล:

  1. Map: จับคู่คอลัมน์ขาเข้ากับ schema และประเภทข้อมูลที่คาดไว้
  2. Validate: ตรวจรูปแบบ ฟิลด์บังคับ ความสัมพันธ์ และกฎธุรกิจ
  3. Review: แสดงข้อผิดพลาดที่แก้ไขได้แทนข้อความล้มเหลวจากฐานข้อมูล
  4. Commit: บันทึกเฉพาะข้อมูลที่ผ่านการยอมรับลงในโมเดล production
  5. Trace: การแก้ไขภายหลังสร้างประวัติที่ผู้ดูแลตรวจย้อนหลังได้

ความน่าเชื่อถือที่สร้างไว้ในชั้นแอปพลิเคชัน

การควบคุมสิทธิ์

  • การยืนยันตัวตนด้วย token
  • Role ระดับแอปพลิเคชันอย่างละเอียด
  • รหัสผ่านที่เข้มงวดและการเปลี่ยน credential รายปี

ความปลอดภัยของ session

  • timeout อัตโนมัติเมื่อไม่ใช้งาน 60 นาที
  • จำกัดการเข้าถึงโมดูลปฏิบัติงาน
  • แยกผู้ใช้ทั่วไปออกจากฟังก์ชันผู้ดูแลชัดเจน

ความรับผิดชอบย้อนหลัง

  • บันทึกการกระทำของผู้ใช้ใน audit history
  • เก็บการเปลี่ยนเป็นเวอร์ชันแทนการเขียนทับโดยไม่เหลือร่องรอย
  • ตรวจดูสถานะก่อนหน้าของข้อมูลได้เมื่อจำเป็น

มากกว่าการจัดการฐานข้อมูลโดยตรง

ความสามารถ เครื่องมือฐานข้อมูลโดยตรง รูปแบบแอปพลิเคชัน MIMU
การป้อนข้อมูลเชิงสัมพันธ์ แก้ row เองและต้องมีความรู้ฐานข้อมูล ฟอร์มซ้อนแบบมีขั้นตอนรักษาความสัมพันธ์
คุณภาพข้อมูล พบข้อผิดพลาดหลัง insert preflight check ป้องกันข้อมูลไม่ถูกต้อง
ประวัติ ใช้ log ภายนอกหรือเอกสารทำมือ ประวัติเวอร์ชันและการกระทำของผู้ใช้ในระบบ
สิทธิ์ สิทธิ์ระดับฐานข้อมูลแบบกว้าง role ละเอียดตามเวิร์กโฟลว์และโมดูล
การใช้งาน ออกแบบสำหรับผู้เชี่ยวชาญฐานข้อมูล อินเทอร์เฟซภาษางานสำหรับเจ้าหน้าที่ทั่วไป

ติดต่อเรา

มาหาทางออกที่ใช่สำหรับธุรกิจของคุณ

เราร่วมงานกับทีมผลิตภัณฑ์และผู้ก่อตั้ง เพื่อออกแบบ สร้าง และส่งมอบซอฟต์แวร์ที่ใช้งานได้ยั่งยืน

คุยกับทีมของเรา