SE

SE#5.1 საინფორმაციო სიტემების მოდელირება (Software System Modeling)

სReference: Sommerville, Software Engineering, 10 ed., Chapter 5

როგორც ვნახეთ, ფუნქციონირების მოთხოვნების შეგროვების დროს მიმდინარეობს, საინფორმაციო სისტემისადმი მოთხოვნების ანალიზი და დოკუმენტირება – პასუხი გაეცემა კითხვას: რას უნდა აკეთებდეს საინფორმაციო სისტემა ? მისი მოდილირების დროს კი უნდა მოხდეს სისტემის დიზაინის შემუშავება – პასუხი გაეცემა კითხვას: როგორ უნდა მოხდეს სისტემისადმი წაყენებული მოთხოვნების შესრულება?

საინფორმაციო სისტემების და კერძოდ მინი უმნიშვნელოვანესი ნაწილის,  პროგრამული უზრუნველყოფის მოდელირების პროცესის (System Modeling Process – SMP) – მიზანია, დოკუმენტირებული მოთხოვნების შესაბამისი, პროგრამული უზრუნველყოფის მოდელის შექმნა, მთლიანი საინფორმაციო სისტემის ხედვის სხვადასზვა კუთხით და პერსპექტივით.

მოდელირების სტანდარტიზაციისთვის შემუშავებულია –  Unified Modeling Language (UML) – უნიფიცირებული გრაფიკული აღწერის ენა,  ამ ინსტრუმენტით აღწერილი სისტემის მოდელი ეხმარება სისტემის ანალიტიკოსს შექმნას, სისტემის ფუნქციონირების სქემები. მათ საფუძველზე ააგოს, პროგრამული სისტემის მოდელის პროტოტიპი და მის დასახვეწად მოახდინოს კომუნიკაცია საინფორმაციო სისტემის (და არა მარტო პროგრამული უზრუნველყოფის !) შექმნაში ჩართულ მხარეებთან.

UML დიაგრამები აღწერს საინფორმაციო სისტემას 2 განსხვავებულ –  დინამიურ სისტემის ობიექტებს შორის ურთიერთქმედების (Behavioral) და სტატიკურ სისტემის ობიექტების შორის კავშირების (Structural) ჭრილში, კერძოდ:

  1. An external perspective გარე პერსპექტივა. აღიწერება სისტემის ფუნქციონირების გარემო  (the context or environment of the system);
  2. An interaction perspective – სისტემის ან მისი კომპონენტების,  მისი ფუნქციონირების გარემოსთან ან მის კომპონენტებთან ურთიერთქმედება.  (the interactions between a system and its environment, or between the components of a system);
  3. A structural perspective – სისტემის ან სისტემის მიერ დასამუშავებელი მონაცემების ორგანიზება და სტრუქტურა. (the organization of a system or the structure of the data that is processed by the system).
  4. A behavioral perspective – სისტემის დინამიური მახასიათებლები და მისი რეაგირება დინამიურ ხდომილებებზე (the dynamic behavior of the system and how it responds to events).

საინფორმაციო სისტემის (და კერძოდ პროგრამული უზრუნველყოფის) მოდელირების დროს შესაძლებელია, ცალ ცალკე აღიწეროს, სისტემაში მიმდინარე აქტივობების მოდელები და სისტემის მონაცემთა სტრუქტურები. მათი შეჯამებით მივიღებს საინფორმაციო სისტემის ოპერირების ბიზნესის მოდელის ინტეგრირებულ სტრუქტურას, რომელიც შემდეგი სახით შეიძლება გამოისახოს:

პროგრამული უზრუნველყოფის, მოდელირებისთვის გამოიყენება 5 ტიპის UML დიაგრამა:

  1. Activity diagrams –  წარმოგვიდგენს სისტემის ფუნქციონირების ან მის მიერ მონაცემების  დამუშავების პროცესის აქტივობები (which show the activities involved in a process in data processing);
  2. Use case diagrams   – სისტემის, მისი ფუნქციონირების გარემოს და სისტემის მომხმარებლებს (Actors) შორის მიმდინარე აქტივობები. ( which show the interactions between a system and its environment);
  3. Sequence diagrams – სისტემის მონაწილეებს ან მის კომპონენტებს შორის მიმდინარე აქტივობები. (which show interactions between actors and the system and between system components);
  4. Class diagrams  –  სისტემის ობიექტების,  კომპონენტების და მათ შორის დამოკიდებულებები. (which show the object classes in the system and the associations between these classes).
  5. State diagrams – სისტემის რეაგირების სქემებს, მასთან დაკავშირებულ გარე და შიდა გარემოში სტატიკურ და დინამიურ ხდომილებებზე. (which show how the system reacts to internal and external events).

