1 / 38

Introduction to System Analysis and Design

Learn the fundamentals of software engineering, including the systematic and organized approach to developing software, as well as the responsibilities and ethical considerations of a software engineer.

smilburn
Download Presentation

Introduction to System Analysis and Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 1PENGANTAR AnalisIS DAN PERANCANGAN SistemINTRODUCTION TO SYSTEM AnalysIS AND DESIGN TIM PENGAMPU: WELLIA Shinta Sari, M.KomAGUSWinarno, M.KomFAJRIAN Nur Adnan, MCS AnalisisSistemInformasi - 1

  2. Bahan AjarContent

  3. KontenMateri – 1Content - 1

  4. RekayasaPerangkatLunakSoftware Engineering • Software engineeringadalahsuatudisiplinrekayasa (rancang-bangun) yang terkaitdengansemuaaspekproduksiperangkatlunak. • Engineer perangkatlunakmengadopsipendekatansistematisdanterorganisiruntukpekerjaanmerekadanmenggunakanteknikdan tools yang disesuaikandenganmasalah yang dihadapiuntukdipecahkan, batasanpengembangan, dansumberdayatersedia.

  5. RekayasaPerangkatLunakSoftware Engineering Software engineering adalah:*IEEE (Institute of Electrical and Electronic Engineers) Definition • Aplikasidarisebuahpendekatan yang bersifatkuantifiabel, disiplin, dansistematisbagipengembangan, operasi, danpemeliharaanperangkatlunak. • Studitentangpendekatan-pendekatansepertipada (1)

  6. RekayasaPerangkatLunakSoftware Engineering SE vs CS SE Vs System Engineer System engineeringmempunyaikaitandengansemuaaspekpengembangansistemberbasis-komputer yang mencakupperangkatkeras, perangkatlunak ,dan yang terkaitdengan proses bisnis. Software engineeringberkonsentrasipadakomponenperangkatlunaksistem yang lebihbesar. System engineersmencakupspesifikasisistem, desainarsitektur, pengintegrasian, danpenyebaran. • Computer sciencemempunyaikaitandengantheory and fundamentals; software engineeringmempunyaikaitandenganpracticalities of developing and delivering useful software. • Computer sciencesekaranginitidakcukuplengkapuntukbertindaksebagaitiangpenyokongsoftware engineering.

  7. RekayasaPerangkatLunakSoftware Engineering • Software engineeringmelibatkantanggung-jawablebihluasdibandinghanyaaplikasikecakapanteknis. • Software engineerharusbertindaksecaraetis, bertanggungjawab, danjujurjikamerekadiharapkanuntukterhormatsebagaiseorangprofesional. • Perilakuetistidakhanyasekedarmenegakkanhukumsajatetapiharuslebihdariitu (lih. hal. berikutnya). TanggungJawab Software Engineer

  8. RekayasaPerangkatLunakSoftware Engineering • Confidentiality (Kerahasiaan) Engineerseharusnyamenghormatikerahasiaandariklienmerekatanpatergantungdenganyaatautidaknyasuatupersetujuankerahasiaan formal ditandatangani. • Competence (Kemampuan) Engineermestinyatidak salah menggambarkantingkatankemampuannya. Merekamestinyatidakdengansadarmenerimapekerjaan yang di luarkemampuannya. Issues of professional responsibility

  9. RekayasaPerangkatLunakSoftware Engineering • Intellectual property rights (Hakmilikintelektual) Engineers harussadarakanhukumlokalyang mengaturpenggunaandaripropertiintelektualsepertihak paten, hakcipta, dll. Merekaharusseksamauntukmemastikanbahwaintelektualpropertiklienharusdilindungi. • Computer misuse (PenyalahgunaanKomputer) Software engineers mestinyatidakmenggunakankecakapanteknismerekauntukmenyalahgunakankomputer orang lain. Penyalahgunaankomputerdari yang relatifsepele (misaluntukbermain game) sampai yang serius (pemberian virus). *** Issues of professional responsibility

  10. RekayasaPerangkatLunakSoftware Engineering • Software Miths (mitos-mitosperangkatlunak) adalahasumsi-asumsipermasalahan yang kebenarannyatidakdapatdipertanggungjawabkanberkaitandenganpengembanganperangkatlunak • Tigakelompok yang terkaitdalampengembanganperangkatlunak • Management : manajer yang bertanggungjawabterhadappengembanganperangkatlunak • Customer : pelanggan yang memesanperangkatlunak • Practitioner’s : praktisi yang mengembangkanperangkatlunak Software Myths

  11. RekayasaPerangkatLunakSoftware Engineering • Denganmemilikibukuberisi standard danprosedur yang banyakuntukpengembanganperangkatlunak, makapekerjaanpastilancar. • Buku-bukuitumemanglengkap, tapiapakahdigunakan ? Apakahpraktisiperangkatlunaksadardengankeberadaannya. Apakahcocokdenganpengembangan yang modern ? Apakahbenar-benarlengkap ? • Untukmenghasilkanperangkatlunak yang berkualitas, makakitaperlumembelikomputerterbaru. • Untukmendapatkanperangkatlunak yang berkualitas, CASE tools lebihpentingdaripadaperangkatkeras. • Bilaterlambatmakatambahlahjumlahprogramer • Penambahan programmer semakinmenambahketerlambatan. Management Myths

  12. RekayasaPerangkatLunakSoftware Engineering • Tujuansistemsecaraumumcukupuntukmemulaimenulis program, rincianbelakangansaja. • Definisiawal yang burukmerupakansebabutamagagalnyakerjaperangkatlunak • Rinciankebutuhansistemsangatpenting: • fungsi • performance • antar-muka • batasanrancangan • kriteriavalidasi • dll • Perangkatlunakbersifatfleksibel, perubahankebutuhanmudahdiakomodasiolehpengembangperangkatlunak • Dampakperubahansangatbergantungpadatahap mana perubahanterjadi Customer Myths

  13. RekayasaPerangkatLunakSoftware Engineering • Program selesai, pekerjaanselesai • 50% - 70% usahadihabiskansetelah program diserahkanke user untukpertamakalinya. • Kualitashanyabisadiketahuisetelah program berjalan (running) • Kualitasdapatdijagasejak PL dikembangkan. • Yang diserahkanke user adalah program • Yang diserahkanadalah program, dokumen, dan data. *** Practitioner’s Myths

  14. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC 4 Fase Utama SDLC

  15. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC PerencanaanPlanning Tujuan memahamimengapa system perludikembangkan Menentukancarakerjatimproyek TahapanPerencanaan Project Inisiation: Identifikasiapakahsistem yang akandikembangkanakanmengurangibiaya, ataumeningkatkanpendapatan Project Management Membuat Workplan Perekrutansumberdayamanusia Menetapkanruanglingkupproyek, tujuan, jadwaldananggaran yang diperlukan

  16. SiklusHidupPengembanganSistemSystem Development Life Cycle - SDLC PerencanaanPlanning

  17. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC AnalisisAnalysis Tujuan memahami 5W TahapanAnalisis StrategiAnalisis PengumpulanKebutuhan Penyusunan Proposal Sistem Membuat WorkplanPerekrutansumberdayamanusia

  18. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC PerancanganDesign Tujuan Menentukanbagaimana system akanberoprasi, terkaitInfrastuktur HW, SW, jaringan, UI,database, file, danspesifik program TahapanPerancangan PenentuanStrategiPerancangan PerancanganArsitektur, dan Interface Pembuatan database danspesifikasi file Perancangan Program

  19. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC ImplementasiImplementation TahapanImplementasi PembuatandanPengujianSistem InstallasiSistem Perencanaan Support dan Maintenance

  20. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC

  21. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC

  22. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC

  23. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC

  24. SiklusHidupPengembangan SoftwareSoftware Development Life Cycle - SDLC

  25. MetodologiPengembanganPerangkaLunakSoftware Development Methodology Stuctured Analysis • Waterfall model • Paralel Development Model

  26. Modified Waterfall Model (M.Kochanski) Sashimi Waterfall with Subprojects Waterfall with Spiral Introduction

  27. MetodologiPengembanganPerangkaLunakSoftware Development Methodology Agile • Spiral Methodology • Agile Programming • Extreme Programming (XP) • Incremental Model Extreme Programming Spiral Methodology

  28. MetodologiPengembanganPerangkaLunakSoftware Development Methodology Agile • Spiral Methodology • Agile Programming • Extreme Programming (XP) • Incremental Model Incremental Model

  29. MetodologiPengembanganPerangkaLunakSoftware Development Methodology • Tujuan RAD: • memotongwaktudanbiayapengembangan • melibatkanpengguna di setiapfasepengembangansistem. • memungkinkantimpengembanganuntukmelakukanmodifikasi yang diperlukandengancepat, sebagaidesainberevolusi. • pentingmembatasibiayaperubahan yang biasanyaterjadidalamperkembangan yang panjangdanberlarut-larut. • Selainketerlibatanpengguna, tim RAD yang suksesharusmemilikisumberdaya IT, keterampilan, dandukunganmanajemen. Karena ituadalah proses yang dinamis, yang digerakkanolehpengguna, • Cocokdigunakanpadaperusahaanmembutuhkansisteminformasiuntukmendukungfungsibisnisbaru. Rapid Application Development - RAD RAD

  30. Rapid Application Development (RAD) Model • Adaptasidari waterfall model yang: • Menciptakansistemfungsional yang utuhdalamwaktu60-90 hari. • Untukaplikasisistemkonstruksi • Menekankankomponen program yang bisadipakaikembali / reusabilitas.

  31. MetodologiPengembanganPerangkaLunakSoftware Development Methodology Rapid Application Development - RAD • Phased Development • Prototyping • Throw-away Prototyping Prototyping Phased Development Throw-away Prototyping

  32. Prototyping Model Dipakaijika: • Sistemmempunyairesikotinggi • tidakjelaspermasalahannya • Lebihfokuspadaperancangandialog user - komputer • bagaimanamembuat dialog yang baik, ramah, mudah ? • Sistemdiminatiolehbanyakpemakai • mencarikesepakatan (dasaruntukmenyamakanpersepsi) • User ingincepatselesai • user tidaksabarmenunggu • prototipesegeramemperlihatkanbentukkerjasistem • Masapakaisingkat • sistemhanyadipakaibeberapa kali saja • Inginmenunjukkaninovasi • pengembangdapatmenunjukkankecanggihan • Kebutuhanberubah-ubah • user sulitmenjelaskankebutuhan

  33. Diskusi

  34. MetodologiPengembanganPerangkaLunakSoftware Development Methodology

  35. MetodologiPengembanganPerangkaLunakSoftware Development Methodology

  36. MetodologiPengembanganPerangkaLunakSoftware Development Methodology

  37. Panduan PengembanganSistemSystem Development Guidelines

  38. PemilihanMetodologiPengembanganSelecting Development Methodology

More Related