Lecture1

Post on 12-Jul-2015

82 views 3 download

Transcript of Lecture1

Програм хангамжийн инженерчлэл

Б.ГанзоригУБИС 2012 он

Програм хангамжийн

инженерчлэл

• IDRC /IDRC - International Development Research Centre/ -с

санхүүжүүлж буй “Dream IT” төслийн

хүрээнд МУИС, МКС-иас хэрэгжүүлж

буй “МУ-н их дээд сургуулиудын ПХ, МХТ-н

хичээлийн хөтөлбөрийг сайжруулах” нь

сэдэвт дэд төслийн үндсэн зориго нь

Програм хангамжийн инженерчлэлийн

асуудал юм.

Програм хангамжийн

инженерчлэл

• ПХ-н инженерчлэл бол

системтэй, хяналттай, үр дүнтэй аргаар

өндөр чанартай ПХ бүтээх, түүнийг

тэтгэн арчлах салбар ухаан юм.

• Үүнд инженерчлэлийн

мэдлэг, техник, арга барилуудыг ПХ-н

хөгжүүлэлтэд ашиглах чадвар мөн

хамрагдана.

Програм хангамжийн

инженерчлэл

• ПХ-н инженерийн хөтөлбөр нь ПХ

хөгжүүлэлтийн

процесс, зарчим, онол, практикийн

өндөр мэдлэг, ур чадвартай

мэргэжилтнүүд бэлтгэхэд чиглэгддэг.

• ПХ инженерчлэл болон Компьютерийн

ухаан нь хоорондоо ялгаатай салбарууд

юм (David Parnas).

Програм хангамжийн

инженерчлэл

• ПХ-н инженерчлэл, КУ хоѐул ижилхэн

инженерийн ерөнхий мэдлэг олгох

боловч КУ-ны зорилго нь ШУ-нд

суралцах, харин ПХ-н инженерчлэл бол

олж авсан ШУ болон технологийн

ололтийг ашиглан шинэ

бүтээгдэхүүн, хэрэгслүүд бүтээхэд

орших юм.

Програм хангамжийн

инженерчлэл

• Програм хангамжийн инженерчлэл бол

инженерчлэлийн зарчмуудыг хэрэглэн

хэмнэлттэй, чанартай програм

хангамжийн системийг бүтээх ухаан юм.

• IEEE-д програм хангамжийн

инженерчлэлийг дараахь байдлаар

тодорхойлсон байдаг:

Програм хангамжийн

инженерчлэл

• ПХ-г хөгжүүлэх, хэрэглэх, арчлахад дэс

дараатай, дэг журамтай, хэмжиж

болохуйц хандлагыг хэрэглэх нь

програм хангамжийн инженерчлэл юм.

• Энэ хандлагуудыг судлахыг програм

хангамжийн инженерчлэлийн ухаан

гэнэ.

Програм хангамжийн

инженерчлэл

1. Төлөвлөлт

Үүргийн дэвтэр

Арчилгааны дэвтэр (техникийн

баримтуудаар баяжуулагдсан, үүргийн

дэвтэр)

Зардлын баримжаа (Function-Point-Арга

эсвэл COCOMO)

Үйл ажиллагааны загвар

Програм хангамжийн

инженерчлэл

2. Анализ

Шаардлагын шинжилгээ

Үнэлгээ

Процессийн анализ

Системийн анализ

Бүтэцчилсэн анализ(Structured Analyse)

Объект хандалтат анализ (ОХА)

Програм хангамжийн

инженерчлэл

3. Загварчилал

Програм хангамжийн архитектур

Бүтэцлэсэн загвар (Structured Design)

Объект хандалтат загвар (OOD)

Unified Modeling Language (UML)

Fundamental Modeling Concepts (FMC)

Програм хангамжийн

инженерчлэл

4. Програмчилал

Стандартчилагдсан програмчилал

Бүтэцлэгдсэн програмчилал

Объект хандлагат програмчилал (OOP)

Функционал програмчилал

Програм хангамжийн

инженерчлэл

5. Шалгалт ба биелэлт

Модулын шалгалт (Low-Level-Test)

Холболтын шалгалт (Low-Level-Test)

Системийн шалгалт (High-Level-Test)

Чанарын шалгалт (High-Level-Test)

Програм хангамжийн

инженерчлэл

Түших үйл ажиллагаа

6. Төслийн менежмент

Business case

Defining and managing Project Scope

The Work Breakdown Structure and Project

Estimation

Төслийн хуваарь болон Төсөвлөлт

Төслийн эрсдлийн Хяналт

Төслийн харилцаа холбоо, Tracking, болон

Тайлагнал

Програм хангамжийн

инженерчлэл

Түших үйл ажиллагаа

6. Төслийн менежмент

Managing Organisational

Change, Resistance, болон зөрчилдөөн

Project Procurement Management and

Outsourcing

Leadership and Ethics

Төслийн гүйцэтгэл, Closure, болон Үнэлгээ

Програм хангамжийн

инженерчлэл

7. Чанарын менежмент

Capability Maturity Model Integration

Spice (Norm) (Software Process

Improvement and Capability Determination)

Incident менежмент

Problem менежмент

Програм хангамжийн хэмжүүр

Статистик анализ (Сул талуудын тооцоо)

Програм хангамжийн эргоном (тохь тух гэж

болох юм)

Програм хангамжийн

инженерчлэл

8. Тохиргооны менежмент

Хувилбарын зохион байгуулалт (version

management)

Өөрчлөлтийн менежмент

Гаргалтын менежмент

Хэрэглээний менежмент

Програм хангамжийн

инженерчлэл

9. Баримтжуулалт

Програм хангамж баримтжуулалтын

хэрэгслүүд

Техникийн баримтжуулалт (Хөгжүүлэгчийн

гарын авлага)

Системийн баримтжуулалт (Үргэлжлүүлэн

хөгжүүлэл ба алдаа засалт)

Бизнесийн процесс (Үргэлжлүүлэн

хөгжүүлэх ухагдахуун ба аргачилал)

Хэрэглэгчийн гарын авлага