You are on page 1of 2

Lets start with very simple, fundamental partial illustrative problem to understand the Project Procedure (Semester I) Objectives:

To use mathematical modeling for To identify Actors To identify Input and Output and related validations To define success and failure and necessary exception handling To identify necessary data structures To derive functionality To reduce condition statements and loops by identifying behavioral properties like overloading, morphs etc., exploit opportunities of concurrent execution To identify functional and data dependency To draw state diagram and flow dependency graphs Software Engineering Document using above Project Design including GUI Project Design Description Format SL No 1 Description Sub Titles Observations

Illustration 1: Problem Statement: To draw following object

SL No 1

Description Problem Description Let S be a closed graph system that draws the object; such that S = {E,V,H | s} where E represents the set of edges; E ={e0,e1,e2,e3 | e} and V is a set of vertices; V = {v0,v1,v2,v3 | v} and H is set of distances of adjacent edges such that H = {h1,h2}

UML Design Observations S holds list of Actors of class Drawobject

Activity1 Let fe be a rule of E into V such that for given edge; it returns vertices. fe(E) | V. For example, fe(e0) | {v0,v1} V. Vein Diagram As described in activity 1 following vein diagram is drawn Data Structure: Circular Linked list

3.

4a.

The sequential algorithm will execute the function 4 times to get the required result. The function may contain DrawLine commands or relevant algorithms as per efficiency issues. Since function returns two of vertices for any given edge; let there be group of vertices referring to an edge. For example, fe(e0) | {v0,v1} V. This can be morphism of edges and edges can be independently drawn leading to concurrently. In sequential system per edge one loop will execute hence for 4 edges four loops and likewise; say, for 1000 edges of the object 1000 iterations leading to O(n) i.e. O94) or O(1000) But with morphs it is always O(1) hence efficient Now, if (h1 = h2) then its Square if (h1 != h2) then rectangle Draw State diagram of above Draw functional dependency diagram to identify concurrency Morphism with Concurrency leading to efficiency

4b.

Overloading on (h1, h2) This will reduce if-then-else conditions

6 7

You might also like