análise de sistemas (as) - departamento de informáticangarcia/aulas/asi1213/ubi asi 1213 aula...
Post on 18-Nov-2018
213 Views
Preview:
TRANSCRIPT
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
AnálisedeSistemas(AS)
AnoLecDvo2012/2013*1ºSemestre
CursodeLicenciaturaemTecnologiaseSistemasdeInformação
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
Aula3
1
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Previously...
Contentadaptedfrom
SystemsAnalysisandDesignwithUML,4thEdiDonInternaDonalStudentVersion
AlanDennis,BarbaraHaleyWixomandDavidTegarden,
Wiley,2012
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
2
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
3
SystemsDevelopmentLifeCycle(SDLC)
Planning
Analysis
Design
ImplementaDon
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
4
SystemsDevelopmentLifeCycle(SDLC)
Theprocessconsistsoffourphases
Eachphaseconsistsofaseriesofsteps
Eachphaseisdocumented(deliverables)
PhasesareexecutedsequenDally,incrementally,iteraDvelyorinsomeotherpa`ern
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
5
QuesDonstobeAnsweredPlanningphase
Whyshouldwebuildthissystem?
Whatvaluedoesitprovide?
Howlongwillittaketobuild?
AnalysisphaseWhowilluseit?
Whatshouldthesystemdoforus?
Where&whenwillitbeused?
DesignphaseHowshouldwebuildit?
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
6
SDLC:ThePlanningPhaseProjectIniDaDon
Develop/receiveasystemrequestConductafeasibilityanalysis
• Technicalfeasibility• Economicfeasibility• OrganizaDonalfeasibility
ProjectManagement(aherapproval)Developtheworkplanandproduceaprojectplan
Stafftheproject
Monitor&controltheproject
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
7
SDLC:TheAnalysisPhaseDevelopananalysisstrategy
Modelthecurrentsystem
Formulatethenewsystem
GathertherequirementsDevelopasystemconcept
Createabusinessmodeltorepresent:• Businessdata
• Businessprocesses
Developasystemproposal
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
8
SDLC:TheDesignPhase
Developadesignstrategyandproduceasystemspecifica>on
Designarchitecture(sw,hw,network)andinterfaces(userinterfaces,menus)
DevelopdatabasesandfilespecificaDons
Developtheprogramdesigntospecify:Whatprogramstowrite
Whateachprogramwilldo
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
9
SDLC:TheImplementaDonPhase
ConstructthesystemBuildit(writetheprogrammingcode)
Testit
InstallsystemTraintheusers
Supportthesystem(maintenance)
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
10
SDLC:MethodologiesMethodology:aformalizedapproachto
implemenDngtheSDLCFormalstandardsusedbygovernmentagencies;internally
developedbycompanies;developedandsoldasaproduct,…
Categories(Business)ProcessorientedDatacenteredObject‐orientedStructuredRapidacDondevelopmentAgiledevelopment
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
11
ClassesofMethodologiesStructuredDevelopment(~1980)
WaterfallDevelopment(detailed,butlengthy)ParallelDevelopment(faster,butwithincreasedintegraDonefforts)
RapidApplicaDonDevelopment(~1990)(hardtomanageuserexpectaDons‐>growing#requirements)
PhasedPrototyping
AgileDevelopment(sDllunderdevelopment!Programming‐centric,modelinganddocumentaDonoverheadsareeliminated)
eXtremeProgrammingSCRUM
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
12
TheSystemsAnalyst:SkillsAgentsofchange
IdenDfywaystoimprovetheorganizaDon
MoDvate&trainothers
Skillsneeded:Technical:mustunderstandthetechnology
Business:mustknowthebusinessprocesses
AnalyDcal:mustbeabletosolveproblems
CommunicaDons:technical&non‐technicalaudiences
Interpersonal:leadership&management
Ethics:dealfairlyandprotectconfidenDalinformaDon
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
13
AnExpensiveFalseStartA real‐estate group in the federal government cosponsored a data wharehouse with the ITdepartment.Aformalproposalwaswri`enbyITinwhichcostswereesDmatedat$800,000,theproject duraDon was esDmated to be eight months, and the responsibility for funding wasdefinedasthebusinessunit’s.
The IT department proceeded with the project before it even knew if th project had beenaccepted.
Theprojectactuallylastedtwoyearsbecauserequirementsgatheringtookninemonthsinsteadofoneandahalf,theplanneduserbasegrewfrom200to2,500,andtheapprovalprocesstobuytechnology for the project took a year. Threeweeks prior to technical delivery, the IT directorcanceledtheproject.ThisfailedendeavorcosttheorganizaDonandtaxpayers$2.5million.
a) Whydidthissystemfail?b) Whywouldacompanyspendmoneyand>meonaproject
andthencancelit?c) Whatcouldhavebeendonetopreventthis?
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
IntroducDonto
Object‐OrientedSystemsAnalysisandDesign
withUML
Contentadaptedfrom
SystemsAnalysisandDesignwithUML,4thEdiDonInternaDonalStudentVersion
AlanDennis,BarbaraHaleyWixomandDavidTegarden,
Wiley,2012
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
14
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
CharacterisDcsofObject‐OrientedSystems
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
15
Classes&Objects
Object(instance):instanDaDonofaclass
A`ributes:informaDonthatdescribestheclass(Dpicallyprivate)
State:describesitsvaluesandrelaDonshipsatapointinDme
aStudent:Student
‐ Maria‐ 5thAvenue‐ 333333‐ {AS,BD,SO}
Student
‐Name‐Address‐ID‐CourseList
‐name()‐addCourse(Course)
InstanDaDon
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
CharacterisDcsofObject‐OrientedSystems
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
16
Methods&MessagesMethods:thebehaviorofaclass
Messages:informaDonsenttoanobjecttotriggeramethod(procedurecall)
aStudent:Student
‐ Maria‐ 5thAvenue‐ 333333‐ {AS,BD,SO}
AddSItocourselist
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
CharacterisDcsofObject‐OrientedSystems
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
17
EncapsulaDon&informaDonhidingEncapsulaDon:combinaDonofprocess&data
InformaDonhiding:funcDonalityishidden
aStudent:Student
‐ Maria‐ 5thAvenue‐ 333333‐ {AS,BD,SO}
AddSItocourselist
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
CharacterisDcsofObject‐OrientedSystems
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
18
InheritanceGeneralclassesarecreated(superclasses)Subclassescaninheritdataandmethodsfromasuperclass
Person
StudentTeacher
Regular Erasmus
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
CharacterisDcsofObject‐OrientedSystems
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
19
Polymorphism&dynamicbindingPolymorphism:thesamemessagecanhavedifferentmeanings
Dynamicbinding:typeofobjectisnotdeterminedunDlrun‐Dme
ContrastwithstaDcbinding
AddSItocourselist
Teacher
Student
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&Design
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
20
A`emptstobalancedataandprocess
UDlizestheUnifiedModelingLanguage(UML)
CharacterisDcsofOOAD:Use‐caseDriven
ArchitectureCentricIteraDveandIncremental
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&Design
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
21
Usecases:describehowusersinteractwiththesystemtoperformsome
acDvity(placinganorder,makingareservaDon,…)
Use‐casedrivenUse‐casesdefinethebehaviorofasystem
Eachuse‐casefocusesononebusinessprocess(simplicity)
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&Design
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
22
Architecturecentric
FuncDonal(external)view:focusesontheuser’sperspecDve
StaDc(structural)view:focusesona`ributes,methods,classes&relaDonships
Dynamic(behavioral)view:focusesonmessagesbetweenclassesandresulDngbehaviors
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&Design
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
23
IteraDve&incremental
UndergoesconDnuoustesDng&refinement
Theanalystunderstandsthesystembe`eroverDme
EachiteraDonbringsthesystemclosertorealuserneeds
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
BenefitsofObject‐OrientedSystemsAnalysis&Design
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
24
Breakacomplexsystemintosmaller,moremanageablemodules
WorkonmodulesindividuallyandeasilypiecethemodulesbacktogethertofromandIS
SeethesystemmorerealisDcally—astheusersdo
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.ptJoãoPauloFernandes,jpf@di.ubi.pt
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca
Concept Supports Leadsto
Classes,objects,methodsandmessages
‐ AmorerealisDcwayforpeopletothinkabouttheirbusiness‐ Highlycohesiveunitsthatcontainbothdataandprocesses
‐ Be`ercomunicaDonbetweenuserandanalyst‐ Reusableobjects
EncapsulaDonandinformaDonhiding
Looselycoupledunits ‐ Reusableobjects‐ Fewerrippleeffectsfromchangeswithinanobjectorthesystemitself
Inheritance Allowsustouseclassesandstandardtemplatesfromwhichotherclassescanbuild
‐ Lessredundancy‐ FastercreaDonofnewclasses‐ Standardsandconsistencywithinandacrossdevelopmentefforts
PolymorphismandDynamicBinding
Minimalmessagingthatisinterpretedbyobjectsthemselves
‐Simplerprogrammingofevents‐Easeinreplacingorchangingobjectsinasystem‐Fewerrippleeffectsfromchangeswithinanobjectorthesystemitself
Use‐casedrivenandusecases
AllowsusersandanalyststofocusonhowauserwillinteractwiththesystemtoperformasingleacDvity
‐Be`erunderstandingandgatheringofuserneeds‐Be`ercomunicaDonbetweenuserandanalyst
ArchitecturecentricandfuncDonal,staDc,anddynamicviews
ViewingtheevolvingsystemfrommulDplepointsofview
‐Be`erunderstandingandmodelingofuserneeds‐MorecompletedepicDonofinformaDonsystem
IteraDveand ConDnuoustesDngandrefinementof ‐MeeDngrealneedsofusers
25
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&DesignwithUML
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
26
UMLprovidesacommonvocabularyofobject‐orientedtermsanddiagrammingtechniquesrich
enoughtomodelanysystemsdevelopmentprojectfromanalysisthroughimplementaDon
Version2.0has14diagramsin2majorgroups:– Structurediagrams– Behaviordiagrams
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&DesignwithUML
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
27
UMLstructurediagrams
RepresentthedataandstaDcrelaDonshipsinaninformaDonsystem
ClassObjectPackageDeploymentComponentCompositestructure
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Object‐OrientedSystemsAnalysis&DesignwithUML
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
28
UMLBehaviorDiagrams
DepictthedynamicrelaDonshipsamongtheinstancesorobjectsthatrepresentthebusinessinformaDonsystem
AcDvity
Sequence
CommunicaDon
InteracDonoverview
Timing
Behaviorstatemachine
Protocolstatemachine
Use‐casediagrams
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Diagramname Usedto PrimaryPhase
StructureDiagrams
Class IllustratetherelaDonshipsbetweenthemodeledclasses Analysis,Design
Object IllustratetherelaDonshipsbetweenthemodeledobjects.Usedwhenactualinstancesofclasseswillbe`ercommunicatethemodel.
Analysis,Design
Package GroupotherUMLelementstoformhigherlevelconstructs Analysis,Design,ImplementaDon
Deployment Showthephysicalarchitectureofthesystem PhysicalDesign,ImplementaDon
Component IllustratethephysicalrelaDonshipsamongtheswcomponents PhysicalDesign,ImplementaDon
CompositeStructure Illustratetheinternalstructureofaclass Analysis,Design
BehavioralDiagrams
AcDvity Illustratebusinessworkflowsindependentofclasses,theflowofacDviDesinausecase,ordetaileddesignofamethod
Analysis,Design
Sequence Modelthebehaviorofobjectswithinausecase.Time‐based Analysis,Design
CommunicaDon Modelthebehaviorofobjectswithinausecase.FocusesonthecommunicaDonamongasetofcollaboraDngobjectsofanacDvity
Analysis,Design
InteracDonoverview Illustrateanoverviewoftheflowofcontrolofaprocess Analysis,Design
Timing IllustratetheinteracDonthattakesplaceamongasetofobjectsandthestatechangesinwhichtheygoalongaDmeaxis
Analysis,Design
BehavioralSM Examinethebehaviorofoneclass Analysis,Design
ProtocolSM Illustratethedependenciesamingthedifferentinterfacesofaclass Analysis,Design
Use‐Case CapturebusinessrequirementsforasystemandtoillustratetheinteracDonbetweenthesystemanditsenvironment
Analysis
JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt
Summary
UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt
30
Object‐orientedsystemsdifferfromtradiDonalsystems
Object‐OrientedSystemsAnalysisandDesignusesause‐case‐driven, architecture‐centric, iteraDve, andincrementalinformaDonsystemsdevelopmentapproach
TheUnifiedModeling Language, orUML, is a standardset of diagramming techniques that can be used tosupportOOSAD
top related