You are on page 1of 38

SystemAnalysis

2- Software Engineering and the software


development problematic
Vitor Santos
vsantos@novaims.unl.pt
Syllabus

1 – General concepts
Characterization of the Software product; Software engineering
basic elements; Programming paradigms
2 – Software Process Engineering and the
softwaredevelopment problematic
Specification and software design (Structured Analysis, SSADM,
Information Engineering, SSM, Object Oriented Analysis and Design
(OOA/OOD),...)
Origin, structure and components of the Unified Modeling Language
(UML);
3 - Models of software development processes
Prescriptive models : Linear sequential, RAD , Prototyping,
evolutionary models, Rational Unified Process, Iconix.
4 – Agile development
Agile methods: XP, Scrum and Crystal,….

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Syllabus

5- Modeling - Requirements Engineering


Analysis and specification of software requirements
UML Diagrams
6 – Modeling - System Design
Design Process, Design Concepts, Design Model
7- Architectural Design
Software, Systems and Infrastructure Architectures
8 – Emerging Trends in Software Engineering

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
System Analysis

Houston, We Have a
Problem !!
What to do ?

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa 4
System Analysis

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa 5
Systems Analysis Methodologies

• Some methodologies that had greater relevance


and dissemination:
• SSADM
• STRADIS
• YSM (Yourdon System Method / Analysis Modern
Structured)
• IE
• MERISE
• SSM - Soft Systems Methodology
….

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems Analysis Methodologies

• SSADM
• Structured Systems Analysis and Design Methodology
• One of the methods and that achieved greater success was
the SSADM
• Proposed in 1981 by Learmonth, has undergone
successive revisions.
• For a long time (and still today) it was considered the
reference methodology and taught in many university
courses
• In the UK, was required for a long time to be use in all
projects related to the development of information
systems at government level

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Data Flow Diagrams(DFD)

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Data Flow Diagrams (DFD/1)

1
Pedido de subsídio
Formulário de pedido
Estudantes Receber pedidos
de subsídio
Recibo

D1
Pedidos de subsídio
/Order form
/Scholarship request 2

/Students
Pedido d/eRceocnefiirpmtação /díe
eceive da ta validation
Finanças
dados Analisar pedidos Formulário de pedido
/Scholarship requests
Resposta de validação de
/data codn
afdio
íms ation íequest
Resultado
da análise
/Finance Services de pedido /Order form
/evaluate oídeís
D6
Resultados da Tesouraria
/data validation íesponse
análise de pedidos
/íes ult of oídeí analysis
Resultado Resultado
da aná/íliesseult of oídeí analysis
da
de pedidos /Treasure House
análise
de
4 3
Serviços pedidos Lista de estudantes
Académicos /íesult of oídeí com bolsa de estudo
Lista de estudantes com
analyC
siosmunicar Processar bolsas
redução de propinas /L ist of students with
resultado/síesult of de estudo
/Academic oídeí Scholarship
Services /List of students fee reduction analysis
/íepoít íesults /Process Scholarships

Estudantes
/Students Resultado da apreciação
/evaluation results

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Data Flow Diagrams (DFD)

1
Pedido de subsídio
Formulário de pedido
Estudantes Receber pedidos
de subsídio
Recibo

D1
Pedidos de subsídio

Pedido de confirmação de
Finanças
dados Analisar pedidos Formulário de pedido
Resposta de validação de
dados
Resultado
da análise
de pedido

D6
Resultados da
Tesouraria
análise de pedidos
Resultado
da análise Resultado
de pedidos da
análise
de
Serviços 4 3
pedidos Lista de estudantes
Académicos
Lista de estudantes com com bolsa de estudo
redução de propinas Comunicar Processar bolsas
resultados de estudo

DFD/0 - Context diagram (level 0) DFD 1


Estudantes
Resultado da apreciação
(level 1)
2.1

Resultado da análise de pedido Apreciar pedidos Pedido de confirmação de dados

Formulário
de
pedido

D6
D1 Finanças
Resultados da Pedidos de subsídio
análise de pedidos

Formulário
de
pedido

2.2
DFD/2
Receber
validação de
(levell 2)
Resposta de validação de dados
dados

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems development methods

• STRADIS
• Structured analysis, design and implementation of
information systems
• It was a methodology developed by Gane and Sarson in
the 70’s [Gane 1982]
• Based on the philosophy of top-down functional
decomposition and supported mainly by the use of data
flow diagrams

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
STRADIS (Gane e Sarson )

• Main techniques:
• Functional decomposition
• Process Oriented
• DFD
• Decision trees
• Decision tables
• Structured language

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems development methods

• YSM
• Yourdon Systems Method
• Proposed by Edward Yourdon, revised in 1993 and
described with some updates in [Yourdon 1999]
• It is similar to Stradis it uses very functional
decomposition, but also attaches significant importance
to the data structure

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Data Flow Diagrams (DFD)

A typical DFD (Yourdon)

Yourdon

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Functional modeling

Concepts

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Data Flow Diagrams (DFD)

• Components
• Some alternative notations

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems development methods

• IE
• Information Engineering
• Proposed by James Martin in 1989 [Martin 1989]
• It incorporates many concepts, best practices, models and
techniques of the 80´s structured methodologies and
software development techniques and a coherent approach
to all activities of the software development process.
• Its roots are at work originally developed by IBM in its
Business Systems Planning methodology.
• Unlike the others, the Information Engineering is a strategic
concern to the definition of information systems.

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
IE