ზოგადად სისტემის მოდელირების მიმდინარეობა აღნიშნული დიაგრამების გამოყენებით ასე შეიძლება წარმოვიდგინოთ:

DesignDurringAnalysis1.png

ახალი სისტემის მოთხოვნების ჩამოყალიბების პროცესში (Requirements engineering),  აღნიშნული  UML დიაგრამებით აღიწერება არსებული სისტემა, ტარდება მისი ძლიერი (Strengths) და სუსტი (weaknesses) მხარეების ანალიზი (SWOT Analysis),   შემდეგ სისტემის მომხმარებლის მოთხოვნების შესაბამისად, ხდება პერსპექტიული სისტემის მოდელირება. არსებული და პერპექტიული სიტემების შედარებით ხდება,  ჩასატარებელი აქტივობების იდენტიფიცირება, დოკუმენტირება და მათი შესრულების დაგეგმვა და საპროექტო დავალების ფორმირება.

საინფორმაციო სისტემის კონტექსტი და საოპერაციო მოდელი – System Context and process models

კონტექსტის მოდელი (Contexts Model) გამოიყენება, სისტემის საოპერაციო მოდელის საზღვრების (Scope of Change) ილუსტრირებისთვის,  კერძოდ,  რას მოიცავს სისტემა და რას არ მოიცავს, რა საკითხები არ ეხება ჩასატარებელი სამუშაოები. კონტექსტის ფორმირებაზე გავლენა შეიძლება იქონიონ სოციალ-პოლიტიკურმა და სხვა სისტემის განთავსების გარემოს დამახასიათებელმა ფაქტორებმა, უკვე არსებულმა სისტემებმა ან მოსალოდნელმა მოვლენებმა (განხილულია სტატიაში Risk management). თავის მხრივ სისტემის არქიტექტული მოდელი ასახავს სისტემის და მის გარემოში არსებულ სუბიექტებს შორის შორის ურთიერთდამოკიდებულებას.

სისტემის კონტექსტის მოდელი, ახასიათებს სისტემის მის გარემოსთან დამოკიდებულებებს და არ აღწერს სხვა სისტემებს ფუნქციონირების და კონფიგურაციის მოდელებს.

Activity diagrams 

სისტემის აქტივობების დიაგრამები, აღწერს სისტემაში პროცესების მიმდინარეობას, ობიექტებს შორის ურთიერთკავშირს და მათი ურთიერთქმედების  ლოგიკას. წარმოადგენს სისტემის ფუნქციონირების გლობალურ სურათს.

Editing a process6

Purchase Request Process

State diagrams

State Diagram – სტატუსების დიაგრამა აღწერს, პროცესის მსვლელობის დროს, სისტემის ობიექტების სტატუსებს. მისი გამოყენება საშუალება გვაძლებს აღვწეროთ სისტემის ობიექტებს შორის ურთიერთქმედებების დინამიკა. იგი გამოიყენება როგორც სისტემის გლობალური მოდელის ცალკეული პროცედურების, ასევე დამოუკიდებელ მოდულებს შორის ინტერაქციის აღწერის დროს. მაგ. ზემოთ მოცემულ Purchase Request Process – ში შეგვიძლია აღვწეროთ Purchase Order Procedure – შემდეგი სახით:

UML Statechart Diagram

Purchase Order Procedure

დიაგრამაში პროცესისგან პროცედურას გადაეცება დასამუშავებელი მონაცემები, პროცედურა პროცესს უბრუნებს დამუშავებულ მონაცემებს.

ოპერირების სცენარების მოდელირება – Use case diagrams

სისტემაში მიმდინარე პროცესების ოპერირების სცენარები აღწერილია სტატიაში   BA #1.3 Use Case Modeling

აქ მოკლედ ვიტყვით რომ, Use case diagrams – გამოიყენება საინფორმაციო სისტემის შიდა და გარე მომხმარებლის როლების პერსპექტივით, სისტემისადმი მოთხოვნების ჩამოყალიბებისათვის. სისტემის დიზაინის შექმნის დროს დგინდება, სისტემის ფუნქციონალი და საინფორმაციო სისტემაში მიმდინარე პროცესებში მონაწილე სუბიექტების (Actors) მიზნები, ფუნქციები და როლები.

