Pages

Sunday, January 18, 2015

Pengertian Rekayasa Perangkat Lunak

Software adalah sekumpulan item atau objek yang saling terkait yang terdiri dari :
1. Program,
2. Dokumen, dan
3. Data
Definisi
Computer programs, procedures, and possibility associated documentation and data pertaining to the operation of a computer system (IEEE Standard Glossary of Software Engineering Terminology, 1990)

Evolusi Software (* SEPA 5th edition, Roger S. Pressman)
Perangkat lunak telah semakin berkembang sejak pertama kali diciptakan tahun 1945
Fokus utama pembuatannya  untuk mengembangkan praktik dan teknologi dalam meningkatkan  produktivitas para paktisi pengembang PL dan kualitas aplikasi yang dapat digunakan oleh pemakai
Evolusi dipicu oleh adanya tuntutan bisnis dan lingkungan kerja yang berkembang 
-beberapa tahun lalu:
- Batch orientation
- Limited distribution
- Custom software
-era tahun ke -2:
- Multiuser
- Real-time
- Database
- Product software
-era tahun ke - 3:
- Distributed systems
- Embedded “intelligence”
- Low cost hardware
- Consumer impact
-era tahun ke - 4:
- Powerful desk-top systems
- Object-oriented technologies
- Expert systems
- Artificial neural networks
- Parallel computing
- Network computers

1. Software didesain dan dibangun oleh software engineer
2. Software dikembangan (developed) atau direkayasa (engineered), tidak dipabrikkan dalam bentuk klasik
3. Software memiliki fungsi ganda. Software dapat disebut sebagai produk, tetapi juga dapat disebut sebagai sarana yang dapat mengantarkan produk itu sendiri
4. Software secara pemakaian tidak pernah usang.
5. Banyak software yang sudah bisa digunakan secara langsung atau bersifat custom-built, tetapi ada pula yang masih menggabungkan antar beberapa komponen.

Aplikasi Software
1. System Software 
   Kumpulan dari beberapa program yang dibuat untuk memberikan servis terhadap program lainnya pada setiap level
2. Real Time Software 
    Program yang dapat memonitor/menganalisa/ mengontrol kejadian nyata yang terjadi di dunia ini
3. Businnes Software 
   Program yang dapat mengakses, menganalisa dan memproses informasi bisnis
4. Engineering and Scientific Software
  Software yang menggunakan algoritma “number crunching” untuk membedakan science dan applications. Sistem simulation, computer-aided design.
5. Embedded Software
Software terletak pada read only memory dan digunakan untuk mengontrol produk dan sistem yang akan dikirimkan untuk konsumen dan industrial markets. 
6. Artificial Inteligence (AI) Software
Program yang digunakan untuk teknik AI dan metodenya digunakan untuk memecahkan masalah yang kompleks. 
7. Internet Software
Program yang mensupport pengaksesan internet.

Pengertian Software Engineering 
Walaupun ratusan pengarang telah mengembangkan definisi tersendiri tentang software engineering, definisi ini diusulkan oleh Fritz Bauer[NAU 69] yang menyediakan basis :
“[Software engineering adalah] prinsip yang digunakan pada sound engineering yang digunakan untuk mendapatkan software yang bersifat ekonomis dan dapat bekerja secara efisien pada real machines”

IEEE [IEE93] telah mengembangkan definisi yang lebih lengkap dengan pernyataan :
“Software Engineering : (1) aplikasi yang bersifat sistematik, disipilin dengan mendekati metode pengembangan, operasi, dan maintemaintenance dari software; (2) studi dengan pendekatan pada definisi nomor (1)”

Pressman’s View:
“Software Engineering is a layered technology”
Software Engineering layered 
Software Method :
Metode Software engineering menyediakan teknik “how to” untuk membangun software.  Metode --> meliputi bagaimana menyelesaikan task :
Requirement analisis  design  coding  testing  maintenance

Software process:
Proses Software engineering mendekatkan dengan :
teknologi bersama
memungkinkan secara rational dan pengenbangan secara bertahap dari software komputer 

Proses Software engineering merupakan set framework dari area key process. Yang dibentuk dari basis untuk :
project management, budget, dan schedule control
teknik metode aplikasi
kualitas produk control

Software tools: 
Program menyediakan sistem otomatis atau semi otomatis untuk proses dan metode.
Program yang memberikan dukungan pada engineers untuk menyelesaikan masing-masing task.

0 comments: