24
UML Case Study Stephanie Fultz

Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

Embed Size (px)

Citation preview

Page 1: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

UML Case StudyStephanie Fultz

Page 2: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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. 

Page 3: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 4: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 5: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 6: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 7: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 8: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 9: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 10: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 11: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 12: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

User RequirementsThis system shall provide automatic

monitoring of various weather conditions. Specifically, it must measure:Wind speed and directionTemperatureBarometric pressureRelative HumidityWind chillDew point temperature

Page 13: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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)

Page 14: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 15: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 16: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

Initial Scheduler and Display Arch.

Page 17: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

Initial Scheduler and Display Diagram

Page 18: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

Observer UI Arch

Page 19: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

UI Sequence Diagram

Page 20: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

Barometric Pressure Observers Arch

Page 21: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 22: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

“A Fool With A Tool Is Still A Fool”

Page 23: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

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

Page 24: Stephanie Fultz. Overall Modeling Modeling is a way of thinking about the problems using models organized around the real world ideas. A modeling method

Questions?