07-08-2014, 11:29 AM
Faculty of Computer Studies
[attachment=66693]
Abstract
Starting from a hand powered elevator till reaching to what we are
dealing with today of systematically complex one’s, clarify to us that
technological development don’t stop, and whenever time is passing,
new developments will be available to us helping to solve every
problem we face.
Simulation is a way of developing application or design simulating real
world, the way which help in clarifying the real idea. The reasons upon
using simulations may be for literature, cost, time, or safety reasons.
The elevator challenge was born out of a long time curiosity in the
control of elevators. Elevator simulation is becoming increasingly more
flexible and powerful. Elevator simulation models of varying
sophistication have been written and applied for many years. The
continuing improvements in computer technology and software
development tools make increasing complex and comprehensive
simulation models feasible.
Introduction
In 1793 Ivan Kulibin created an elevator with the screw lifting mechanism for the Winter
Palace of Saint Petersburg. In 1816 an elevator was established in the main building of sub
Moscow village called Arkhangelskoye. In 1823, an "ascending room" made its debut in
London.
[2]
In the middle 1800's, there were many types of crude elevators that carried freight. Most of
them ran hydraulically. The first hydraulic elevators used a plunger below the car to raise or
lower the elevator. A pump applied water pressure to a plunger, or steel column, inside a
vertical cylinder. Increasing the pressure allowed the elevator to descend. The elevator also
used a system of counter-balancing so that the plunger did not have to lift the entire weight of
the elevator and its load. The plunger, however, was not practical for tall buildings, because it
required a pit as deep below the building as the building was tall. Later a rope-geared elevator
with multiple pulleys was developed
General approach
The company problem appears when it is intended to equip its building with an elevator and
want to know according to its needs the way to settle the elevator to best satisfy this needs.
Where this company my need from 1 to 6 elevators and the building will be of 10 floors (not
including ground floor). The way where an Object-Oriented Software Simulator is to be
installed, concerning the logic required to move the elevator between floors, giving the
company a clear idea and leading it to choose the best design which satisfy this needs.
An elevator (or lift) is a vertical transport vehicle that efficiently moves people or goods
between floors of a building. They are generally powered by electric motors that either drive
traction cables and counterweight systems, or pump hydraulic fluid to raise a cylindrical piston.
UML: A brief introduction
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
non-software systems. UML simplifies the complex process of software design, making a
"blueprint" for construction, and is now the standard notation for software architecture.
UML provides both the structural views and behavioral views of the system. A set of diagrams
with different graphical elements is the core part as well as the most expressive presentation in
UML. The UML includes nine kinds of diagrams, for the sake of grasp the most representative
aspects of the design of elevator system, in this paper only following UML diagrams are used
and analyzed:
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
are important 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 dynamic view
of a system, besides sequence diagram, the other interaction diagram in UML is the
Collaboration diagram. 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. Sequence diagrams and
collaboration diagrams are isomorphic, and can be transformed from one into the other. Since
either of them contributes to the same extend of understanding of our system, while sequence
diagrams give more ideas of time, which is essential for real time systems, only the sequence
diagrams are given in this report.
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 diagram
UML Overview
In real time systems, performance requirements are as important as functional requirements, so
not only do we have to perform the correct functions, but there are clear bounds within which
these must be completed. An embedded computer system is a system that uses a computer as a
component, but whose prime function is not that of a computer.
As one of the object-oriented techniques, UML is basically suitable for real time system
development. There are techniques within UML definition that are a natural fit for specifying
and designing real-time systems. Use cases allow the designers to describe the way in which
humans and external devices, interact with the system. Object sequence diagrams, describe for
a given use case, the events which cause the interaction and the detailed system response,
including timing.
Class diagrams helps to separate system components and define interfaces between them.
These techniques are good enough to capture usage scenarios and identify likely time
problems.
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 of the system should provide to the end users. We will see from our
practical experience that lots of fun comes out when modeling out system with class diagrams.
The discussion on different views of class diagrams for the system will be put into emphasis
later in 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
State Chart Diagram
A State chart diagram shows a state machine. Usually the state machine in a state chart models
the behaviour of a reactive object, whose behaviour is best characterized by its response to
events dispatched from outside its context. The object has a clear lifetime whose current
behaviour 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.
The NetBeans Platform and IDE
The NetBeans Integrated Development Environment (IDE) platform is an open source IDE.
NetBeans is written in the Java programming language and provides the services common to
desktop applications.
NetBeans also provides support for CVS/Version control access, FTP functionality, databases,
scripting, and servlet and JavaServer Pages support through Tomcat.
With NetBeans you can create desktop applications, as well as web applications. NetBeans
contains extensions to the Swing APIs that make it easier to write in a syntax-highlighting code
editor. The editor is capable of mixed-mode operation in which correct syntax highlighting,
code-completion, formatting, and macros are provided for documents that contain content in
more than one language, such as a JSP page containing both HTML and Java code.
If you are writing applications to run strictly on the desktop, NetBeans provides everything you
need. In addition, it makes creating menuing systems easy. Rather than write code to manage
menus, simply write the logic that's important - what should happen when a user clicks on a
menu item. You can also create web applications with NetBeans.
NetBeans is also good for programmers and developers new to the Java programming language
because it's simpler to parse through the output of the compiler when dealing with an
application than when dealing with a call stack from an application server.
Implementation
Iterative and incremental processes represent best practice that has been identified from the
limitations of the waterfall process. The term ‘iterative’ indicates the repetition of one or more
activities; the term ‘incremental’ indicates that development proceeds from an initial subset of
the requirements to more and more complete subsets, until the whole system is addressed.
Incremental development involves an initial partition of the intended functionality; some or all
of the subsequent development activities can be carried out independently and in parallel. The
final product results from the total integration of the partitions.
Conclusion
Simulation is a way of developing application or design simulating real world, the way which
help in clarifying the real idea. The reasons upon using simulations may be for literature, cost,
time, or safety reasons.
Company problem appears when it is intended to equip its building with an elevator and want
to know according to its needs the way to settle the elevator to best satisfy this needs. The way
where we settle an Object-Oriented Software Simulator, concerning the logic and algorithm
required to move the elevator between floors, giving the company a clear idea and leading it to
choose the best design which satisfies this needs