02. mte - konsep pengembangan tik
DESCRIPTION
Konsep TIKTRANSCRIPT
-
23/09/2014
1
KONSEP PENGEMBANGAN TIK
Magister Teknik Elektro
2013
LINGKUP PEMBAHASAN
Pendahuluan
New Product Development (NPD) Processes
Siklus Hidup Pengembangan Sistem
Pengantar Rekayasa Perangkat Lunak
(Software Engineering)
2
PENDAHULUAN
Pengembangan sistem
(berbasis Teknologi
informasi dan
komunikasi) merupakan
penyusunan dan
perumusan suatu
sistem yang baru
untuk memperbaiki
sistem yang telah ada,
atau menggantikan
sistem yang lama secara
keseluruhan. 3
CBIS (Computer Based Information System)
CBIS atau Sistem Informasi Berbasis Komputer
merupakan suatu sistem pengolah data menjadi
sebuah informasi yang berkualitas dan
dipergunakan untuk suatu alat bantu pengambilan
keputusan. Shg benar-benar berguna untuk
oraganisasi.
Sistem Informasi berbasis komputer mengandung
arti bahwa komputer memainkan peranan penting
dalam sebuah sistem pembangkit informasi.
4
Definition of System
... an identifiable, complex dynamic entity composed of discernibly different parts or subsystems that are interrelated to and interdependent on each other and the whole entity with an overall capability to maintain stability and to adapt behaviour in response to external influences [Websters];
1950s the main approach to understanding was reductionism divide something into its parts, Ludwig von Bertalnffy proposed systems thinking discover how something interacts with its environment
Systems engineering is an interdisciplinary field of engineering that focuses on how to design
and manage complex engineering projects over their life cycles. Systems engineering deals with
work-processes5
Systems Thinking
Systems Thinking is a way of seeing and talking about reality that helps us better understand and work with organization and communities to influx the quality of our lives. (Modified by Kim);
holistic approach to problem solving, reflecting on how the organisation relates to its business environment and how factors in the environment can affect the organisation
One approach to problem solving is systems thinking, or systems analysis. It expands analysis to include the system as a whole, and the relationship of interconnected parts. It recognizes that the whole is greater than the sum of the parts.
Systems thinking involves backwards thinking. It begins with the end objective, and works backward, analyzing the relationship of each component to the final objective.
6
-
23/09/2014
2
What Is A Model ?
A Representation of an object, a
system, or an idea in some form other
than that of the entity itself.
(Shannon)
Systems modeling or system modeling is
the interdisciplinary study of the use of models to
conceptualize and construct systems 7
Proses Pemodelan
Asumtion
Pemodelan
Structure and Behavior
Real World
MODEL
8
Modelling
Represent existing and future systems
Models are in-complete
Various models represent different perspectives and levels
of abstraction
Modelling techniques should be selected to enhance
communications between designers and users
9
Contoh Pemodelan
10
Real world vs Technology An instance, in object-oriented
programming (OOP), is a specific
realization of any object.
An object may be varied in a number
of ways. Each realized variation of that
object is an instance.
The creation of a realized instance is
called instantiation.
Each time a program runs, it is an
instance of that program.
In languages that create objects
from classes, an object is an
instantiation of a class.
That is, it is a member of a given class
that has specified values rather
than variables.
In a non-programming context, you
could think of "dog" as a class and
your particular dog as an instance of
that class.[1]11
Modelling: Techniques Basic flowchart
Cause and Effect
Diagram
Data flow diagram
Brainstorming Diagram
etc
12
-
23/09/2014
3
System Model
A system model is the conceptual model that describes and represents a system.
A system comprises multiple views such as planning, requirement
(analysis), design, implementation, deployment, structure, behavior, input data,
and output data views.
A system model is required to describe and represent all these multiple views. The
system model describes and represents the multiple views possibly using two
different approaches. The first one is the non-architectural approach and the
second one is the architectural approach.
The NON-ARCHITECTURAL APPROACH respectively picks a model for each view.
For example, Structured Systems Analysis and Design Method (SSADM), picking
the Structure Chart (SC) for structure description and the Data Flow Diagram (DFD)
for behavior description, is categorized into the non-architectural approach.
The ARCHITECTURAL APPROACH, instead of picking many heterogeneous and
unrelated models, will use only one single coalescence model. For example, System
architecture, using the Architecture Description Language (ADL) for both structure
and behavior descriptions, is categorized into the architectural approach.13
Analisis Pengembangan Sistem
Informasi
Analisis Problem sistem
Analisis Kelemahan Sistem
Analisis Performa, Information, Economic,
Control and Efficiency (PIECES)
Analisis Study Kelayakan
Analisis Kebutuhan Sistem
14
NEW PRODUCT DEVELOPMENT
Ulrich and Eppinger (2004:2) define NPD as the set of activities beginning with the perception of a market opportunity and ending in the production, sale, and delivery of a product.
With a small modification, this definition includes also new service development (NSD): in contrast to a manufactured product, a service is co-produced with the customer, and therefore, NSD must include acustomer interface mechanism. Still, this definition focuses on individual new products, while the NPD activities within a larger firm must consider a stream of multiple ideas and products, selection among them and their evolution over generations.
Sumber :Christoph H. Loch and Stylianos Kavadias; Handbook of New Product Development
Management, Copyright 2008, Elsevier Ltd15
NPD: Fundamental elements
A variant generation process, which identifies new combinations of technologies, processes, and market opportunities with the potential to create economic value. Variants are generated by directed search and blind combination of unrelated elements (creativity).
A selection process, which chooses the most promising among the new combinations for further investment (of financial, managerial, physical, and/or human resources) according to consistent criteria.
A transformation process, which converts (develops) opportunities into economic goods and codified knowledge (embodied in a design) products or services to be offered to customers.
A coordination process, which ensures the information flow, collaboration, and cooperation among multiple parties, involved in the NPD activities.
16
Three-level evolutionary view of NPD
Sumber :Christoph H. Loch and Stylianos Kavadias; Handbook of New Product Development Management, Copyright 2008, Elsevier Ltd
17
Cross-functional Processes i.e., Product Development
MARKETING PRODUCTIONR & D
Product development
com
pe
tito
r a
na
lysi
s
ma
rke
t re
sea
rch
ne
w p
rod
uct
pro
toty
pe
needs analysis
research
market test
component design
product test
product release
process design
equipment design
production start
18
-
23/09/2014
4
Why NDP :
To add to product portfolio(processes, methods, and technologies) to determine the optimal resource mix;
To create stars and cash cows for the future;
To replace declining product; To take advantage of new
technology ; To maintain/increase market
share; To keep up with rivals; To defeat (Win a victory over)
rivals ; To maintain competitive
advantage ; To full gap in the market;
19
SIKLUS HIDUP PENGEMBANGAN
SISTEM
20
SDLC: Histori
The systems development life cycle, according to Elliott & Strachan & Radford (2004), "originated in the 1960s, to develop large scale functional business systems in an age of large scale business conglomerates.
Information systems activities revolved around heavy data processing and number crunching routines
Tahap Systems Development Life Cycle (SDLC) adheres to important phases that are essential for developers, such as planning, analysis, design, and implementation
21
SDLC: Definisi
The Systems development life cycle (SDLC) is a process
used by a systems analyst to develop an information
system, training, and user (stakeholder) ownership.
The SDLC aims to produce a high quality system that
meets or exceeds customer expectations, reaches
completion within times and cost estimates, works
effectively and efficiently in the current and
planned Information Technology infrastructure, and is
inexpensive to maintain and cost-effective (compares
the relative costs and outcomes (effects) ) to
enhance/improve22
Systems Development Life Cycle (SDLC)
Atau juga dikenal software development process, or Software Development Life Cycle in systems engineering, information systems and software engineering, is a process of creating or altering information systems, and the models and methodologies that people use to develop these systems.
In software engineering, the SDLC concept underpins / Support many kinds of software development methodologies.
These methodologies form the framework for planning and controlling the creation of an information system: the software development process. 23
Siklus Hidup Pengembangan Sistem
Bila dalam operasi sistem yang sudah dikembangkan masih timbul permasalahan-permasalahan yang tidak dapat diatasi dalam tahap pemeliharaan sistem, maka perlu dikembangkan kembali suatu sistem untuk mengatasinya dan proses ini kembali ke proses yang pertama. Siklus ini disebut dengan Siklus Hidup suatu Sistem.
Siklus Hidup Pengembangan Sistem dapat
didefinisikan sebagai serangkaian aktivitas yang dilaksanakan oleh profesional dan pemakai sistem informasi untuk mengembangkan dan mengimplementasikan sistem informasi.
24
-
23/09/2014
5
Tahapan SDLC Penelitian awal analisis
kebutuhan
Sistem Analysis/Analysis Sistem, keputusan berdasarkan alternatif yang terbaik.
System Design / Perancanaan Sistem
Implementasi, System Development / Pengembangan
Testing
System Implementation and Evaluation /Implementasi dan Evaluasi
25
SDLC: Alternatif 2
26
SDLC models
SDLC models or methodologies have been
created, such as
"waterfall";
"spiral";
"Agile software development";
"rapid prototyping";
"incremental"; and
"synchronize and stabilize
27
10 Fasa SDLC
1. Initiation
2. System Concept Development.
3. Planning.
4. Requirement Analysis
5. Design.
6. Development.
7. Integration and testing.
8. Implementation (Acceptance, installation, deployment).
9. Operation and Maintenance, Evaluation.
10.Disposal.28
The Tenth Phase System
Wikipedia.org29
SDLC: Aspek Feasibility
Siklus Hidup Pengembangan Sistem Aspek Feasibilitymenjadi penting agar sistem yang dikembangkan lebihefektif dan useable/bermanfaat serta memiliki faktorimpak yang tinggi. Diantara kelayakan yang perludipertimbangkan adalah
Operational Feasibility
Economic Feasibility
Technical Feasibility
Human Factors Feasibility
Legal/Political Feasibility
30
-
23/09/2014
6
SDLC: Aspek testing
Dalam Siklus Hidup Pengembangan Sistem, Aspek penting adalah TESTING (pengujian sistem) .Diantara testing yang perlu dilaksanakan adalah
Path testing
Data set testing
Unit testing
System testing
Integration testing
Black-box testing
White-box testing
Regression testing ( rerunning existing tests against the modified code)
Automation testing
User acceptance testing
Catatan: White-box testing (also known as clear box testing, glass box testing, transparent box testing, and structural testing) is a method of testing software that tests internal structures or workings of an application, as opposed to its functionality (i.e. black-box testing). 31
REKAYASA PERANGKAT LUNAK
Software Engineering (SE) is the application of a systematic, disciplined, quantifiable approach to the design, development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software.
Software is any set of machine-readable instructions (most often in the form of a computer program) that directs a computer's processor to perform specific operations.
instructions (computer programs) that when executed provide desired function and performance,
data structures that enable the programs to adequately manipulate information,
documents that describe the operation and use of the programs.
32
The IEEE definition:
Software Engineering: (1) The application of a systematic,
disciplined, quantifiable approach to the development,
operation, and maintenance of software; that is, the
application of engineering to software. (2) The study of
approaches as in (1).
The seminal definition:[Software engineering is] the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.
Software Engineering Definition
Software engineering is an engineering discipline that isconcerned with all aspects of software production.
33
Tahapan SE (secara umum)
1. Melakukan survei dan menilai kelayakan proyek pengembangan sistem informasi
2. Mempelajari dan menganalisis sistem informasi yang sedang berjalan
3. Menentukan permintaan pemakai sistem informasi
4. Memilih solusi atau pemecahan masalah (alternatif) yang paling baik
5. Menentukan perangkat keras (hardware) dan perangkat lunak (software)
6. Merancang sistem informasi baru
7. Membangun sistem informasi baru
8. Mengkomunikasikan dan mengimplementasikan sistem informasi baru
9. Memelihara dan melakukan perbaikan/peningkatan sistem informasi baru bila diperlukan 34
Model : Waterfall
35
Waterfall Strengths
Easy to understand, easy to use
Provides structure to inexperienced staff
Milestones are well understood
Sets requirements stability
Good for management control (plan, staff, track)
Works well when quality is more important than cost or
schedule
36
-
23/09/2014
7
Model: Prototype
Definisi
The prototyping paradigm begins with requirements gathering.
Developer and customer meet and define the overall objectives for the software, identify whatever requirements are known, and outline areas where further definition is mandatory.
A "quick design" then occurs.
The quick design focuses on a representation of those aspects of the software that will be visible to the customer/user (e.g., input approaches and output formats).
37
Model: Prototype
38
THE RAD MODEL
Rapid application development (RAD) is an
incremental software development process model
that emphasizes an extremely short development
cycle.
The RAD model is a high-speed adaptation of
the linear sequential model in which rapid
development is achieved by using component-
based construction.
5 Tahapan dalam RAD Business modeling; Data
modeling, Process modeling; Application
generation; Testing and turnover 39
Rapid Application
Development (RAD)
40
Agile Development
Bisa dikatakan ini merupakan metodologi yang
lebih cepat dalam pengembangan sebuah
sistem informasi.
Metodologi ini melakukan perampingan pada
proses pemodelan dan pembuatan dokumen,
Pengembangan metodologi ini disebut
EXTREME PROGRAMMING.
41
Agile Development
Iteration means the act of repeating a process with the aim of approaching a desired goal,
target or result. Each repetition of the process is also called an "iteration," and the results of one
iteration are used as the starting point for the next iteration42
-
23/09/2014
8
Model Spiral
43
Model Spiral
The spiral model, originally proposed by Boehm [BOE88], is an evolutionary software process model that couples the iterative nature of prototyping with the controlled and systematic aspects of the linear sequential model.
It provides the potential for rapid development of incremental versions of the software.
Using the spiral model, software is developed in a series of incremental releases. During early iterations, the incremental release might be a paper model or prototype.
During later iterations, increasingly more complete versions of the engineered system are produced.
A spiral model is divided into a number of framework activities, also called task regions. Typically, there are between three and six task regions.
44
Model Spiral
A spiral model is divided into a set of framework activities defined by software engineering terms.
As the evolutionary process begins, software team performs activities that are implied by a circuit around the spiral in a clockwise direction, beginning at the center.
The first circuit around the spiral might result in the development of a product specification; subsequent passes around the spiral might be used to develop a prototype and then progressively more sophisticated versions of software.
Unlike other process models that end when software is delivered, the spiral model can be adapted to apply throughout the life of the computer software.
45
Model Spiral: uraian
Figure depicts a spiral model that contains six task regions:
Customer communicationtasks required to establish effective communication between developer and customer.
Planningtasks required to define resources, timelines, and other project related information.
Risk analysistasks required to assess both technical and management risks.
Engineeringtasks required to build one or more representations of the application.
Construction and releasetasks required to construct, test, install, and provide user support (e.g., documentation and training).
Customer evaluationtasks required to obtain customer feedback based on evaluation of the software representations created during the engineering stage and implemented during the installation stage.
46
When to use Spiral Model
When creation of a prototype is appropriate/ Suitable
When costs and risk evaluation is important
For medium to high-risk projects
Long-term project commitment unwise because of potential changes to economic priorities
Users are unsure of their needs
Requirements are complex
New product line
Significant changes are expected (research and exploration)
47 4848
RANGKUMAN
1. Berfikir Sistem diperlukan dalam proses pengembangan
sistem/TIK agar semua subsistem dan supra sistem dapat
diidentifikasi dan dapat diketahui perilaku sistem.
2. Pendekatan NPD proses dapat digunakan dalam
membangun sistem/produk.
3. SDLC : sistem/software development life cycle merupakan
daur hidup sistem/software atau teknologi informasi dan
komunikasi yang perlu selalu dipertimbangkan dan
dilaksanakan secara berkelanjutan.
4. Terdapat bebapa Model yang dapat digunakan dalam
rekayasa perangkat lunak sesuai dengan varible
konsideran yang dihadapi terutama waktu dan biaya serta
SDM. 48
-
23/09/2014
9
RUJUKAN
www.wikipedia.org Systems development life-
cycleSenin, 09 September 2013.
Roger S. Pressman, Ph.D. Software
Engineering: Apractitioners approach, Fifth
Edition, McGraw-Hill Companies, 2001, ISBN
0073655783
49
SEKIAN TERIMA KASIHSEKIAN TERIMA KASIH
Acknowledgement:
Terima kasih dan penghargaan yang tinggi kepada
kontributor dalam slide ini. Penulis slide ini anonim, Slide ini
dikutip dengan dari berbagai sumber diantaranya dari buku,
jurnal, proseding dan web50
ISTILAH
cost-effective - Economical in terms of the
goods or services received for the money
spent
51