Doing Business Domain Analysis with UML and objects in TypeScript
Note: This is the start of your CSD3103 Project.
The Six Step Path:
Step 0: Create a Word Document. This is what you will upload to Moodle: Name as StudentName_StudentID.docx.
Step 1: Make LucidChart.com account
Step 2: Make a Blank Diagram
Step 3: Business Object Identification
Step 4: Use Case Discovery
Step 5: Appy the Knowledge Principle: park the data fields and methods in the most optimal Business Objects: this covers off on the requirement for shared field composition (UML Class Interaction Diagram) and planning your Method Choreography which is your Object Interaction diagram)
Step 6: Forward generating the SUD into TypeScript
For your project, you will make an SOA Distributed Enterprise Application.
To do this, you will use the Software Engineering Methodology and Tooling of Unified Process.
The 3 reasons we write software:
Write software to deliver the business domain. What is this Business Domain ?
Playing Games or Simulations.
Scientific Calculations, numeric analysis.
Key Concepts:
The Business Domain is a Description of all the Key work steps and procedures - Business Processess - that run the Business.
??? What is the Format of this Description: UNIFIED MODELLING LANGUAGE.
Your Job as a Software Developer is to create an Object Oriented System which Paints a Picture, or — Renders in Software — How the business domain the works.
The way you do this is to do an OOAD Object-Oriented Analsys and Design on your Business Domain.
The Methodology that is used to describe this is: UNIFIED PROCESS.
Your Project Deliverable is going to be a software application written in TYPESCRIPT with MONGO DB Altas as the backend datastore which delivers the business domain.
You will submit your project by doing npm -publish. Your data will be in a MONGO DB Atlas (CLOUD) Data store.
We will be learning a software engineering methodology called UNIFIED Process to answer these questions:
Unified Process is a Process LIbrary of workflows and reusable component that wraps around AGILE:
Agile does the Software engineering part.
Other stuff you need to do:
Formulate requirements.
Describe the requirements in UML.
<Agile helps you with this part>: Forward generate the UML into Classes.
Development methodology will be AGILE - centered around GIT ISSUES and Actions and the Traceability Matrix.
Traceability matrix to wrap it all together.
UML in particular:
Class Interaction Diagram (association: shared field composition <has a>, and Inheritance <is a> )
Object Interaction Diagram (method choreography)
How do you know how to do your OBJECT Oriented Analysis and Design:
What objects you need? Business Processes become objects.
What data attributes and methods each object should have? Applying Lexical Analysis, nouns and verbs)
How those objects should be connected together?
2 ways to connect objects together - to set up the data plumbing?
Has A : Composition
Is A : Inheritance
Want to print your doc? This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (