ソフトウェア工学

システム開発ライフサイクル内で働く専門家、学者、学生向けのQ&A

8
Ruby on Railsのマイナス面と注意事項[終了]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 5年前に閉鎖されました。 これはRoRバッシングのオープニングガンビットではありません-正直です! 私はRubyとRailsフレームワークを学んでいます。一見したところ、かなりクールで、PHPに比べて素晴らしい経験に思えます。(実際、C#と.NETでの幸せな日々を思い出させてくれます。) しかし、これに入ると、私はこのフレームワークまたは言語の経験がなく、興味があります-現在の欠点や、あなたが始めたときに知っていたかったことは何ですか? (これはコミュニティwikiにすべきでしょうか?)

5
コーディングスタイルの原則に関する科学的に厳密な研究はありますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 4年前に閉鎖されました。 コーディングスタイルの原則(たとえば、単一出口の原則)は本当に良いことですか?常にですか、それとも時々ですか?それは実際にどのくらい違いますか? あなたの意見がどうであれ、これらは明らかに主観的な質問です。それとも彼らですか? コーディングスタイルの原則について客観的で科学的に厳密な研究を試みた人はいますか? 誰がどのように読みやすさの二重盲検研究を行うか想像できませんが、おそらく二重無知が可能かもしれません-被験者として研究されている原則を知らない学生と、研究を管理する非プログラマーを使用してください。

11
自動テスト:そのビジネス価値の説明
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 私はこれがあるとは思いません起動するには、繰り返しの他の質問にユニットテスト。私が助けを求めているのは、プログラマー、アナリスト、マネージャー、テスターのチームにその価値を明確にすることです。自動テストでは、ユニットテスト(JUnitなど)、BDD(JBehave、Fitness)、UI(Selenium、Watir)を区別する必要はないと思います。同意しない答えを書いてください:)) 以下は私が特定したリストです。拡張または改善に役立つ答えを探しています: 時間/コストの節約:自動化されたテストの作成は、テストケースの作成よりも時間がかかる場合があります。ただし、テストが複数回実行されることを考慮すると、自動テストを実行するためのわずかな作業(コスト/時間)が数桁少なくなります。自動テストの実行が安価であることは、時間の経過に伴うシステムの変更を促進します。 ドキュメンテーション:システムがどのように機能するかを知るためのより正確な方法は、テストよりもありません。他のドキュメントは、通常、作成された時点では古くなっていますが、テスト(少なくとも合格したもの)により、実際の動作が明らかになります。これは、エンドユーザーおよびAPIドキュメントの両方に当てはまります。 コード品質:テスト作成により、次のことが強制されます。 テストはクライアントであるため、クライアントを考慮する コードをテスト可能にすることは、多くの場合、他の大規模システムを必要としないコードを作成する方法を見つけ出すことを意味します。

10
開発者が自分の作品のエッジケースを継続的に無視することに対処する
私のチームの開発者の1人に、興味深い、かなり一般的な問題があります。この男は優れた開発者であり、高速かつ生産的であり、かなり良い品質のコードなどを生成します。良いエンジニア。しかし、彼には問題があります-非常に多くの場合、彼はコードのエッジケースに対処できません。 私たちは彼と何度も話しましたが、彼は試みていますが、彼はこのように考えていないようです。そのため、最終的にQAがコードに関する多くの問題を発見し、何度も何度も開発に戻して、最終的に納期を逃し、チームの全員が不満に陥ることになります。 私は彼に何をすべきか、そして彼がこの問題を克服するのをどのように助けるかを知りません。おそらく、より多くの経験を持つ人がアドバイスできますか?

8
アーキテクチャ図の作成に使用できるソフトウェアは何ですか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 6年前に閉鎖されました。 ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 図をどこかに保存して後で編集できるようにする必要がある場合、ほとんどの設計/建築作業にMS Visioを使用します。私はVisioの最大のファンではありませんが、仕事を終わらせます(仕事中は無料です)。 かなり高価なVisioソフトウェアに代わる優れた代替品があり、おそらくもっと良いものがありますか。私は確かにツールボックスにそのプログラムを持ちたいです!

