System Design and Arhitecture Document

Embed Size (px)

Citation preview

  • 8/3/2019 System Design and Arhitecture Document

    1/13

    System Design and Architecture Document

    For a ATCS

    Muntean Paul Ioan

    Group 30341

    Teacher Mihai Hulea.

  • 8/3/2019 System Design and Arhitecture Document

    2/13

    1.Introduction

    This paper represent the System Design and Arhitecture Document for the final

    examination at the DCS laboratory.

    This work is intended to capture a the System Design and also the Arhitecture of theproject that we had to do in Java.

    This work cant contain all details regarding all characteristics of the application when

    using UML.

    2.Brief introduction to UML

    The Unified Modeling Language (UML) is the industry-standard language for

    specifying, visualizing, constructing, and documenting the artifacts of software systems,

    as well as other nonsoftware systems. UML simplifies the complex process of software

    design, making a "blueprint" for construction, and is now the standard notation forsoftware architecture.

    Use Case diagram shows a set of use cases and actors (a special kind of class) and their

    relationships. Use case diagrams address the static use case view of a system, these

    diagrams areimportant in organizing and modeling the behaviors of a system.

    Class diagram shows a set of classes, interfaces, and collaborations and their relationships.

    Class diagrams are the most common diagrams used in modeling object-oriented systems.

    Class diagrams address the static design view of a system.

    Sequence diagram is an interaction diagram. Interaction diagrams address the dynamicview of a system, besides sequence diagram, the other interaction diagram in UML is the

    Collaborationdiagram.

    Sequence diagram emphasizes the time ordering of messages between objects in the

    system, while collaboration diagram emphasizes the structural organization of the objects

    that send and receive messages.

    State chart diagram shows a state machine, consisting of states, transitions, events and

    activities. State chart diagrams address the dynamic view of a system. State chart diagrams

    are especially important in modeling the behavior of an interface, class, or collaboration and

    emphasize the event-ordered behavior of an object, which is especially useful in modeling

    reactive systems.

    2. An Over view of an ATC

    ATC systems are highly complex pieces of machinery, they employ standard

    verification and modeling technique to coordinate, distribute and track aircraft as well

    as weather information. The currently used systems need to employ procedures for

    improved safety and efficiency which include flexibility, potential cost savings &

    reduction in staffing.

    This means that there is a lack of advanced technology and desire to support the

    controller. Thus there is a need to build ATC system based on a method which can

    handle increased air traffic capacity/congestion to provide a safety critical interactivesystem.

  • 8/3/2019 System Design and Arhitecture Document

    3/13

    The following are the major drawbacks of current ATC system:

    (i)Lack of well-defined human/software interface The idea of full automation or

    minimum human intervention of the ATC system still remains unfulfilled.

    The existing systems do require human interaction as the system only guides

    but actual decision is taken by the controllers incharge (ground, local).

    (ii)Need for high maintenance Maintenance of the system is also an issue whichcan cause problem as discussed by Matthew L. Wald about an incidence in

    which voice communication between the pilot & controllers broke down &

    the reason behind this was found to be a lack of maintenance.

    (iii)Outdated design/technology Obsolete software design and programming

    language are major barriers to upgrades and efficient software maintenance of

    the currently used ATC systems because of which improved capacity and

    efficiency cant be achieved with the current system. The current computer

    software limits the number of aircraft that can be tracked at any given time,

    and the dated architecture makes enhancements, troubleshooting and

    maintenance more difficult. Computer outages, planned or unplanned, are

    covered by a backup system that cannot handle the same level of air traffic asthe main system. The result is significantly limited capacity during backup

    mode.

    (iv)Mixed communication The communication between the controllers & pilot

    currently is acombination of voice & datalink. The results of test conducted

    show that the mixed communication leads to slow speed which can be

    overcom

    3. A snapshot of the ATCS.

    The ATCS is design so that it can run on different computers at the same time.

    Each module will communicate and share information between them.

    The application contains a ATCServer and an ATCclient wich plays the role of an

    airport and AvionClient wich is playing the role of Airplane.

    4. Use Case Diagram

    A use case diagram models the dynamic design view of systems. Use case diagrams are

    central to modeling the behavior of a system, a subsystem, or a class. Use case diagram

    shows a set of use cases and actors and their relationships. The main contents of a use

    case diagram are:

    Use Cases

    Actors

    Dependency, generalization, and association relationships

  • 8/3/2019 System Design and Arhitecture Document

    4/13

    Fig 1. Represent the Use Case Diagram of the System.

    There are nine use cases in this diagram :

    ATC Client Send Messages Process has the role of sending messages asits name says.

    Avion Client Connect Process represent the process of connection a newAirplane to the Server.

    ATC server start represent the starting of the communication serverbetween all ATC.

    ATC server run is dealing with the operations that the server isperforming

    ATC client run process represent all operations wich are done by theATC clien.

    Citire Fereastra is an process associated to ATC client and ATC avionwich reads the status of the message box .

    Avion Runing process is represented by all the operations performed bythe AirPlane to simulate his behaiviour.

    ATC Server run ,here all the operations that the Server has to performare done.

    Avion Client send Message it represent all the messages wich are sendby the airplane to the server.

    5. Class Diagram

    Class diagram, one of the most commonly used diagrams in object-oriented system,

    models the static design view for a system. The static view mainly supports the

    functional requirements of a system the services the system should provide to the end

    users. We will see from our practicalexperience that lots of fun comes out when

    modeling out system with class diagrams.

    Thediscussion on different views of class diagrams for the system will be put intoemphasis later in

  • 8/3/2019 System Design and Arhitecture Document

    5/13

    this paper.

    A class diagram shows a set of classes, interfaces, and collaborations and their

    relationships.

    Class diagrams involve global system description, such as the system architecture, and

    detail aspects such as the attributes and operations within a class as well. The most

    common contents of a class diagram are:

    Classes Interfaces Collaborations Dependency, generalization, and association relationships Notes and constraints

    Fig 2 .Represent the class diagram of the ATCS.

    The names of all classes are presented here with they methods and variables.

    5. Modeling the dynamic aspects of the system

    To model the dynamic aspects of a system, UML provides Sequence diagrams and

    Collaborationdiagrams. In the context of this paper, only the Sequence diagrams for the

    elevator system aregiven, the collaboration diagrams can be derived from the sequence

    diagrams without too mucheffort.

    State chart diagrams for the elevator system are also given in this section, based on the class

    project design of this semester. From our design

  • 8/3/2019 System Design and Arhitecture Document

    6/13

    6. Sequence Diagram

    Sequence diagram is one kind of interaction diagrams, which shows an interaction among a

    set of objects and their relationships (another kind of interaction diagram is collaboration

    diagram). The purpose of the Sequence diagram is to document the sequence of messages

    among objects in a time based view. The scope of a typical sequence diagram includes allthe message interactions for (part-of) a single use case. There may be multiple sequence

    diagrams per use case, one per use case scenario.

    The state diagrams commonly contain:

    Objects

    Links

    Messages

    Respond Time (especially useful in real-time systems

    Fig 3 .SequenceDiagram ATC client Run process.

  • 8/3/2019 System Design and Arhitecture Document

    7/13

    Fig 4 .SequenceDiagram ATC Client Connect.

    Fig 5 .Sequence Diagram ATC client send messages process.

  • 8/3/2019 System Design and Arhitecture Document

    8/13

    Fig 6. Left up SequenceDiagram ATC Server Run Process

    Fig 7 Left down SequenceDiagram Avion client send messages process

    Fig 8 Right upSequenceDiagram ATCServer StartFig 9 Right down SequenceDiagram Avion Runing proces

  • 8/3/2019 System Design and Arhitecture Document

    9/13

    Fig 10. AvionClient Connect Fig 11.SequenceDiagram CitireFereastraText7. State chart Diagram

    A State chart diagram shows a state machine. Usually the state machine in a state chart

    models the behavior of a reactive object, whose behavior is best characterized by itsresponse to events dispatched from outside its context. The object has a clear lifetime whose

    current behavior is affected by its past. State chart diagrams are important for constructing

    executable systems

    through forward and reverse engineering.

    It is admitted that there exists a gap in the process of designing a system from requirements

    to state charts, not enough direction methods can be followed when drawing the state chart

    diagram from the requirements. In this section, some practical methods used during our

    designing the state charts for the elevator system are introduced. These methods may not be

    as serious as rules or instructions of how to draw state chart diagrams from the requirement

    document, but they are helpful in practice.

  • 8/3/2019 System Design and Arhitecture Document

    10/13

    Fig 12.Server state Diagram

    Fig 13.ATC Client State Diagram

    Fig 14.ATC Avion State Diagram

  • 8/3/2019 System Design and Arhitecture Document

    11/13

    8.Colaboration Diagrams

    Fig 15.Server Run Colaboration Diagram

    Fig 16.Citire Fereastra test Collaboration Diagram

  • 8/3/2019 System Design and Arhitecture Document

    12/13

    7.Activity Diagrams

    Fig 17.ATC Client activity diagram

    Fig 18Avion Client Activity Diagram

  • 8/3/2019 System Design and Arhitecture Document

    13/13

    Fig 19.ATC Server Activity Diagram.

    9.Conclusion.

    This Project was a helpful work for learning in more details the work with sockets and

    the of understanding how OOP really works.

    This 6 types of Diagrams were very helpful in describing all the characteristics of the

    application and each of them has his strengths and weakneses .

    The application wich I created was Intended to mirror as good as it can the real

    functioning of an ATCS so ive tried from the beginning to fulfill the condicions thatare presented in the project proposal.

    If it was possible Ive added extra functionality.

    I faced a lot of difficulties because this was a very different kind of project of all that

    ive done until now.

    In the end I can say that this application is a ideal example of an distributed application .