Upload
phebe-williamson
View
221
Download
0
Tags:
Embed Size (px)
Citation preview
UML Case StudyStephanie Fultz
Overall ModelingModeling is a way of thinking about the problems
using models organized around the real world ideas.
A modeling method comprises a language and also a procedure for using the language to construct models.
Modeling is the only way to visualize your design and check it against requirements before your crew starts to code.
Overall Tips Using UMLKnow and Understand what you want to model and why it is
worth modelingNever Assume Prior KnowledgeFind the most appropriate UML technique that existsEnsure users and customers do not associate the UML
model with the tool that is creating itAllow time for people to learn Make Standards on how to apply the specific modelCreate processesIntroduce technique to all stakeholdersApply in daily workGet FeedbackBe Flexible
AdvantagesProvides communication
Intra-project communication, e.g. getting things across between team project members
Inter-project / post-project communication, things to be understood at later date Most of the time people who are initially making the software are not the
ones maintaining it or servicing it
You can model just about any type of application, running on any type and combination of hardware, operating system, programming language, and network, in UML
UML is effective for modeling large, complex software SystemsIt is simple to learn for most developers, but provides advanced features for
expert analysts, designers and architectsUse case modeling specifies the functional requirements of system in an
object-oriented manner
DisadvantagesPeople have to be familiar with UML
Managers as well as programmersNot everyone sees the advantage of using itDevelopment tools adopted don’t not support
UMLUML tools can be expensiveThe code generated by UML modeling tools
was not production-readyUML was too complex to learn and to use
Cloud CompanyLeader in industrial weather monitoring
systems (WMS)Flagship product keeps track of temperature,
humidity, barometric pressure, wind speed and directionReal-time and historic
Customers: Aviation, maritime, agriculture, broadcast industry
ProblemCloud is known for high reliable products
that are somewhat expensiveCut off customers that do not need the high
end equipmentCompetitor “Microburst” has announced a
product line for the low end that can be upgraded in stages if neededProduct boasts it can be connected with high
end equipment
StrategyMicroburst is not offering the product for at
least six months Cloud plans to work to build a low-end
upgradable unit in the next six months to prevent Microburst from stealing the market
DilemmaRequires significant engineeringEngineers will not commit to six month
timeline Believe it will be closer to 12 months
Cloud believes that twelve months will be too late
PlanCloud announced it’s new product and began
taking ordersNimbus LC 1.0
Plan to ship in six monthsInitially will repackage the old expensive high
end system Will loose money initially
Meanwhile engineers will develop the true low cost version and systems will be switched out during upgradeNimbus LC 2.0
Main System RequirementsNew software has to be compatible with both
the current hardware and new hardwareProcessors will be differentNew Hardware not even developedSource code will need to be similar
Very quick timeline
User RequirementsThis system shall provide automatic
monitoring of various weather conditions. Specifically, it must measure:Wind speed and directionTemperatureBarometric pressureRelative HumidityWind chillDew point temperature
User Requirements Cont.24-Hour History – The user may direct the
system to display the 24 hour history of any of the following measurements:
Temperature, Barometric Pressure, Relative Humidity
User Set Up - The system shall allow the station to be configured during installation.
Setting the current time, date, and time zone Setting the units that will be displayed
(English or metric)
Actors
User. This actor views the real-time weather information that the station is measuring. It also interacts with the system to display the historical data associated with the individual sensors
Administrator. The role played by this actor is one of administering the system. This administration includes controlling the security aspects of the system, calibrating the individual sensors, setting the time/date, setting units of measure, and resetting thestation when required
Use CasesUse Case #1: Monitor Weather Data. The system will display the current temperature, barometric pressure, relative humidity, wind speed, wind direction, wind chill temperature, dew point, and barometric pressure trend.
Use Case #2: View Temperature History. The system will display the history of the temperature readings.
User Case #3: View Barometric Pressure History. The system will display the history of the barometric pressure readings.
Monitor Weather Date
View TempHistory
View BarHistory
Initial Scheduler and Display Arch.
Initial Scheduler and Display Diagram
Observer UI Arch
UI Sequence Diagram
Barometric Pressure Observers Arch
Conclusion
The use of UML helped lay the foundation for the planning Phase
Communication was key to beginning to create the new tool
Several tools were used to understand the problemClass DiagramsSequence DiagramsCode
“A Fool With A Tool Is Still A Fool”
RefrencesChen, Minder. The Methodology-Fit of UML: An
Empirical Study of UML AdaptationCloud Case study ~
http://www.objectmentor.com/resources/articles/Walking_through_A_UML_Design.pdf
Jonkhart, Fred. IT architect at Fortis. Amsterdam, Netherlands
http://www.omg.org/gettingstarted/what_is_uml.htm
http://www.inconcept.com/JCM/April1998/halpin.html
Questions?