11
列名の接頭辞が悪い習慣と見なされるのはなぜですか?
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 人気のあるSOの投稿によると、テーブル名にプレフィックスを付けることは悪い習慣と見なされています。私の会社では、すべての列の前にテーブル名が付いています。これは読みにくいです。理由は定かではありませんが、この命名は実際には会社の標準です。命名規則に我慢はできませんが、その根拠を裏付けるドキュメントはありません。 私が知っているのは、AdventureWorksを読む方がずっと簡単だということだけです。で、この私達の会社DBは、テーブルが表示され、人とそれは、列の名前を指定できます。 Person_First_Name または Person_Person_First_Name(おそらく、2xの人を見る理由を聞かないでください) 列名に接頭辞を付けるのはなぜ悪い習慣と見なされるのですか?アンダースコアはSQLでも悪と見なされますか? 注:Pro SQL Server 2008-Relation Databaseの設計と実装を所有しています。その本への参照は大歓迎です。
25 sql 

4
ユーザーストーリーと機能の違いは何ですか?
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 icescrumで遊んで、ユーザーストーリーとユーザー機能の違いを理解していないことに気付きました。 誰かが違いを説明できますか?
25 agile  scrum  features 

10
ノキアとマイクロソフトのパートナーシップに照らしたQtの未来[終了]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 あなたがそれを見逃した場合、Qtフレームワークに悪い影響を与える可能性のある多くのことが過去2日間に起こりました。:-(それは確かにいくつかの、おそらく現在認められていない方法でモバイル部門に影響を与えます。 昨日、NokiaのCEOであるStephen Elopの社内書簡で、Nokiaが燃えているプラ​​ットフォームの上に座っており、ビジネスにおける大きな積極的なシフトの必要性を描いています。 翌日、ノキア世界会議で、NokiaはMicrosoftとの提携を発表しました瞬間に、ノキアは、Windowsの携帯電話7プラットフォームと開発環境を採用し、道路に沿ってシンビアンをダンプとしてMeeGoにタグを付けるに再開し、R&D(かなり危険ifキーワードをMaemo / N900シリーズに関しては、さようなら、さようならです。私はあなたが何を考えているか知っていますが、いいえ、QtはWindow Phoneプラットフォームに移植されません。そして私もこれが怖いです。Elop&Ballmer共同プレスリリースはこちらでご覧いただけます。 今、読んだ後に、この巨大なスレッドを、私は助けることが不思議ではないことはできQtの金利メーリングリストでは、NokiaのQtのの未来は(すべてでは?)彼らが集中されていないことを、今、何Qtの上ではもう(覚えフルフォーカスを10月にノキア製品すべて(Symbianを含む)のメイン開発フレームワークとしてQtをオンにしますか?)。 私はQtが大好きです。私の意見では、それは唯一の真のクロスプラットフォームアプリケーション開発フレームワークであり、C ++開発を(可能な限り)喜びにする数少ないものの1つであり、Nokiaの下で良いフレームワークとかなりの勢いが起こりました。したがって、この後、ノキアでQtがゆっくりと死ぬ可能性はどのくらいあるのでしょうか?はい、KDE.orgとQtが簡単に生成できるという事実を知っていますが、それでも不安を感じます。 また、SymbianおよびOvi Store Symbian / Qtのコンテンツとビジネスのすべてに参入したNokiaの従業員またはサードパーティのすべての努力にとって、恐ろしいものでなければなりません。大規模なレイオフも計画されていますが、Symbianの技術者とQtを疑っていますか? これに関するご意見をお聞かせください。Qtの将来の安全性は保証されていますか? LE:質問は徐々に改訂され、改善され、よりよく参照されているので、見逃したものを確認するためにすばやく読み直した方がよいかもしれません。

3
私はハッシュテーブルを理解しようとしています-誰かがそれを私に説明できますか?
PHPでのハッシュテーブルの正しい使用と実装を理解したい(申し訳ありません)。 私はどこかで、経験の浅いプログラマーがハッシュテーブルを作成し、それを反復処理したことを読みました。今、私はなぜそれが間違っているのか理解していますが、私の理解が正しいかどうかを知るための完全な知識はまだありません(あなたが私の意味を知っているなら)。 だから誰かが私にPHPでハッシュテーブル(おそらく連想配列)を実装する方法、そしておそらくもっと重要なことには、「ハッシュで」値にアクセスする方法とそれが実際に何を意味するかを説明できますか?
25 php  hashing 

11
高レベルのソフトウェア開発の動的な性質にどのように対処しますか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 私は自分自身を高度なソフトウェア開発者と考えています。私はたくさんの読書を楽しみ、それは私のキャリアの過程で私を助けました。私はうまくやっていると思う。 今、私は新しいことを学ぶのに多くの時間を費やしています。すぐにコードを書くことになると、私は嫌いではありませんが、私は家族を始めようとしています。プログラミングで。彼らはある時点で感動的な人物でしたが、もはやそうではありません。 基本は変わらないと主張するかもしれませんが、Delphiで10年間コーディングしていて、誰もが.NETフレームワークを使用していると、違いがあるように見えます。これは、新しいフレームワークを学習するときに、経験豊富な開発者が少ない時間がかかることは事実だが、それはまだありません要求時間と労力を。 ソフトウェア開発者はどのように仕事の要求を管理しながら、家族を始めるなど、あなたを必然的に仕事から外すことに集中することができますか?

7
デッドロックをデバッグするときに何を探しますか?
最近、スレッドを多用するプロジェクトに取り組んでいます。私はそれらを設計してもいいと思います。ステートレス設計を可能な限り使用する、複数のスレッドが必要とするすべてのリソースへのアクセスをロックする、など。関数型プログラミングの私の経験は非常に役立ちました。 しかし、他の人のスレッドコードを読むと、混乱します。私は今、デッドロックをデバッグしています。コーディングスタイルとデザインは私の個人的なスタイルとは異なるため、潜在的なデッドロック状態を見つけるのは困難です。 デッドロックをデバッグするときに何を探しますか?

17
上級プログラマーは、ジュニア開発者を引き受けて指導する必要がありますか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 5年前に閉鎖されました。 緊密で協力的であることを目的とする店では、シニア開発者がメンターとしてジュニア開発者とペアになっている文化の一部である必要がありますか?または、このメンタリングは、より有機的で自発的なもの、つまり必要ではないが、人為的な励ましなしで開発できるものでなければなりませんか?

9
最初に何をすべきか:テストまたはコードレビュー?
私はプログラミングパターンとライフサイクルのプログラミングにまったく不慣れであり、最初に何をすべきか、コードレビューまたはテスト、それらは別々の人によって行われるのではないかと考えていましたか? 一方では、それが機能するかどうか誰もチェックしなかったのに、なぜコードをレビューするのが面倒ですか?一方、テストの前にレビューを行うと、いくつかのエラーが早期に発見されます。 推奨されるアプローチとその理由は?

12
業界には情熱的なプログラマーがいませんか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 5年前に閉鎖されました。 私は、マネージャーがあなたがいるなら、 製品会社、それから一般的に製品を微調整し、時にはいくつかの機能を追加するのに時間を費やします、または サービス会社、それからあなたは繰り返しの事をし続けます 業界はニュースを作成し、難しい問題を解決するのが好きな人にとっては場所ではないと感じさせます。 業界は情熱的なプログラマーの場ではありませんか?これは国ごとに変わりますか? 更新して、本来の意味とは異なる方法で理解できるものを明確にします。 ここで調整するのは、クライアントが必要とする行数と列数を含むテーブルが製品にあることを確認することです。顧客向けにカスタマイズします。 ここでの新しい「機能」は新しい機能ではありません。美的レベルの変更のみ。そしてそれは時々です。 彼が繰り返し言った意味はわかりませんが。彼は、UIを何度も何度も作成しなければならないようなものでした。(しかし、繰り返しはありません。別のUIが必要な場合は、別の UIを設計する必要があります。古いものを使用できる場合は、とにかく多くのことを行う必要はありません。)


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.