Haytham Daoula
2 years ago
1 changed files with 143 additions and 0 deletions
-
143Lerntagebuch.md
@ -0,0 +1,143 @@ |
|||||
|
# Woche 2 |
||||
|
|
||||
|
|
||||
|
## 1. Was sind die wesentliche Inhalte von Woche 2 ? |
||||
|
- Die wichtigste Programmierparadigmen, die man hilft zu wissen welche programmierstil wird von jede Programmiersprache unterstützt. |
||||
|
- Programmiersprache und ihre Kriterien. |
||||
|
- Die Prinzipien der Programmierung. |
||||
|
|
||||
|
## 2. Was kann man für das Teamprojekt anwenden ? |
||||
|
- Man lernt um welche Programmierparadiga es geht beim einsatz einer Programmiersprache. |
||||
|
- Man wird genau wissen welche Programmiersprache verwendet wird. |
||||
|
|
||||
|
## 3. Begriff/Thema erklären : |
||||
|
- Imperative Programmierung : ein Programmierparadigma, nach dem ein Programm aus einer Folge von Anweisungen besteht, die vorgeben, in welcher Reihenfolge was vom Computer getan |
||||
|
werden soll. |
||||
|
- Programmierparadigma : ein Programmierstil in der ein Programm entworfen wird. |
||||
|
|
||||
|
# Woche 3 |
||||
|
|
||||
|
|
||||
|
## 1. Was sind die wesentliche Inhalte von Woche 3 ? |
||||
|
- Was man unter einen Entwurfsmuster versteht,was sind die Vorteile bzw. Nachteile davon. |
||||
|
- Die Anwendung des Entwurfsmusters(Makro-Design, Mikro-Design). |
||||
|
- Die Verschiedene Typen von Entwurfsmustern. |
||||
|
- IDE's (Integrated Developement Environments),Debugging. |
||||
|
|
||||
|
## 2. Was kann man für das Teamprojekt anwenden ? |
||||
|
- Man kann in dem Teamprojekt die Entwicklungsprozess zu beschleunigen, damit man in einem bestimmten Zeit Probleme bei der Entwicklung eines Programms/Software schneller löst. |
||||
|
- Man lernt wie Debugging durchgeführt wird, was man hilft Bugs und Probleme beim Code schneller zu finden und korrigieren. |
||||
|
|
||||
|
## 3. Begriff/Thema erklären : |
||||
|
- Entwurfsmuster : bewährte Lösungsschablonen für wiederkehrende Entwurfsprobleme sowohl in der Architektur als auch in der Softwarearchitektur und -entwicklung. |
||||
|
|
||||
|
|
||||
|
# Woche 4 |
||||
|
|
||||
|
|
||||
|
## 1. Was sind die wesentliche Inhalte von Woche ? |
||||
|
- Warum muss man Git überhaupt benutzen ? : Zugriff über verschiedene (oder letzte) Entwicklungszustand und das Vergleich von Änderungen im Laufe der Zeit. |
||||
|
- Safety Creates Confidence (Source Code management : vereinfacht die Navigation und optimiert die Festplatt). |
||||
|
- Centralized SCM (die Entwickler verfügen über nur eine Kopie der History) vs distributed (jedes Developerer hat seine Eigene Version der Kopie ). |
||||
|
- Git commits sollen klein und "clean" gehalten für bessere "Conflit Resolve". |
||||
|
- Branching Modelle (master,develop,release,hotfix,feature). |
||||
|
- Git Merge und Git Rebase. |
||||
|
|
||||
|
## 2. Was kann man für das Teamprojekt anwenden ? |
||||
|
- Man lernt dass eine Teamprojekt besser geführt ist, durch die Nutzung von Git. |
||||
|
- Mit Branches kann man mit andere Project mitglieder parallel arbeiten ohne sie zu beeinträchtigen. |
||||
|
|
||||
|
## 3. Begriff/Thema erklären : |
||||
|
- Branch : unter Branch versteht man eine unabhängige Entwicklungslinie, die das Projekthistorie, die Commits, Stages und Änderungen erfasst. |
||||
|
- Merge : das `git merge` Befehl dient dazu, einen oder viele Branches miteinander zusammenfügen. |
||||
|
|
||||
|
# Woche 5 |
||||
|
|
||||
|
|
||||
|
## 1. Was sind die wesentliche Inhalte von Woche ? |
||||
|
- CI(Continious Integration) Systeme haben viele Vorteile dazu gehören die automatisierte Prozesse die den Aufwand verringern und die formale Prozesse die das Konfliktpotenzial verringern. |
||||
|
- Die Softwareentwicklungsprozesse hat 6 Bestandteile, nämlich die Abhängigkeitenverwaltung,die Integration und das build-Prozess usw.. |
||||
|
- Bei der Abhängigkeitsverwaltung soll es nicht selbst im Build-Lauf erzeugt und nicht im SCM eingecheckt, der Zugriff auf einzelne Versionen des Codes sollte auch möglich sein. |
||||
|
- der Source Code Management System ermöglicht am wichtigsten paralelle Entwicklung verschiedener Features, Zugriff auf Releases und Wechsel zwischen Branches. |
||||
|
- Durch das build Prozess darf man übersetzen, Abhängigkeiten organisieren, automatisierte Test ausführen und Liefer-Artefakte erzeugen. |
||||
|
- Automatisierte Tests führen das Programm aus, sind wiederholbar, bieten Dokumentation gewünschtes Verhalten, und erkennen Laufzeitfehler. |
||||
|
|
||||
|
## 2. Was kann man für das Teamprojekt anwenden ? |
||||
|
- Man kann Automatisierte Tests in dem Code verwenden um Fehler schnell zu erkennen und zu beheben. |
||||
|
- Gemeinsame remote Repositories bieten eine gute Teamleistung bei dem Software-Entwicklung. |
||||
|
|
||||
|
## 3. Begriff/Thema erklären : |
||||
|
- SCM(Source Code Management) : ist der Prozess der Verfolgung von Änderungen und der Verwaltung von Änderungen am Quellcode. |
||||
|
- CI(Continious Integration) : ist das Vorgang der automatisierten Integration von Code-Änderungen von mehreren Beteiligten in ein einziges Software-Projekt. |
||||
|
|
||||
|
# Woche 6 |
||||
|
|
||||
|
|
||||
|
## 1. Was sind die wesentliche Inhalte von Woche ? |
||||
|
- Das Prozess zur Formulierung und zum Erreichen von Zielen besteht wesentlich aus Plannung, Organisation, Durchführung und Kontrolle. |
||||
|
- Worum geht es am ersten Linie bei einem Projektmanagement ? |
||||
|
- Die wichtigste Sache in bei einem Projektmanagement ist das Zusammenarbeit der Teammitglieder, deswegen muss man die Befindlichkeiten der Teammitglieder beachten, die Umgangsformen wahren und am wichtigsten persönliche Konflikte frühzeitig ansprechen. |
||||
|
- die Rollen in Prjektmanagement sind: Product Owner, Scrum master, Projektmitarbeiter und Stakeholder. |
||||
|
- Das Projektmanagement kann in verschiedene Modelle realisiert: Wasserfallmodell(Prozessschritte laufen ein mal durch), V-Modell(Entwicklungschritten werden Testebenen gegenüber gestellt) und Agile Modelle in denen Interaktionen, Funktionierende Software, Zusammenarbeit mit dem Kunden und das Reagieren auf Veränderungen wichtiger als Umgang,Prozesse, Werkzeuge, Dokumentation, Vertragshandlung und das Festhalten an einem Plan. |
||||
|
- Die wichtigste Techniken die man nutzt für einem erfolgreichen Projektmanagement sind Kanban(Das Prozess besteht wesentlich aus das Definieren von Teilaufgaben, Backlog und Workflow-Darstellung), der Burn-Down-Chart und Scrum. |
||||
|
- Bei der Aufwandsschätzung beachtet man die folgende Schätzverfahren: die Anforderungen(ob das Software früh anwendbar ist, wie es auf Anforderungsänderungen reagiert,Nachvollziehbarkeit ,und die Kosten sollen gering bleiben) und die Prinzipien (Schätzung nach Story points, automatisiertes Testen und Refactoring sollen immer eingerechnet,schwierige Aufgaben in Teilaufgaben Zerlegen, Ideen vermeiden wo die Informationen nicht genug verfügbar sind). |
||||
|
- Man muss das Prjekt dokumentieren durch Lastenheft z.B. Systembeschreibung wie Arc42, User Stories oder Ticketsysteme. |
||||
|
|
||||
|
## 2. Was kann man für das Teamprojekt anwenden ? |
||||
|
- Man lernt was man am meistens beachten bei einem Teamprojekt und Zwar Zusammenarbeit, Organisation,und Aufwandschätzung. |
||||
|
- Die Projektmanagement Modelle zeigen was am wichtigsten in einem Softwareentwicklung ist, das hilft man dabei in dem Teamprojekt Prioritäten zu setzen. |
||||
|
|
||||
|
## 3. Begriff/Thema erklären : |
||||
|
- Scrum : ist ein Framework für das Projektmanagement, das den Schwerpunkt auf Teamarbeit, Verantwortlichkeit und iterativen Fortschritt auf dem Weg zu einem klar definierten Ziel legt. |
||||
|
|
||||
|
# Woche 7 |
||||
|
|
||||
|
|
||||
|
## 1. Was sind die wesentliche Inhalte von Woche ? |
||||
|
- Ereigniskette : wie Eine problem sich bei einem Programm manifestiert (Algorithmus falschgesetzt). |
||||
|
- Error : Fehler beim Schreiben des Codes -> defect : fehlerStelle im code -> Failure : das nicht den Anforderung entsprechendes Verhalten. |
||||
|
### Fehlerauftreten : |
||||
|
- Akuter : direkter Verstoß gegen die Anforderungen |
||||
|
- Latenter : |
||||
|
- Fehler tritt auf wenn Daten nicht anpassend sind |
||||
|
- Besteht alle arten von Tests |
||||
|
- Üblicher Weise durch Anwender aufgedeckt |
||||
|
|
||||
|
### Maskierte Fehler : |
||||
|
- Wird von anderem Fehler verdeckt |
||||
|
|
||||
|
### Arten von Defekten : |
||||
|
- Syntaktisch : Verstöße gegen die Satzbauregeln des Programmiersprache zum Beispiel. |
||||
|
- Semantisch : liegt vor, wenn die Programmierte Anweisung inhaltlich fehlerhaft ist. |
||||
|
- Logisch : liegt vor wenn der Lösungsansatz fehlerhaft ist. |
||||
|
- Design : strukturelle Fehler. |
||||
|
|
||||
|
### Arten von Tests : |
||||
|
- Manuelle Tests werden von einem Menschen durchgeführt. |
||||
|
- Automatisierte Tests wurden von dem Computer durchgeführt. |
||||
|
- Statische Codeanalyse ist die Analyse eines Codesatzes anhand eines Satzes (oder mehrerer Sätze) von Codierungsregeln. |
||||
|
- Dynamische Tests sind vorgänge die man verwendet zum Testen des dynamischen Verhaltens vn Softwarecode. |
||||
|
- Ein Test besteht wesentlich aus Stichprobe(Testfälle und Tetdaten),Testobjekt(das Bauteil eines Programms, das getestet sein muss),Teistumgebung, Testziel. |
||||
|
|
||||
|
### Testziele : |
||||
|
- Fehler aufzeigen um die zu korrigieren, Qualität zu erfassen, Vertrauen zu erhöhen und Grenzen zu ermitteln. |
||||
|
- Testen wurden nach Ziel, Methode, Testgegenstand, Level, Personen oder Testabdeckung(Koplettest,partieller Test) benannt. |
||||
|
|
||||
|
### Testprozesse : |
||||
|
- Plannung : in diese Phase werden die Testziel, Ressourcen und Teststrategien gesetzt. |
||||
|
|
||||
|
### Analyse und Design : |
||||
|
- Ist basiert auf Anforderungsdokumentation. |
||||
|
- Die Testspezifikation wird bestimmt durch Testfälle( Kritikalität die die Testmethode des Testobjektes bestimmt, Testdaten und Testumgebung), ausführungsreihenfolge, Infrastruktur und Testkriterium. |
||||
|
- Ein Testlog zeigt die aufgetretene Fehlerverhalten und die Fehlerkategorie davon(high/medium/low). |
||||
|
|
||||
|
### Psychologische Aspekte : |
||||
|
- Menschen Machen Fehler und diese füheren zu unerwünschte Verhalten von Softwares, und das ist sowohl materiell als auch ideel teuer. |
||||
|
|
||||
|
## 2. Was kann man für das Teamprojekt anwenden ? |
||||
|
- Man Lernt wie wichtig Tests bei einem Sofwareprojekt sind, deshalb mussten sie unbedingt in der Teamprojet verwendet worden. |
||||
|
- Man Lernt verschieden Arten von Test, wass man hilft genau die anpassende Test für das Code zu erstellen. |
||||
|
|
||||
|
## 3. Begriff/Thema erklären : |
||||
|
- Testumgebung : ist ein definiertes set von umgebungsbedingungen die zum Test verwendet werden. |
||||
|
- Test ist eine Methodische Versuch, in dem ein plan gemacht worden und diese Plan sollte gefolgt. |
Write
Preview
Loading…
Cancel
Save
Reference in new issue