IE techniques
• Entity analysis: identifies all the things that the enterprise may want to hold data
about. The analysis classifies all of the things into different entity types, revealing
how they relate to each other. Which is being described in the entity model.
• Function analysis and process dependency: takes a function (a major business
activity) of the enterprise and breaks it down into elementary business processes.
From this, two diagrams are prepared: the process decomposition diagram, which
shows the breakdown of a business function, and the process dependency diagram,
which shows the interdependencies of business processes.
• Process logic analysis: describes the sequences of actions carried out by a business
process and shows which data are used by each action.
• Entity type lifecycle analysis: describes the significant business changes to entities
and confirm that processes have been modelled to effect these changes
• Matrix cross-checking: creates cross-references between data objects and processes
to verify that they are necessary and complete.
• Normalization: provides a formal means of confirming the correctness of the entity
model.
• Cluster analysis: helps define the scope of design areas for proposed business
systems.
• Data flow and data analysis: makes a comparison possible between the business
area models and the systems currently supporting this area, these current systems
are analyzed using data flow and data analysis techniques.
Instituto Superior de Estatística e Gestão de Informação
Universidade Nova de Lisboa 18
IE

James Martin (19 October 1933 – 24 June 2013)

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Instituto Superior de Estatística e Gestão de Informação
Universidade Nova de Lisboa 20
Systems development methods

• MERISE
• Méthode d’Études et de Réalisation Informatique des
Systèmes d’Entreprises
• It was developed in 1972 and restructured in 1992 in the
form of MERISE 2
• In 1992 was created a variant to handle the object-
oriented modeling
• This methodology had a strong presence in Europe
(France, Spain, Germany, Belgium, Switzerland)

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
MERISE

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems development methods

• SSM
• Soft Systems Methodology
• Aimed to address the socio-technical systems issues

The primary use of SSM is in the


analysis of complex situations
where there are divergent views
about the definition of the
problem. These situations are
"soft problems" such as: How to
improve health services
delivery? How to manage
disaster planning? When should
mentally disordered offenders
be diverted from custody? What
to do about homelessness
amongst young people?

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
SSM

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems Analysis Methodologies

• Some methodologies that had greater relevance


and dissemination:
• SSADM
• STRADIS
• YSM (Yourdon System Method / Analysis Modern
Structured)
• IE
• MERISE
• SSM - Soft Systems Methodology

• OO methods

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Systems development methods

• OO methods
• In the OO approach the systems modeling perspective
changes, since the same basic concept is used throughout
all stages of the process, promoting the reuse and
encapsulation information and facilitating maintenance.
• Fundamental concepts
• objects
• classes
• heritage
• Communication messages
• UML

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML (Booch, Jacobson, Rumbaugh, 1996)

UML - Unified Modeling Language, i.e. is a modeling formal


language (mainly diagrammatic).

It is a generic language, i.e. allows modeling any system (static and


dynamic components) at different levels of analysis (from generic
models to implementation models). There not is a specific language
for information systems.

It is based on the objects paradigm. In particular, supports the


definition of classes and objects.

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
History of the UML

The responsibility for standardization work associated with UML was given to
the consortium OMG (Object Management Group).

OMG brings together hundreds of the world's leading producers of software.


Version 2.0 of UML was defined at the end of 2004.

The current version is 2.5.1 (2017) - officially released in December 2017.

Later the so-called "three friends" formed a company, Rational Software, which
sells products to support software development.

This company has created its own process, RUP (Rational Unified Process) based
on Unified Process (recently Rational was acquired by IBM).

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
History of the UML
UML began to be defined from an attempt to James Rumbaugh
and Grady Booch to combine two popular modeling methods
oriented objects: Booch and OMT (Object Modeling Language).

Later, Ivar Jacobson, the creator of Objectory method, joined


the two (forming the famous three friends), for the design of
the first version of UML (Unified Modeling Language).
History of the UML
• UML was adopted in 1997 by the OMG (Object Management Group).

Sorce: https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-uml/

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa 30
History of the UML

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML
• is a language for:

• To view,
• to specify,
• to ramp up,
• to document,

… models.

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML - Classes
Visualization
• Some things are best modeled in textual form
(algorithms, for example).
• However, there are structures and behaviors that are
best viewed in graphical form.
• The UML allows graphic forms to create models.
• between people.
• Behind every graphic form there is a well-defined
semantics that allows an unambiguous
interpretation.
• Facilitates communication

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML - Classes

Specification

• allows precise specification, unambiguous


and complete.

• The specification covers the survey, the


requirements analysis, the design and the
implementation of the development of
software systems.

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML - Classes

Construction
• There is a visual programming language, but the
models can be associated with programming
languages for code generation.
• This allows that the better things graphically
described are defined in UML and things best
described textually are defined in programming
languages.
• It allows generation of code from models in a
programming language: direct engineering.
• Allows reverse engineering (depending on the
tools)
• It can be used for the simulation models.

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML - Classes

Documentation

• The UML models can be used for


documentation systems.
• The templates can be used directly or can use tools that generate
documents from templates.
• The models can be handled using tools by qualified personnel.
• The documents can be used without the use of complex tools

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
UML - Classes

UML use domain

In addition to software systems UML is used:


• Modeling business processes
• Information systems companies
• Banking and financial systems
• Telecommunications.
• Transport
• Medical electronics
• Hardware Design
• Workflow modeling (Workflows)

Instituto Superior de Estatística e Gestão de Informação


Universidade Nova de Lisboa
Instituto Superior de Estatística e Gestão de Informação
Universidade Nova de Lisboa 38

You might also like