დიაგრამაზე ქვემოთ, Sales Manager, Seller, Shipping Company სისტემის მონაწილეებია –  Actors,  ხოლო Goods Order, Shipping, Sale Process Billing – კი მათი მიზნების მისაღწევად, სისტემასთან ურთიერთობის პროცედურები.   Use case diagrams აღწერს Actors და პროცედურებს შორის ურთიერთობის ვარიანტებს, რომლის საფუძველზეც დგინდება სისტემისადმი ოპტიმალური მოთხოვნები.

Business use case diagram.

Use Case Diagrams

Sequence Diagrams

Sequence diagram – სისტემის ობიექტებს შორის ურთიერთობის თანმიმდევრობის დიაგრამას. როგორც მისი სახელიდან ჩანს, იგი აღწერს, დროის მონაკვეთებში, სისტემის ობიექტებს შორის ურთიერთობის თანმიმდევრობას.

მათ ხშირად უწოდებენ ხდომილებების დიაგრამებს – event diagrams ან ხდომილებების სცენარებს –  event scenarios.

Sequence Diagramm

UML Class Diagrams

UML class diagram – ების დანიშნულებაა, სიტემის ობიექტების კომპონენტებს  შორის სტატიკური დამოკიდებულებების ასახვა. აღნიშნული დამოკიდებულებები გამოიყენება ობიექტურ ორიენტირებულ პროგრამირების ენებით (Object oriented languages – როგორებიცაა Java, C++ და ა.შ. ) საინფორმაციო სისტემის ობიექტების მოდელირებისთვის.

UML Class Diagram

UML Class Diagram

uml_diagram

UML Class Diagram

System Interfaces

System Interfaces – აღწერს, სისტემის ვიზუალურ კომპონენტებს და სისტემის  მოთხოვნების შესაბამისად, სიტემასთან მისი მომხმარებლის ურთიერთობის დიალოგურ ფანჯრებს.

იგი შეიცავს, როგორც სისტემის ვიზუალური კომპონენტების და დიზაინის დადგენის ასევე მისი მომხმარებლის სისტემასთან ურთიერთობის კომფორტული გარემოს შექმნის (User experience – UX) სამუშაოებს.

mockup

მომხმარებლის განაცხადის რეგისტრაციის პროტოტიპი

დამატებითი მასალა:

  • System Modeling #1, #2#3, #4,
  • UML – Tutorial #1, #2, #3, #4
  • Everything you need to build your great new product #1
  • Business Process Mapping #1
  • System Modeling Tools #1, #2, #3 , #4, #5, #6, #7
  • User Experience (UX) – #1, #2, #3
  • SWOT Analysis #1.

კითხვები:

  1. რატომ არის მნიშვნელოვანი პროგრამული სისტემის მოდელის პროტოტიპის განხილვა და შეთანხმება, მთლიანად საინფორმაციო სისტემის და არა მარტო პროგრამული უზრუნველყოფის შექმნაში ჩართულ მხარეებთა კომუნიკაცია ?
  2. აუცილებელია თუ არა, პროგრამული სისტემის მოდელის პროტოტიპის, საინფორმაციო სისტემის შექმნაში ჩართულ მხარეებთა კომუნიკაციის დროს გამოვლენილი საკითხების ყველა ჩართულ მხარეებთან შეთანხმება? რატომ ?
  3.  ჩამოთვალეთ თვენთვის ცნობილი, UML დიაგრამებით,  პროგრამული უზრუნველყოფის მოდელირებისთვის აღწერის პერსპექტივები;
  4.  ჩამოთვალეთ თვენთვის ცნობილი პროგრამული უზრუნველყოფის მოდელირებისთვის გამოიყენებადი UML დიაგრამების ტიპები;
  5. რას აღწერს სისტემის კონტექსტი საინფორმაციო სისტემის საოპერაციო მოდელში ?
Advertisements

7 thoughts on “SE#5.1 საინფორმაციო სიტემების მოდელირება (Software System Modeling)

  1. Pingback: BA #1.3 Use Case Modeling | The Innovation Times

  2. Pingback: SE#3.1 Agile Software Development | The Innovation Times

  3. Pingback: SE#6.1 Architectural design | The Digital Times

  4. Pingback: SE#8.1 Software Testing – სისტემის ტესტირება | The Digital Times

  5. Pingback: SE#13.1 Information Security and Cyber Security | IN@TIMES

  6. Pingback: SE#1.1 Introduction to Software Engineering | IN@TIMES

  7. Pingback: SE#2.1 საინფორმაციო სისტემების შექმნის პროცესი – Software Processes | IN@TIMES

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s