Unelte și tehnici de modelare a aplicațiilor
A se vedea și pagina următoare (Inginerie software)
Introducere
Discuții generale despre cerințe se găsesc aici:
Exemple specifice de cerințe se găsesc aici:
O listă foarte consistentă de cerințe se poate găsi aici până la pag. 26, inclusiv: http://www.cse.chalmers.se/~feldt/courses/reqeng/examples/srs_example_2010_group2.pdf
Exemple de proiecte cu proiectarea cerințelor:
Pentru modelarea viitoarei aplicații din proiectul de licență / disertație sunt cel puțin indicate diagramele de: cazuri de utilizare, activitate, secvență, stare și diagrama entitate-relație a bazei de date. Alte tipuri de diagrame constituie un plus. Este obligatoriu să comentați diagramele (măcar un scurt paragraf care să explice ce e cu diagrama respectivă, ce reprezintă, ce este în ea, la ce folosește). Exemple de modele exprimate sub formă de diagrame UML se găsesc mai jos, în secțiunea "Exemple de diagrame" (știu, șoc) dar și aici: http://creately.com/blog/diagrams/uml-diagram-types-examples/ și aici https://www.smartdraw.com/uml-diagram/examples/
Tutorial și exemple de diagrame de cazuri de utilizare aici: https://www.lucidchart.com/pages/uml/use-case-diagram
Tutorial și exemple de diagrame de activitate aici: https://www.lucidchart.com/pages/uml-activity-diagram
Tutorial și exemple de diagrame de secvență aici: https://www.lucidchart.com/pages/uml/sequence-diagram
Tutorial și exemple de diagrame de stare aici: https://www.lucidchart.com/pages/uml/state-machine-diagram
Diagramele entitate-relație ar fi trebuit să le știți de la baze de date. Tutorial de așa ceva găsiți aici: https://www.lucidchart.com/pages/er-diagrams iar exemple de așa ceva găsiți aici https://www.smartdraw.com/entity-relationship-diagram/examples/
Exemple de proiecte gata făcute de alții sunt aici (la oricare temă intrați pe project website si pe urmă vă uitați pe la project reports): http://www.ece.rutgers.edu/~marsic/books/SE/projects/.
UML
40 de unelte software UML — 40 de unelte software UML
https://www.youtube.com/watch?v=WnMQ8HlmeXc - UML Diagrams Full Course (Unified Modeling Language)
Manual de UML 2.0 — Manual de UML 2.0
Tutorial de UML — Tutorial de UML produs de edX.org
UML 2.0 - tutorial video
https://www.youtube.com/watch?v=WnMQ8HlmeXc - UML Diagrams Full Course (Unified Modeling Language)
Tutorial video UML, partea 1 din 9 — Tutorial video UML, partea 1 din 9. Introducere.
Tutorial video UML, partea 2 din 9 — Tutorial video UML, partea 2 din 9. Diagrame de activitate.
Tutorial video UML, partea 3 din 9 — Tutorial video UML, partea 3 din 9. Diagrame de clase.
Tutorial video UML, partea 4 din 9 — Tutorial video UML, partea 4 din 9. Diagrame de secvenţă.
Tutorial video UML, partea 5 din 9 — Tutorial video UML, partea 5 din 9. Diagrame de comunicare.
Tutorial video UML, partea 6 din 9 — Tutorial video UML, partea 6 din 9. Diagrame de temporizare.
Tutorial video UML, partea 7 din 9 — Tutorial video UML, partea 7 din 9. Diagrame de componente.
Tutorial video UML, partea 8 din 9 — Tutorial video UML, partea 8 din 9. Diagrame de stare.
Tutorial video UML, partea 9 din 9 — Tutorial video UML, partea 9 din 9. Diagrame de instalare / implementare.
https://www.youtube.com/watch?v=A3yhinPzvpU - Using ChatGPT to build System Diagrams
Alte tehnologii de modelare
https://www.omg.org/bpmn/ - BPMN
https://www.omg.org/dmn/ - DMN
https://www.omg.org/cmmn/ - CMMN
https://www.omg.org/mda/ - MDA
https://sysml.org/ - SysML
https://www.ibm.com/topics/business-process-management - BPM
https://en.wikipedia.org/wiki/Business_process_management - BPM
https://en.wikipedia.org/wiki/Business_Process_Definition_Metamodel
https://www.ibm.com/docs/en/baw/22.x?topic=types-bpel-process
https://www.geeksforgeeks.org/software-engineering-capability-maturity-model-cmm/
Modelul C4 pentru vizualizarea arhitecturilor software
Alte tutoriale video
https://www.youtube.com/watch?v=PZVCSQ1yjq4 - System Design has never been easier
Exemple de diagrame
Exemple de diagrame UML — Exemple de diagrame UML
Exemple de diagrame UML 2 — Exemple de diagrame UML 2
Exemple de diagrame UML 3 — Exemple de diagrame UML 3
Exemple de diagrame UML 4 — Exemple de diagrame UML 4
Exemple de diagrame UML 5 — Exemple de diagrame UML 5. Numai diagrame de secvență
Unelte online de construirea diagramelor
https://mermaid.live/ (https://mermaid.js.org/ și https://github.com/mermaid-js/mermaid)
Draw.io Diagrams — Draw.io Diagrams. Se instaleaza in Chrome.
Lucidchart — Lucidchart. Software comercial. se pot face diagrame de complexitate mai redusa gratuit.
SmartDraw online — SmartDraw online. Trebuie facut un cont. Diagramele UML sunt undeva ascunse in meniu. Mai repede le cautati in search.
yUML — yUML. Unealtă online de modelare. Permite crearea de diagrame din tag-uri HTML. Are o forma "serioasă" şi una mai puţin ... :)
Unelte offline de construirea diagramelor
Dia Diagram Editor — Dia Diagram Editor. Detalii pe http://dia-installer.de/
Diagram Designer — Diagram Designer. Detalii pe http://meesoft.logicnet.dk/DiagramDesigner/
Draw.io Desktop — Draw.io Desktop. Se instaleaza in Chrome. Poate fi folosit fara legatura la Internet.
Modelio — Modelio. Detalii pe https://www.modelio.org/
NClass — NClass. Detalii pe http://nclass.sourceforge.net/
Software Ideas Modeler — Software Ideas Modeler. Detalii pe https://www.softwareideas.net/
Umbrello UML Modeller — Umbrello UML Modeller. Detalii pe https://umbrello.kde.org/
UML Designer — UML Designer. Detalii pe http://www.umldesigner.org/
UMLet — UMLet. Detalii pe http://www.umlet.com/. Tutorialul video in 9 părţi de mai sus e făcut pe UMLet.
WhiteStar UML — WhiteStar UML. Detalii pe http://whitestaruml.sourceforge.net/
Yakindu Statechart Tools — Yakindu Statechart Tools. Detalii pe http://www.statecharts.org/
yEd Graph Editor (mai jos pe pagină) — yEd Graph Editor (mai jos pe pagină). Detalii pe http://www.yworks.com/products/yed
Diagrams as Code
https://daily.dev/blog/diagrams-as-code-intro-for-developers
https://diagrams.mingrammer.com/ sau https://pypi.org/project/diagrams/ - package-ul diagrams din Python
https://mermaid.js.org/ - Mermaid ->
https://plantuml.com/ - PlantUML
https://d2lang.com/ - D2
https://structurizr.com/ - Structurizr
https://www.drawio.com/ - draw.io
https://www.ilograph.com/ - Ilograph
https://gojs.net/ - GoJS
https://asciiflow.com/ - ASCIIFlow
https://markmap.js.org/ - markmap
Code to Diagrams
https://pylint.readthedocs.io/en/stable/pyreverse.html - Pyreverse
https://theresanaiforthat.com/gpt/code-to-diagram/ - Code to Diagram (AI)
https://www.yeschat.ai/gpts-2OToA5hmRm-Code-to-Diagram - Code to Diagram-Code Visualization Tool (AI)
https://chat.openai.com/g/g-5XTKoLLVd-python-code-to-diagram-assistant - Python Code to Diagram Assistant (AI)
https://marketplace.visualstudio.com/items?itemName=appland.appmap - AppMap
https://www.gituml.com/ - GitUML
https://miro.com/diagramming/plantuml-online/ - Miro PlantUML
https://github.com/demike/TsUML2 - TsUML 2
https://github.com/staruml/staruml-cpp - C++ Extension for StarUML
Diagrams to Code
https://theresanaiforthat.com/gpt/diagram-to-code/ - Diagram to Code (AI)
https://chat.openai.com/g/g-eoYgQXEar-diagram-to-code - Diagram to Code (AI)
https://www.yeschat.ai/gpts-9t557IAr0cA-Code-Architect - Code Architect-Diagram to PlantUML Converter (AI)
https://www.softwareideas.net/code-generation-diagram-to-code - Software Ideas Modeler, Code Generation - Turn Your Diagram to Code
https://github.com/staruml/staruml-cpp - C++ Extension for StarUML
https://umltodart.web.app/#/ - UML to Dart
Unelte comerciale de modelare
https://sparxsystems.com/ - Enterprise Architect
https://www.uml-lab.com/ - UML Lab
Altova Umodel — Altova Umodel. Versiune de evaluare (30 de zile)
Creately — Creately. Free try
Edraw Max. Versiune de evaluare (30 de zile) — Edraw Max. Versiune de evaluare (30 de zile)
GenMyModel — GenMyModel. Se poate face cont free dar e foarte limitat. Interesant mai mult pentru ca are foarte multe exemple gata făcute.
SmartDraw. Versiune de evaluare (30 de zile) — SmartDraw. Versiune de evaluare (30 de zile)
Sparx Systems Enetrprise Architect — Sparx Systems Enetrprise Architect. Versiune de evaluare (30 de zile)
Visual Paradigm — Visual Paradigm
Unelte de modelare integrate in medii de dezvoltare (IDE-uri)
https://www.jetbrains.com/help/idea/class-diagram.html - JetBrains UltimateUML class diagrams
Eclipse UML 2 Tools — Eclipse UML 2 Tools. Detalii pe http://wiki.eclipse.org/MDT-UML2Tools
Oracle Jdeveloper — Oracle Jdeveloper. Unealta complexă de dezvoltare de aplicații Java.
Resurse bibliografice - Unelte de modelare integrate in medii de dezvoltare
https://learn.microsoft.com/en-us/visualstudio/ide/class-designer/designing-and-viewing-classes-and-types?view=vs-2022#add-a-blank-class-diagram-to-a-project - Add a blank class diagram to a project in VS 2022
Cum se fac diagrame UML in Visual Studio 2010/2013/2015 — Cum se fac diagrame UML in Visual Studio 2010/2013/2015
Cum se fac diagrame UML in Visual Studio 2015 — Cum se fac diagrame UML in Visual Studio 2015
Tutorial video creare diagrame UML in Visual Studio 2012 — Tutorial video creare diagrame UML in Visual Studio 2012
Unelte de modelare in visual Studio 2012. Tutorial. partea 1 din 2 — Unelte de modelare in visual Studio 2012. Tutorial. partea 1 din 2
Unelte de modelare in visual Studio 2012. Tutorial. partea 2 din 2 — Unelte de modelare in visual Studio 2012. Tutorial. partea 2 din 2
Unelte de modelare integrate in SGBD-uri
DB-Main — DB-Main. Unealta de modelare pentru baze de date. Detalii pe http://www.db-main.com/
MySQL Workbench — MySQL Workbench. Unealtă de proiectare și administrare baze de date MySQL
Oracle SQL Developer — Oracle SQL Developer. Unealtă de proiectare și administrare baze de date Oracle.